ccnc some fix (#136)
This commit is contained in:
parent
f2dcc4205d
commit
020d30165c
@ -102,14 +102,14 @@ class CarController(CarControllerBase):
|
|||||||
self.params.STEER_DELTA_DOWN = steerDeltaDown
|
self.params.STEER_DELTA_DOWN = steerDeltaDown
|
||||||
self.soft_hold_mode = 1 if params.get_int("AutoCruiseControl") > 1 else 2
|
self.soft_hold_mode = 1 if params.get_int("AutoCruiseControl") > 1 else 2
|
||||||
self.hapticFeedbackWhenSpeedCamera = int(params.get_int("HapticFeedbackWhenSpeedCamera"))
|
self.hapticFeedbackWhenSpeedCamera = int(params.get_int("HapticFeedbackWhenSpeedCamera"))
|
||||||
|
|
||||||
self.button_spam1 = params.get_int("CruiseButtonTest1")
|
self.button_spam1 = params.get_int("CruiseButtonTest1")
|
||||||
self.button_spam2 = params.get_int("CruiseButtonTest2")
|
self.button_spam2 = params.get_int("CruiseButtonTest2")
|
||||||
self.button_spam3 = params.get_int("CruiseButtonTest3")
|
self.button_spam3 = params.get_int("CruiseButtonTest3")
|
||||||
self.speed_from_pcm = params.get_int("SpeedFromPCM")
|
self.speed_from_pcm = params.get_int("SpeedFromPCM")
|
||||||
|
|
||||||
self.canfd_debug = params.get_int("CanfdDebug")
|
self.canfd_debug = params.get_int("CanfdDebug")
|
||||||
|
|
||||||
|
|
||||||
actuators = CC.actuators
|
actuators = CC.actuators
|
||||||
hud_control = CC.hudControl
|
hud_control = CC.hudControl
|
||||||
@ -124,13 +124,13 @@ class CarController(CarControllerBase):
|
|||||||
MAX_ANGLE_CONSECUTIVE_FRAMES)
|
MAX_ANGLE_CONSECUTIVE_FRAMES)
|
||||||
|
|
||||||
apply_angle = apply_std_steer_angle_limits(actuators.steeringAngleDeg, self.apply_angle_last, CS.out.vEgoRaw, self.params)
|
apply_angle = apply_std_steer_angle_limits(actuators.steeringAngleDeg, self.apply_angle_last, CS.out.vEgoRaw, self.params)
|
||||||
|
|
||||||
if abs(CS.out.steeringTorqueEps) >= 100.0: # carrot. fault avoidance, test code
|
if abs(CS.out.steeringTorqueEps) >= 100.0: # carrot. fault avoidance, test code
|
||||||
apply_angle = CS.out.steeringAngleDeg
|
apply_angle = CS.out.steeringAngleDeg
|
||||||
|
|
||||||
# prevent steering error. carrot
|
# prevent steering error. carrot
|
||||||
error_limit = 5.0
|
error_limit = 5.0
|
||||||
apply_angle = np.clip(apply_angle, CS.out.steeringAngleDeg - error_limit, CS.out.steeringAngleDeg + error_limit)
|
apply_angle = float(np.clip(apply_angle, CS.out.steeringAngleDeg - error_limit, CS.out.steeringAngleDeg + error_limit))
|
||||||
|
|
||||||
#max_torque = 200
|
#max_torque = 200
|
||||||
#ego_weight = np.interp(CS.out.vEgoCluster, [0, 5, 10, 20], [0.2, 0.3, 0.5, 1.0])
|
#ego_weight = np.interp(CS.out.vEgoCluster, [0, 5, 10, 20], [0.2, 0.3, 0.5, 1.0])
|
||||||
@ -186,7 +186,7 @@ class CarController(CarControllerBase):
|
|||||||
left_lane_warning = right_lane_warning = self.hapticFeedbackWhenSpeedCamera
|
left_lane_warning = right_lane_warning = self.hapticFeedbackWhenSpeedCamera
|
||||||
if self.speedCameraHapticEndFrame < self.frame:
|
if self.speedCameraHapticEndFrame < self.frame:
|
||||||
self.speedCameraHapticEndFrame = -1
|
self.speedCameraHapticEndFrame = -1
|
||||||
|
|
||||||
if self.frame % self.blinking_frame == 0:
|
if self.frame % self.blinking_frame == 0:
|
||||||
self.blinking_signal = True
|
self.blinking_signal = True
|
||||||
elif self.frame % self.blinking_frame == self.blinking_frame / 2:
|
elif self.frame % self.blinking_frame == self.blinking_frame / 2:
|
||||||
@ -326,7 +326,7 @@ class CarController(CarControllerBase):
|
|||||||
send_button = self.make_spam_button(CC, CS)
|
send_button = self.make_spam_button(CC, CS)
|
||||||
if send_button > 0:
|
if send_button > 0:
|
||||||
can_sends.append(hyundaican.create_clu11_button(self.packer, self.frame, CS.clu11, send_button, self.CP))
|
can_sends.append(hyundaican.create_clu11_button(self.packer, self.frame, CS.clu11, send_button, self.CP))
|
||||||
|
|
||||||
else:
|
else:
|
||||||
|
|
||||||
# carrot.. 왜 alt_cruise_button는 값이 리스트일까?, 그리고 왜? 빈데이터가 들어오는것일까?
|
# carrot.. 왜 alt_cruise_button는 값이 리스트일까?, 그리고 왜? 빈데이터가 들어오는것일까?
|
||||||
@ -350,7 +350,7 @@ class CarController(CarControllerBase):
|
|||||||
#can_sends.append(hyundaicanfd.create_acc_cancel(self.packer, self.CP, self.CAN, CS.cruise_info))
|
#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:
|
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))
|
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:
|
else:
|
||||||
for _ in range(20):
|
for _ in range(20):
|
||||||
can_sends.append(hyundaicanfd.create_buttons(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.CANCEL))
|
can_sends.append(hyundaicanfd.create_buttons(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.CANCEL))
|
||||||
@ -426,7 +426,7 @@ class CarController(CarControllerBase):
|
|||||||
|
|
||||||
if send_button == 0:
|
if send_button == 0:
|
||||||
self.button_spamming_count = 0
|
self.button_spamming_count = 0
|
||||||
self.prev_clu_speed = current
|
self.prev_clu_speed = current
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
speed_diff = self.prev_clu_speed - current
|
speed_diff = self.prev_clu_speed - current
|
||||||
|
@ -5,17 +5,17 @@ from openpilot.common.params import Params
|
|||||||
|
|
||||||
|
|
||||||
class CanBus(CanBusBase):
|
class CanBus(CanBusBase):
|
||||||
def __init__(self, CP, fingerprint=None, hda2=None) -> None:
|
def __init__(self, CP, fingerprint=None, lka_steering=None) -> None:
|
||||||
super().__init__(CP, fingerprint)
|
super().__init__(CP, fingerprint)
|
||||||
|
|
||||||
if hda2 is None:
|
if lka_steering is None:
|
||||||
hda2 = CP.flags & HyundaiFlags.CANFD_HDA2.value if CP is not None else False
|
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. HDA2 cars
|
# 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 HDA1 and non-HDA variants in order to split
|
# have a different harness than the LFA steering variants in order to split
|
||||||
# a different bus, since the steering is done by different ECUs.
|
# a different bus, since the steering is done by different ECUs.
|
||||||
self._a, self._e = 1, 0
|
self._a, self._e = 1, 0
|
||||||
if hda2 and Params().get_int("HyundaiCameraSCC") == 0: #배선개조는 무조건 Bus0가 ECAN임.
|
if lka_steering and Params().get_int("HyundaiCameraSCC") == 0: #배선개조는 무조건 Bus0가 ECAN임.
|
||||||
self._a, self._e = 0, 1
|
self._a, self._e = 0, 1
|
||||||
|
|
||||||
self._a += self.offset
|
self._a += self.offset
|
||||||
@ -108,7 +108,7 @@ def create_steering_messages_camera_scc(packer, CP, CAN, enabled, lat_active, ap
|
|||||||
"LKAS_ANGLE_CMD": -apply_angle,
|
"LKAS_ANGLE_CMD": -apply_angle,
|
||||||
"LKAS_ANGLE_MAX_TORQUE": max_torque if lat_active else 0,
|
"LKAS_ANGLE_MAX_TORQUE": max_torque if lat_active else 0,
|
||||||
}
|
}
|
||||||
ret.append(packer.make_can_msg("LFA_ANGLE_MAYBE_CB", CAN.ECAN, values))
|
ret.append(packer.make_can_msg("LFA_ALT", CAN.ECAN, values))
|
||||||
|
|
||||||
values = CS.lfa_info
|
values = CS.lfa_info
|
||||||
values["LKA_MODE"] = 0
|
values["LKA_MODE"] = 0
|
||||||
@ -227,22 +227,22 @@ def create_steering_messages(packer, CP, CAN, enabled, lat_active, apply_steer,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if CP.flags & HyundaiFlags.CANFD_HDA2:
|
if CP.flags & HyundaiFlags.CANFD_HDA2:
|
||||||
hda2_lkas_msg = "LKAS_ALT" if CP.flags & HyundaiFlags.CANFD_HDA2_ALT_STEERING else "LKAS"
|
lkas_msg = "LKAS_ALT" if CP.flags & HyundaiFlags.CANFD_HDA2_ALT_STEERING else "LKAS"
|
||||||
if CP.openpilotLongitudinalControl:
|
if CP.openpilotLongitudinalControl:
|
||||||
ret.append(packer.make_can_msg("LFA", CAN.ECAN, values))
|
ret.append(packer.make_can_msg("LFA", CAN.ECAN, values))
|
||||||
if not (CP.flags & HyundaiFlags.CAMERA_SCC.value):
|
if not (CP.flags & HyundaiFlags.CAMERA_SCC.value):
|
||||||
ret.append(packer.make_can_msg(hda2_lkas_msg, CAN.ACAN, values))
|
ret.append(packer.make_can_msg(lkas_msg, CAN.ACAN, values))
|
||||||
else:
|
else:
|
||||||
ret.append(packer.make_can_msg("LFA", CAN.ECAN, values))
|
ret.append(packer.make_can_msg("LFA", CAN.ECAN, values))
|
||||||
|
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
def create_suppress_lfa(packer, CAN, hda2_lfa_block_msg, hda2_alt_steering):
|
def create_suppress_lfa(packer, CAN, lfa_block_msg, lka_steering_alt):
|
||||||
suppress_msg = "CAM_0x362" if hda2_alt_steering else "CAM_0x2a4"
|
suppress_msg = "CAM_0x362" if lka_steering_alt else "CAM_0x2a4"
|
||||||
msg_bytes = 32 if hda2_alt_steering else 24
|
msg_bytes = 32 if lka_steering_alt else 24
|
||||||
|
|
||||||
values = {f"BYTE{i}": hda2_lfa_block_msg[f"BYTE{i}"] for i in range(3, msg_bytes) if i != 7}
|
values = {f"BYTE{i}": lfa_block_msg[f"BYTE{i}"] for i in range(3, msg_bytes) if i != 7}
|
||||||
values["COUNTER"] = hda2_lfa_block_msg["COUNTER"]
|
values["COUNTER"] = lfa_block_msg["COUNTER"]
|
||||||
values["SET_ME_0"] = 0
|
values["SET_ME_0"] = 0
|
||||||
values["SET_ME_0_2"] = 0
|
values["SET_ME_0_2"] = 0
|
||||||
values["LEFT_LANE_LINE"] = 0
|
values["LEFT_LANE_LINE"] = 0
|
||||||
@ -334,7 +334,7 @@ def create_acc_control_scc2(packer, CAN, enabled, accel_last, accel, stopping, g
|
|||||||
|
|
||||||
values["ZEROS_5"] = 0
|
values["ZEROS_5"] = 0
|
||||||
|
|
||||||
values["NEW_SIGNAL_15_DESIRE_DIST"] = CS.out.vEgo * 1.0 + 4.0
|
values["TARGET_DISTANCE"] = CS.out.vEgo * 1.0 + 4.0
|
||||||
|
|
||||||
values["CRUISE_STANDSTILL"] = 1 if stopping and CS.out.aEgo > -0.1 else 0
|
values["CRUISE_STANDSTILL"] = 1 if stopping and CS.out.aEgo > -0.1 else 0
|
||||||
|
|
||||||
@ -442,13 +442,13 @@ def create_adrv_messages(CP, packer, CAN, frame, CC, CS, hud_control, disp_angle
|
|||||||
values["SETSPEED_HUD"] = 5 if hdp_active else 2 if cruise_enabled else 1
|
values["SETSPEED_HUD"] = 5 if hdp_active else 2 if cruise_enabled else 1
|
||||||
values["vSetDis"] = int(hud_control.setSpeed * 3.6 + 0.5)
|
values["vSetDis"] = int(hud_control.setSpeed * 3.6 + 0.5)
|
||||||
|
|
||||||
values["DISTANCE"] = hud_control.leadDistanceBars
|
values["DISTANCE"] = 4 if hdp_active else hud_control.leadDistanceBars
|
||||||
values["DISTANCE_LEAD"] = 1 if cruise_enabled and hud_control.leadVisible else 0
|
values["DISTANCE_LEAD"] = 2 if cruise_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_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["DISTANCE_SPACING"] = 5 if hdp_active else 1 if cruise_enabled else 0
|
||||||
|
|
||||||
values["TARGET"] = 1 if cruise_enabled else 0
|
values["TARGET"] = 1 if cruise_enabled else 0
|
||||||
values["TARGET_POSITION"] = int(hud_control.leadDistance)
|
values["TARGET_DISTANCE"] = int(hud_control.leadDistance)
|
||||||
|
|
||||||
values["BACKGROUND"] = 1 if cruise_enabled else 3 if main_enabled else 7
|
values["BACKGROUND"] = 1 if cruise_enabled else 3 if main_enabled else 7
|
||||||
values["CENTERLINE"] = 1 if lat_active else 0
|
values["CENTERLINE"] = 1 if lat_active else 0
|
||||||
@ -523,42 +523,45 @@ def create_adrv_messages(CP, packer, CAN, frame, CC, CS, hud_control, disp_angle
|
|||||||
values["FAULT_LFA"] = 0
|
values["FAULT_LFA"] = 0
|
||||||
values["FAULT_LCA"] = 0
|
values["FAULT_LCA"] = 0
|
||||||
values["FAULT_DAS"] = 0
|
values["FAULT_DAS"] = 0
|
||||||
|
values["FAULT_HDA"] = 0
|
||||||
|
|
||||||
if left_lane_warning or right_lane_warning:
|
if left_lane_warning or right_lane_warning:
|
||||||
values["VIBRATE"] = 1
|
values["VIBRATE"] = 1
|
||||||
ret.append(packer.make_can_msg("ADRV_0x162", CAN.ECAN, values))
|
ret.append(packer.make_can_msg("ADRV_0x162", CAN.ECAN, values))
|
||||||
|
|
||||||
if frame % 20 == 0 and canfd_debug > 0: # 아직 시험중..
|
if canfd_debug > 0:
|
||||||
if CS.hda_info_4a3 is not None:
|
if frame % 20 == 0: # 아직 시험중..
|
||||||
values = CS.hda_info_4a3
|
if CS.hda_info_4a3 is not None:
|
||||||
# SIGNAL_4: 7, SIGNAL_0: 0 으로 해도 .. 옆두부는 나오기도 함.. 아오5
|
values = CS.hda_info_4a3
|
||||||
if canfd_debug == 1:
|
# SIGNAL_4: 7, SIGNAL_0: 0 으로 해도 .. 옆두부는 나오기도 함.. 아오5
|
||||||
test4 = 10
|
if canfd_debug == 1:
|
||||||
test0 = 5
|
test4 = 10
|
||||||
elif canfd_debug == 2:
|
test0 = 5
|
||||||
test4 = 11
|
elif canfd_debug == 2:
|
||||||
test0 = 1
|
test4 = 11
|
||||||
elif canfd_debug == 3:
|
test0 = 1
|
||||||
test4 = 5
|
elif canfd_debug == 3:
|
||||||
test0 = 2
|
test4 = 5
|
||||||
values["SIGNAL_4"] = test4 if CC.enabled else 0 # 0, 5(고속도로진입), 10(고속도로), 7,5(국도에서 간혹), 0,10(카니발) , 5(고속도로진입,EV6), 11(고속도로,EV6)
|
test0 = 2
|
||||||
values["SIGNAL_0"] = test0 if CC.enabled else 0 # 0, 2(고속도로진입), 1(고속도로), 5(카니발은 항상) , 2(고속도로진입,EV6), 1(고속도로,EV6)
|
values["SIGNAL_4"] = test4 if CC.enabled else 0 # 0, 5(고속도로진입), 10(고속도로), 7,5(국도에서 간혹), 0,10(카니발) , 5(고속도로진입,EV6), 11(고속도로,EV6)
|
||||||
values["NEW_SIGNAL_1"] = 4
|
values["SIGNAL_0"] = test0 if CC.enabled else 0 # 0, 2(고속도로진입), 1(고속도로), 5(카니발은 항상) , 2(고속도로진입,EV6), 1(고속도로,EV6)
|
||||||
values["NEW_SIGNAL_2"] = 0
|
values["NEW_SIGNAL_1"] = 4
|
||||||
values["NEW_SIGNAL_3"] = 154
|
values["NEW_SIGNAL_2"] = 0
|
||||||
values["NEW_SIGNAL_4"] = 9
|
values["NEW_SIGNAL_3"] = 154
|
||||||
values["NEW_SIGNAL_5"] = 0
|
values["NEW_SIGNAL_4"] = 9
|
||||||
values["NEW_SIGNAL_6"] = 256
|
values["NEW_SIGNAL_5"] = 0
|
||||||
values["NEW_SIGNAL_7"] = 0
|
values["NEW_SIGNAL_6"] = 256
|
||||||
ret.append(packer.make_can_msg("HDA_INFO_4A3", CAN.CAM, values))
|
values["NEW_SIGNAL_7"] = 0
|
||||||
if frame % 10 == 0:
|
ret.append(packer.make_can_msg("HDA_INFO_4A3", CAN.CAM, values))
|
||||||
if CS.new_msg_4b4 is not None: #G80 HDA2개조차량은 안나옴...
|
if frame % 10 == 0:
|
||||||
values = CS.new_msg_4b4
|
if CS.new_msg_4b4 is not None: #G80 HDA2개조차량은 안나옴...
|
||||||
values["NEW_SIGNAL_1"] = 8
|
values = CS.new_msg_4b4
|
||||||
values["NEW_SIGNAL_3"] = (frame / 100) % 10
|
values["NEW_SIGNAL_1"] = 8
|
||||||
values["NEW_SIGNAL_4"] = 146
|
values["NEW_SIGNAL_3"] = (frame / 100) % 10
|
||||||
values["NEW_SIGNAL_5"] = 68
|
values["NEW_SIGNAL_4"] = 146
|
||||||
values["NEW_SIGNAL_6"] = 76
|
values["NEW_SIGNAL_5"] = 68
|
||||||
ret.append(packer.make_can_msg("NEW_MSG_4B4", CAN.CAM, values))
|
values["NEW_SIGNAL_6"] = 76
|
||||||
|
ret.append(packer.make_can_msg("NEW_MSG_4B4", CAN.CAM, values))
|
||||||
return ret
|
return ret
|
||||||
else:
|
else:
|
||||||
values = {}
|
values = {}
|
||||||
|
@ -114,11 +114,11 @@ BO_ 160 WHEEL_SPEEDS: 24 XXX
|
|||||||
SG_ WHEEL_SPEED_3 : 96|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
|
SG_ WHEEL_SPEED_4 : 112|16@1+ (0.03125,0) [0|65535] "kph" XXX
|
||||||
|
|
||||||
BO_ 203 LFA_ANGLE_MAYBE_CB: 24 ADRV
|
BO_ 203 LFA_ALT: 24 ADRV
|
||||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" 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_ACTIVE : 29|2@0+ (1,0) [0|3] "" XXX
|
||||||
SG_ LKAS_ANGLE_CMD : 32|14@1- (-0.1,0) [0|16383] "" 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
|
SG_ LKAS_ANGLE_MAX_TORQUE : 55|8@0+ (1,0) [0|255] "" XXX
|
||||||
|
|
||||||
BO_ 234 MDPS: 24 XXX
|
BO_ 234 MDPS: 24 XXX
|
||||||
@ -148,13 +148,13 @@ BO_ 272 LKAS_ALT: 32 XXX
|
|||||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||||
SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" 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_ACTIVE : 27|2@1+ (1,0) [0|3] "" XXX
|
||||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||||
SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX
|
SG_ LKA_ICON : 38|2@1+ (1,0) [0|3] "" XXX
|
||||||
SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX
|
SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX
|
||||||
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||||
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
||||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|1] "" XXX
|
||||||
SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX
|
SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX
|
||||||
SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX
|
SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX
|
||||||
SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX
|
SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX
|
||||||
@ -168,7 +168,6 @@ BO_ 272 LKAS_ALT: 32 XXX
|
|||||||
SG_ VALUE247 : 247|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
|
SG_ VALUE255 : 255|8@0+ (1,0) [0|255] "" XXX
|
||||||
|
|
||||||
|
|
||||||
BO_ 293 STEERING_SENSORS: 16 XXX
|
BO_ 293 STEERING_SENSORS: 16 XXX
|
||||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||||
@ -179,13 +178,13 @@ BO_ 298 LFA: 16 ADRV
|
|||||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||||
SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" 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_ACTIVE : 27|2@1+ (1,0) [0|3] "" XXX
|
||||||
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX
|
||||||
SG_ LKA_ICON : 38|2@1+ (1,0) [0|3] "" XXX
|
SG_ LKA_ICON : 38|2@1+ (1,0) [0|3] "" XXX
|
||||||
SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX
|
SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX
|
||||||
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX
|
||||||
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX
|
||||||
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX
|
SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|1] "" XXX
|
||||||
SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX
|
SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX
|
||||||
SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX
|
SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX
|
||||||
SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX
|
SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX
|
||||||
@ -240,13 +239,13 @@ BO_ 373 TCS: 24 XXX
|
|||||||
BO_ 352 ADRV_0x160: 16 ADRV
|
BO_ 352 ADRV_0x160: 16 ADRV
|
||||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||||
SG_ AEB_SETTING : 24|2@1+ (1,0) [0|255] "" XXX
|
SG_ AEB_SETTING : 24|2@1+ (1,0) [0|3] "" XXX
|
||||||
SG_ NEW_SIGNAL_1 : 28|3@0+ (1,0) [0|7] "" XXX
|
SG_ NEW_SIGNAL_1 : 28|3@0+ (1,0) [0|7] "" XXX
|
||||||
SG_ SET_ME_2 : 56|8@1+ (1,0) [0|1] "" XXX
|
SG_ SET_ME_2 : 56|8@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ SET_ME_FF : 64|8@1+ (1,0) [0|255] "" 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_FC : 72|8@1+ (1,0) [0|255] "" XXX
|
||||||
SG_ SET_ME_9 : 80|8@1+ (1,0) [0|255] "" XXX
|
SG_ SET_ME_9 : 80|8@1+ (1,0) [0|255] "" XXX
|
||||||
SG_ DATA102 : 102|1@1+ (1,0) [0|255] "" XXX
|
SG_ DATA102 : 102|1@1+ (1,0) [0|1] "" XXX
|
||||||
|
|
||||||
BO_ 353 ADRV_0x161: 32 ADRV
|
BO_ 353 ADRV_0x161: 32 ADRV
|
||||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||||
@ -256,20 +255,20 @@ BO_ 353 ADRV_0x161: 32 ADRV
|
|||||||
SG_ LKA_ICON : 30|3@1+ (1,0) [0|3] "" XXX
|
SG_ LKA_ICON : 30|3@1+ (1,0) [0|3] "" XXX
|
||||||
SG_ HBA_ICON : 33|3@1+ (1,0) [0|7] "" XXX
|
SG_ HBA_ICON : 33|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ FCA_IMAGE : 42|3@1+ (1,0) [0|7] "" XXX
|
SG_ FCA_IMAGE : 42|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ BCA_LEFT : 53|3@0+ (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_ BCA_RIGHT : 54|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ LCA_LEFT_ARROW : 57|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_ LCA_RIGHT_ARROW : 60|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ CENTERLINE : 64|2@1+ (1,0) [0|3] "" XXX
|
SG_ CENTERLINE : 64|2@1+ (1,0) [0|3] "" XXX
|
||||||
SG_ TARGET : 68|3@0+ (1,0) [0|7] "" XXX
|
SG_ TARGET : 66|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ TARGET_POSITION : 69|11@1+ (0.1,0) [0|2047] "" XXX
|
SG_ TARGET_DISTANCE : 69|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||||
SG_ LANELINE_LEFT : 83|4@0+ (1,0) [0|15] "" XXX
|
SG_ LANELINE_LEFT : 80|4@1+ (1,0) [0|15] "" XXX
|
||||||
SG_ LANELINE_LEFT_POSITION : 84|6@1+ (1,0) [0|63] "" 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 : 90|4@1+ (1,0) [0|15] "" XXX
|
||||||
SG_ LANELINE_RIGHT_POSITION : 94|6@1+ (1,0) [0|63] "" XXX
|
SG_ LANELINE_RIGHT_POSITION : 94|6@1+ (1,0) [0|15] "" XXX
|
||||||
SG_ LANELINE_CURVATURE : 100|5@1- (1,15) [0|31] "" XXX
|
SG_ LANELINE_CURVATURE : 100|5@1- (1,15) [0|31] "" XXX
|
||||||
SG_ LANE_HIGHLIGHT : 105|4@1+ (1,0) [0|15] "" XXX
|
SG_ LANE_HIGHLIGHT : 105|4@1+ (1,0) [0|15] "" XXX
|
||||||
SG_ LANE_HIGHLIGHT_DISTANCE : 109|11@1+ (1,0) [0|7] "" 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_LEFT : 120|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ LANE_RIGHT : 123|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_ LANE_ZOOM : 126|2@1+ (1,0) [0|3] "" XXX
|
||||||
@ -287,16 +286,16 @@ BO_ 353 ADRV_0x161: 32 ADRV
|
|||||||
SG_ DISTANCE_LEAD : 184|5@1+ (1,0) [0|31] "" 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_CAR : 189|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ DISTANCE_SPACING : 192|4@1+ (1,0) [0|15] "" XXX
|
SG_ DISTANCE_SPACING : 192|4@1+ (1,0) [0|15] "" XXX
|
||||||
SG_ DISTANCE : 198|3@0+ (1,0) [0|7] "" XXX
|
SG_ DISTANCE : 196|4@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ vSetDis : 207|8@0+ (1,0) [0|255] "" XXX
|
SG_ vSetDis : 200|8@1+ (1,0) [0|255] "" XXX
|
||||||
SG_ SETSPEED : 208|4@1+ (1,0) [0|7] "" XXX
|
SG_ SETSPEED : 208|4@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ HDA_ICON : 212|3@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_ SLA_ICON : 216|4@1+ (1,0) [0|15] "" XXX
|
||||||
SG_ NAV_ICON : 220|3@1+ (1,0) [0|7] "" XXX
|
SG_ NAV_ICON : 220|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ LFA_ICON : 224|3@1+ (1,0) [0|7] "" XXX
|
SG_ LFA_ICON : 224|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ LCA_LEFT_ICON : 230|3@0+ (1,0) [0|7] "" XXX
|
SG_ LCA_LEFT_ICON : 228|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ LCA_RIGHT_ICON : 234|3@0+ (1,0) [0|7] "" XXX
|
SG_ LCA_RIGHT_ICON : 232|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ BACKGROUND : 239|4@0+ (1,0) [0|15] "" XXX
|
SG_ BACKGROUND : 236|4@1+ (1,0) [0|15] "" XXX
|
||||||
SG_ DAW_ICON : 240|3@1+ (1,0) [0|7] "" XXX
|
SG_ DAW_ICON : 240|3@1+ (1,0) [0|7] "" XXX
|
||||||
SG_ CAR_CIRCLE : 243|3@1+ (1,0) [0|7] "" XXX
|
SG_ CAR_CIRCLE : 243|3@1+ (1,0) [0|7] "" XXX
|
||||||
|
|
||||||
@ -365,7 +364,7 @@ BO_ 416 SCC_CONTROL: 32 ADRV
|
|||||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" 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_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_ObjRelSpd : 35|9@1+ (0.1,-16.4) [-16.4|34.7] "m/s" XXX
|
||||||
SG_ SET_ME_TMP_64 : 55|8@0+ (1,0) [0|63] "" XXX
|
SG_ SET_ME_TMP_64 : 55|8@0+ (1,0) [0|63] "" XXX
|
||||||
SG_ ZEROS_7 : 63|8@0+ (1,0) [0|255] "" XXX
|
SG_ ZEROS_7 : 63|8@0+ (1,0) [0|255] "" XXX
|
||||||
SG_ NEW_SIGNAL_1 : 64|2@1+ (1,0) [0|3] "" XXX
|
SG_ NEW_SIGNAL_1 : 64|2@1+ (1,0) [0|3] "" XXX
|
||||||
@ -390,7 +389,7 @@ BO_ 416 SCC_CONTROL: 32 ADRV
|
|||||||
SG_ ZEROS_4 : 183|4@0+ (1,0) [0|63] "" XXX
|
SG_ ZEROS_4 : 183|4@0+ (1,0) [0|63] "" XXX
|
||||||
SG_ StopReq : 184|1@0+ (1,0) [0|1] "" XXX
|
SG_ StopReq : 184|1@0+ (1,0) [0|1] "" XXX
|
||||||
SG_ CRUSE_INFO_SET_2 : 189|2@0+ (1,0) [0|3] "" XXX
|
SG_ CRUSE_INFO_SET_2 : 189|2@0+ (1,0) [0|3] "" XXX
|
||||||
SG_ NEW_SIGNAL_15_DESIRE_DIST : 192|11@1+ (0.1,0) [0|204.7] "m" 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_2 : 207|5@0+ (1,0) [0|63] "" XXX
|
||||||
SG_ ZEROS : 215|48@0+ (1,0) [0|281474976710655] "" XXX
|
SG_ ZEROS : 215|48@0+ (1,0) [0|281474976710655] "" XXX
|
||||||
|
|
||||||
@ -429,20 +428,20 @@ BO_ 437 MSG_1B5: 32 XXX
|
|||||||
SG_ LEFT_1 : 29|9@1+ (1,0) [0|511] "" XXX
|
SG_ LEFT_1 : 29|9@1+ (1,0) [0|511] "" XXX
|
||||||
SG_ LEFT_2 : 38|5@1+ (1,0) [0|31] "" XXX
|
SG_ LEFT_2 : 38|5@1+ (1,0) [0|31] "" XXX
|
||||||
SG_ LEFT_3 : 43|10@1- (1,0) [0|1023] "" XXX
|
SG_ LEFT_3 : 43|10@1- (1,0) [0|1023] "" XXX
|
||||||
SG_ LEFT_4 : 64|16@1- (1,0) [0|65535] "" XXX
|
SG_ LEFT_CURVATURE : 64|16@1- (1,0) [0|65535] "" XXX
|
||||||
SG_ LEFT_5 : 80|16@1- (1,0) [0|65535] "" XXX
|
SG_ LEFT_5 : 80|16@1- (1,0) [0|65535] "" XXX
|
||||||
SG_ RIGHT : 96|2@1+ (1,0) [0|3] "" XXX
|
SG_ RIGHT : 96|2@1+ (1,0) [0|3] "" XXX
|
||||||
SG_ RIGHT_LDW : 99|1@0+ (1,0) [0|1] "" XXX
|
SG_ RIGHT_LDW : 99|1@0+ (1,0) [0|1] "" XXX
|
||||||
SG_ RIGHT_1 : 101|9@1+ (1,0) [0|511] "" XXX
|
SG_ RIGHT_1 : 101|9@1+ (1,0) [0|511] "" XXX
|
||||||
SG_ RIGHT_2 : 110|5@1+ (1,0) [0|31] "" XXX
|
SG_ RIGHT_2 : 110|5@1+ (1,0) [0|31] "" XXX
|
||||||
SG_ RIGHT_3 : 115|10@1- (1,0) [0|1023] "" XXX
|
SG_ RIGHT_3 : 115|10@1- (1,0) [0|1023] "" XXX
|
||||||
SG_ RIGHT_4 : 128|16@1- (1,0) [0|65535] "" XXX
|
SG_ RIGHT_CURVATURE : 128|16@1- (1,0) [0|65535] "" XXX
|
||||||
SG_ RIGHT_5 : 144|16@1- (1,0) [0|65535] "" XXX
|
SG_ RIGHT_5 : 144|16@1- (1,0) [0|65535] "" XXX
|
||||||
SG_ LEAD : 192|2@1+ (1,0) [0|3] "" XXX
|
SG_ LEAD : 192|2@1+ (1,0) [0|3] "" XXX
|
||||||
SG_ LEAD_1 : 194|6@1+ (1,0) [0|63] "" XXX
|
SG_ LEAD_1 : 194|6@1+ (1,0) [0|63] "" XXX
|
||||||
SG_ LEAD_2 : 200|11@1- (1,0) [0|4095] "" XXX
|
SG_ LEAD_SPEED : 200|11@1- (1,48) [0|4095] "" XXX
|
||||||
SG_ LEAD_3 : 211|1@0+ (1,0) [0|1] "" XXX
|
SG_ LEAD_3 : 211|1@0+ (1,0) [0|1] "" XXX
|
||||||
SG_ LEAD_DISTANCE : 213|11@1+ (1,0) [0|2047] "" XXX
|
SG_ LEAD_DISTANCE : 213|11@1+ (0.1,0) [0|204.7] "m" XXX
|
||||||
|
|
||||||
BO_ 438 CAM_0x1b6: 32 CAMERA
|
BO_ 438 CAM_0x1b6: 32 CAMERA
|
||||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||||
@ -511,7 +510,6 @@ BO_ 490 ADRV_0x1ea: 32 ADRV
|
|||||||
SG_ NEW_SIGNAL_3 : 239|8@0+ (1,0) [0|255] "" XXX
|
SG_ NEW_SIGNAL_3 : 239|8@0+ (1,0) [0|255] "" XXX
|
||||||
SG_ NEW_SIGNAL_1 : 247|8@0+ (1,0) [0|255] "" XXX
|
SG_ NEW_SIGNAL_1 : 247|8@0+ (1,0) [0|255] "" XXX
|
||||||
|
|
||||||
|
|
||||||
BO_ 507 CAM_0x1fb: 32 CAMERA
|
BO_ 507 CAM_0x1fb: 32 CAMERA
|
||||||
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX
|
||||||
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX
|
||||||
|
Loading…
x
Reference in New Issue
Block a user