CANParser: remove default values (#23642)
* draft
* remove rest
* bump
* update radar interfaces
* do rest and formatting
* bump
* fix mising check
* try this
* Revert "try this"
This reverts commit 0d26d9a072
.
* update refs
Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
pull/23649/head
parent
220877fb60
commit
3645186d7c
|
@ -75,33 +75,33 @@ class CarState(CarStateBase):
|
|||
@staticmethod
|
||||
def get_can_parser(CP):
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("PRNDL", "GEAR", 0),
|
||||
("DOOR_OPEN_FL", "DOORS", 0),
|
||||
("DOOR_OPEN_FR", "DOORS", 0),
|
||||
("DOOR_OPEN_RL", "DOORS", 0),
|
||||
("DOOR_OPEN_RR", "DOORS", 0),
|
||||
("BRAKE_PRESSED_2", "BRAKE_2", 0),
|
||||
("ACCEL_134", "ACCEL_GAS_134", 0),
|
||||
("SPEED_LEFT", "SPEED_1", 0),
|
||||
("SPEED_RIGHT", "SPEED_1", 0),
|
||||
("WHEEL_SPEED_FL", "WHEEL_SPEEDS", 0),
|
||||
("WHEEL_SPEED_RR", "WHEEL_SPEEDS", 0),
|
||||
("WHEEL_SPEED_RL", "WHEEL_SPEEDS", 0),
|
||||
("WHEEL_SPEED_FR", "WHEEL_SPEEDS", 0),
|
||||
("STEER_ANGLE", "STEERING", 0),
|
||||
("STEERING_RATE", "STEERING", 0),
|
||||
("TURN_SIGNALS", "STEERING_LEVERS", 0),
|
||||
("ACC_STATUS_2", "ACC_2", 0),
|
||||
("HIGH_BEAM_FLASH", "STEERING_LEVERS", 0),
|
||||
("ACC_SPEED_CONFIG_KPH", "DASHBOARD", 0),
|
||||
("CRUISE_STATE", "DASHBOARD", 0),
|
||||
("TORQUE_DRIVER", "EPS_STATUS", 0),
|
||||
("TORQUE_MOTOR", "EPS_STATUS", 0),
|
||||
("LKAS_STATE", "EPS_STATUS", 1),
|
||||
("COUNTER", "EPS_STATUS", -1),
|
||||
("TRACTION_OFF", "TRACTION_BUTTON", 0),
|
||||
("SEATBELT_DRIVER_UNLATCHED", "SEATBELT_STATUS", 0),
|
||||
# sig_name, sig_address
|
||||
("PRNDL", "GEAR"),
|
||||
("DOOR_OPEN_FL", "DOORS"),
|
||||
("DOOR_OPEN_FR", "DOORS"),
|
||||
("DOOR_OPEN_RL", "DOORS"),
|
||||
("DOOR_OPEN_RR", "DOORS"),
|
||||
("BRAKE_PRESSED_2", "BRAKE_2"),
|
||||
("ACCEL_134", "ACCEL_GAS_134"),
|
||||
("SPEED_LEFT", "SPEED_1"),
|
||||
("SPEED_RIGHT", "SPEED_1"),
|
||||
("WHEEL_SPEED_FL", "WHEEL_SPEEDS"),
|
||||
("WHEEL_SPEED_RR", "WHEEL_SPEEDS"),
|
||||
("WHEEL_SPEED_RL", "WHEEL_SPEEDS"),
|
||||
("WHEEL_SPEED_FR", "WHEEL_SPEEDS"),
|
||||
("STEER_ANGLE", "STEERING"),
|
||||
("STEERING_RATE", "STEERING"),
|
||||
("TURN_SIGNALS", "STEERING_LEVERS"),
|
||||
("ACC_STATUS_2", "ACC_2"),
|
||||
("HIGH_BEAM_FLASH", "STEERING_LEVERS"),
|
||||
("ACC_SPEED_CONFIG_KPH", "DASHBOARD"),
|
||||
("CRUISE_STATE", "DASHBOARD"),
|
||||
("TORQUE_DRIVER", "EPS_STATUS"),
|
||||
("TORQUE_MOTOR", "EPS_STATUS"),
|
||||
("LKAS_STATE", "EPS_STATUS"),
|
||||
("COUNTER", "EPS_STATUS",),
|
||||
("TRACTION_OFF", "TRACTION_BUTTON"),
|
||||
("SEATBELT_DRIVER_UNLATCHED", "SEATBELT_STATUS"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -123,8 +123,8 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.enableBsm:
|
||||
signals += [
|
||||
("BLIND_SPOT_RIGHT", "BLIND_SPOT_WARNINGS", 0),
|
||||
("BLIND_SPOT_LEFT", "BLIND_SPOT_WARNINGS", 0),
|
||||
("BLIND_SPOT_RIGHT", "BLIND_SPOT_WARNINGS"),
|
||||
("BLIND_SPOT_LEFT", "BLIND_SPOT_WARNINGS"),
|
||||
]
|
||||
checks += [("BLIND_SPOT_WARNINGS", 2)]
|
||||
|
||||
|
@ -133,10 +133,10 @@ class CarState(CarStateBase):
|
|||
@staticmethod
|
||||
def get_cam_can_parser(CP):
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("COUNTER", "LKAS_COMMAND", -1),
|
||||
("CAR_MODEL", "LKAS_HUD", -1),
|
||||
("LKAS_STATUS_OK", "LKAS_HEARTBIT", -1)
|
||||
# sig_name, sig_address
|
||||
("COUNTER", "LKAS_COMMAND"),
|
||||
("CAR_MODEL", "LKAS_HUD"),
|
||||
("LKAS_STATUS_OK", "LKAS_HEARTBIT")
|
||||
]
|
||||
checks = [
|
||||
("LKAS_COMMAND", 100),
|
||||
|
|
|
@ -11,30 +11,25 @@ NUMBER_MSGS = len(RADAR_MSGS_C) + len(RADAR_MSGS_D)
|
|||
|
||||
def _create_radar_can_parser(car_fingerprint):
|
||||
msg_n = len(RADAR_MSGS_C)
|
||||
# list of [(signal name, message name or number, initial values), (...)]
|
||||
# [('RADAR_STATE', 1024, 0),
|
||||
# ('LONG_DIST', 1072, 255),
|
||||
# ('LONG_DIST', 1073, 255),
|
||||
# ('LONG_DIST', 1074, 255),
|
||||
# ('LONG_DIST', 1075, 255),
|
||||
# list of [(signal name, message name or number), (...)]
|
||||
# [('RADAR_STATE', 1024),
|
||||
# ('LONG_DIST', 1072),
|
||||
# ('LONG_DIST', 1073),
|
||||
# ('LONG_DIST', 1074),
|
||||
# ('LONG_DIST', 1075),
|
||||
|
||||
# The factor and offset are applied by the dbc parsing library, so the
|
||||
# default values should be after the factor/offset are applied.
|
||||
signals = list(zip(['LONG_DIST'] * msg_n +
|
||||
['LAT_DIST'] * msg_n +
|
||||
['REL_SPEED'] * msg_n,
|
||||
RADAR_MSGS_C * 2 + # LONG_DIST, LAT_DIST
|
||||
RADAR_MSGS_D, # REL_SPEED
|
||||
[0] * msg_n + # LONG_DIST
|
||||
[-1000] * msg_n + # LAT_DIST
|
||||
[-146.278] * msg_n)) # REL_SPEED set to 0, factor/offset to this
|
||||
['LAT_DIST'] * msg_n +
|
||||
['REL_SPEED'] * msg_n,
|
||||
RADAR_MSGS_C * 2 + # LONG_DIST, LAT_DIST
|
||||
RADAR_MSGS_D)) # REL_SPEED
|
||||
# TODO what are the checks actually used for?
|
||||
# honda only checks the last message,
|
||||
# toyota checks all the messages. Which do we want?
|
||||
checks = list(zip(RADAR_MSGS_C +
|
||||
RADAR_MSGS_D,
|
||||
[20]*msg_n + # 20Hz (0.05s)
|
||||
[20]*msg_n)) # 20Hz (0.05s)
|
||||
RADAR_MSGS_D,
|
||||
[20] * msg_n + # 20Hz (0.05s)
|
||||
[20] * msg_n)) # 20Hz (0.05s)
|
||||
|
||||
return CANParser(DBC[car_fingerprint]['radar'], signals, checks, 1)
|
||||
|
||||
|
|
|
@ -39,20 +39,20 @@ class CarState(CarStateBase):
|
|||
@staticmethod
|
||||
def get_can_parser(CP):
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("WhlRr_W_Meas", "WheelSpeed_CG1", 0.),
|
||||
("WhlRl_W_Meas", "WheelSpeed_CG1", 0.),
|
||||
("WhlFr_W_Meas", "WheelSpeed_CG1", 0.),
|
||||
("WhlFl_W_Meas", "WheelSpeed_CG1", 0.),
|
||||
("SteWhlRelInit_An_Sns", "Steering_Wheel_Data_CG1", 0.),
|
||||
("Cruise_State", "Cruise_Status", 0.),
|
||||
("Set_Speed", "Cruise_Status", 0.),
|
||||
("LaActAvail_D_Actl", "Lane_Keep_Assist_Status", 0),
|
||||
("LaHandsOff_B_Actl", "Lane_Keep_Assist_Status", 0),
|
||||
("LaActDeny_B_Actl", "Lane_Keep_Assist_Status", 0),
|
||||
("ApedPosScal_Pc_Actl", "EngineData_14", 0.),
|
||||
("Dist_Incr", "Steering_Buttons", 0.),
|
||||
("Brake_Drv_Appl", "Cruise_Status", 0.),
|
||||
# sig_name, sig_address
|
||||
("WhlRr_W_Meas", "WheelSpeed_CG1"),
|
||||
("WhlRl_W_Meas", "WheelSpeed_CG1"),
|
||||
("WhlFr_W_Meas", "WheelSpeed_CG1"),
|
||||
("WhlFl_W_Meas", "WheelSpeed_CG1"),
|
||||
("SteWhlRelInit_An_Sns", "Steering_Wheel_Data_CG1"),
|
||||
("Cruise_State", "Cruise_Status"),
|
||||
("Set_Speed", "Cruise_Status"),
|
||||
("LaActAvail_D_Actl", "Lane_Keep_Assist_Status"),
|
||||
("LaHandsOff_B_Actl", "Lane_Keep_Assist_Status"),
|
||||
("LaActDeny_B_Actl", "Lane_Keep_Assist_Status"),
|
||||
("ApedPosScal_Pc_Actl", "EngineData_14"),
|
||||
("Dist_Incr", "Steering_Buttons"),
|
||||
("Brake_Drv_Appl", "Cruise_Status"),
|
||||
]
|
||||
checks = []
|
||||
return CANParser(DBC[CP.carFingerprint]["pt"], signals, checks, 0, enforce_checks=False)
|
||||
|
|
|
@ -7,12 +7,12 @@ from selfdrive.car.interfaces import RadarInterfaceBase
|
|||
|
||||
RADAR_MSGS = list(range(0x500, 0x540))
|
||||
|
||||
|
||||
def _create_radar_can_parser(car_fingerprint):
|
||||
msg_n = len(RADAR_MSGS)
|
||||
signals = list(zip(['X_Rel'] * msg_n + ['Angle'] * msg_n + ['V_Rel'] * msg_n,
|
||||
RADAR_MSGS * 3,
|
||||
[0] * msg_n + [0] * msg_n + [0] * msg_n))
|
||||
checks = list(zip(RADAR_MSGS, [20]*msg_n))
|
||||
RADAR_MSGS * 3))
|
||||
checks = list(zip(RADAR_MSGS, [20] * msg_n))
|
||||
|
||||
return CANParser(DBC[car_fingerprint]['radar'], signals, checks, 1)
|
||||
|
||||
|
|
|
@ -3,8 +3,7 @@ from common.numpy_fast import mean
|
|||
from opendbc.can.can_define import CANDefine
|
||||
from opendbc.can.parser import CANParser
|
||||
from selfdrive.car.interfaces import CarStateBase
|
||||
from selfdrive.car.gm.values import DBC, CAR, AccState, CanBus, \
|
||||
CruiseButtons, STEER_THRESHOLD
|
||||
from selfdrive.car.gm.values import DBC, CAR, AccState, CanBus, STEER_THRESHOLD
|
||||
|
||||
|
||||
class CarState(CarStateBase):
|
||||
|
@ -81,31 +80,31 @@ class CarState(CarStateBase):
|
|||
def get_can_parser(CP):
|
||||
# this function generates lists for signal, messages and initial values
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("BrakePedalPosition", "EBCMBrakePedalPosition", 0),
|
||||
("FrontLeftDoor", "BCMDoorBeltStatus", 0),
|
||||
("FrontRightDoor", "BCMDoorBeltStatus", 0),
|
||||
("RearLeftDoor", "BCMDoorBeltStatus", 0),
|
||||
("RearRightDoor", "BCMDoorBeltStatus", 0),
|
||||
("LeftSeatBelt", "BCMDoorBeltStatus", 0),
|
||||
("RightSeatBelt", "BCMDoorBeltStatus", 0),
|
||||
("TurnSignals", "BCMTurnSignals", 0),
|
||||
("AcceleratorPedal2", "AcceleratorPedal2", 0),
|
||||
("CruiseState", "AcceleratorPedal2", 0),
|
||||
("ACCButtons", "ASCMSteeringButton", CruiseButtons.UNPRESS),
|
||||
("SteeringWheelAngle", "PSCMSteeringAngle", 0),
|
||||
("SteeringWheelRate", "PSCMSteeringAngle", 0),
|
||||
("FLWheelSpd", "EBCMWheelSpdFront", 0),
|
||||
("FRWheelSpd", "EBCMWheelSpdFront", 0),
|
||||
("RLWheelSpd", "EBCMWheelSpdRear", 0),
|
||||
("RRWheelSpd", "EBCMWheelSpdRear", 0),
|
||||
("PRNDL", "ECMPRDNL", 0),
|
||||
("LKADriverAppldTrq", "PSCMStatus", 0),
|
||||
("LKATorqueDelivered", "PSCMStatus", 0),
|
||||
("LKATorqueDeliveredStatus", "PSCMStatus", 0),
|
||||
("TractionControlOn", "ESPStatus", 0),
|
||||
("EPBClosed", "EPBStatus", 0),
|
||||
("CruiseMainOn", "ECMEngineStatus", 0),
|
||||
# sig_name, sig_address
|
||||
("BrakePedalPosition", "EBCMBrakePedalPosition"),
|
||||
("FrontLeftDoor", "BCMDoorBeltStatus"),
|
||||
("FrontRightDoor", "BCMDoorBeltStatus"),
|
||||
("RearLeftDoor", "BCMDoorBeltStatus"),
|
||||
("RearRightDoor", "BCMDoorBeltStatus"),
|
||||
("LeftSeatBelt", "BCMDoorBeltStatus"),
|
||||
("RightSeatBelt", "BCMDoorBeltStatus"),
|
||||
("TurnSignals", "BCMTurnSignals"),
|
||||
("AcceleratorPedal2", "AcceleratorPedal2"),
|
||||
("CruiseState", "AcceleratorPedal2"),
|
||||
("ACCButtons", "ASCMSteeringButton"),
|
||||
("SteeringWheelAngle", "PSCMSteeringAngle"),
|
||||
("SteeringWheelRate", "PSCMSteeringAngle"),
|
||||
("FLWheelSpd", "EBCMWheelSpdFront"),
|
||||
("FRWheelSpd", "EBCMWheelSpdFront"),
|
||||
("RLWheelSpd", "EBCMWheelSpdRear"),
|
||||
("RRWheelSpd", "EBCMWheelSpdRear"),
|
||||
("PRNDL", "ECMPRDNL"),
|
||||
("LKADriverAppldTrq", "PSCMStatus"),
|
||||
("LKATorqueDelivered", "PSCMStatus"),
|
||||
("LKATorqueDeliveredStatus", "PSCMStatus"),
|
||||
("TractionControlOn", "ESPStatus"),
|
||||
("EPBClosed", "EPBStatus"),
|
||||
("CruiseMainOn", "ECMEngineStatus"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -126,7 +125,7 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint == CAR.VOLT:
|
||||
signals += [
|
||||
("RegenPaddle", "EBCMRegenPaddle", 0),
|
||||
("RegenPaddle", "EBCMRegenPaddle"),
|
||||
]
|
||||
checks += [
|
||||
("EBCMRegenPaddle", 50),
|
||||
|
@ -137,7 +136,7 @@ class CarState(CarStateBase):
|
|||
@staticmethod
|
||||
def get_loopback_can_parser(CP):
|
||||
signals = [
|
||||
("RollingCounter", "ASCMLKASteeringCmd", 0),
|
||||
("RollingCounter", "ASCMLKASteeringCmd"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
|
|
@ -14,6 +14,7 @@ NUM_SLOTS = 20
|
|||
# messages that are present in DBC
|
||||
LAST_RADAR_MSG = RADAR_HEADER_MSG + NUM_SLOTS
|
||||
|
||||
|
||||
def create_radar_can_parser(car_fingerprint):
|
||||
if car_fingerprint not in (CAR.VOLT, CAR.MALIBU, CAR.HOLDEN_ASTRA, CAR.ACADIA, CAR.CADILLAC_ATS, CAR.ESCALADE_ESV):
|
||||
return None
|
||||
|
@ -21,17 +22,13 @@ 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,
|
||||
[0] * 7 +
|
||||
[0.0] * NUM_SLOTS + [0.0] * NUM_SLOTS +
|
||||
[0.0] * NUM_SLOTS + [0.0] * NUM_SLOTS +
|
||||
[0.0] * NUM_SLOTS + [0] * NUM_SLOTS))
|
||||
'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))
|
||||
|
||||
checks = list({(s[1], 14) for s in signals})
|
||||
|
||||
|
|
|
@ -4,13 +4,13 @@ from opendbc.can.parser import CANParser
|
|||
from selfdrive.car.interfaces import RadarInterfaceBase
|
||||
from selfdrive.car.honda.values import DBC
|
||||
|
||||
|
||||
def _create_nidec_can_parser(car_fingerprint):
|
||||
radar_messages = [0x400] + list(range(0x430, 0x43A)) + list(range(0x440, 0x446))
|
||||
signals = list(zip(['RADAR_STATE'] +
|
||||
['LONG_DIST'] * 16 + ['NEW_TRACK'] * 16 + ['LAT_DIST'] * 16 +
|
||||
['REL_SPEED'] * 16,
|
||||
[0x400] + radar_messages[1:] * 4,
|
||||
[0] + [255] * 16 + [1] * 16 + [0] * 16 + [0] * 16))
|
||||
['LONG_DIST'] * 16 + ['NEW_TRACK'] * 16 + ['LAT_DIST'] * 16 +
|
||||
['REL_SPEED'] * 16,
|
||||
[0x400] + radar_messages[1:] * 4))
|
||||
checks = [(s[1], 20) for s in signals]
|
||||
return CANParser(DBC[car_fingerprint]['radar'], signals, checks, 1)
|
||||
|
||||
|
|
|
@ -120,57 +120,57 @@ class CarState(CarStateBase):
|
|||
@staticmethod
|
||||
def get_can_parser(CP):
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("WHL_SPD_FL", "WHL_SPD11", 0),
|
||||
("WHL_SPD_FR", "WHL_SPD11", 0),
|
||||
("WHL_SPD_RL", "WHL_SPD11", 0),
|
||||
("WHL_SPD_RR", "WHL_SPD11", 0),
|
||||
# sig_name, sig_address
|
||||
("WHL_SPD_FL", "WHL_SPD11"),
|
||||
("WHL_SPD_FR", "WHL_SPD11"),
|
||||
("WHL_SPD_RL", "WHL_SPD11"),
|
||||
("WHL_SPD_RR", "WHL_SPD11"),
|
||||
|
||||
("YAW_RATE", "ESP12", 0),
|
||||
("YAW_RATE", "ESP12"),
|
||||
|
||||
("CF_Gway_DrvSeatBeltInd", "CGW4", 1),
|
||||
("CF_Gway_DrvSeatBeltInd", "CGW4"),
|
||||
|
||||
("CF_Gway_DrvSeatBeltSw", "CGW1", 0),
|
||||
("CF_Gway_DrvDrSw", "CGW1", 0), # Driver Door
|
||||
("CF_Gway_AstDrSw", "CGW1", 0), # Passenger door
|
||||
("CF_Gway_RLDrSw", "CGW2", 0), # Rear reft door
|
||||
("CF_Gway_RRDrSw", "CGW2", 0), # Rear right door
|
||||
("CF_Gway_TurnSigLh", "CGW1", 0),
|
||||
("CF_Gway_TurnSigRh", "CGW1", 0),
|
||||
("CF_Gway_ParkBrakeSw", "CGW1", 0),
|
||||
("CF_Gway_DrvSeatBeltSw", "CGW1"),
|
||||
("CF_Gway_DrvDrSw", "CGW1"), # Driver Door
|
||||
("CF_Gway_AstDrSw", "CGW1"), # Passenger door
|
||||
("CF_Gway_RLDrSw", "CGW2"), # Rear reft door
|
||||
("CF_Gway_RRDrSw", "CGW2"), # Rear right door
|
||||
("CF_Gway_TurnSigLh", "CGW1"),
|
||||
("CF_Gway_TurnSigRh", "CGW1"),
|
||||
("CF_Gway_ParkBrakeSw", "CGW1"),
|
||||
|
||||
("CYL_PRES", "ESP12", 0),
|
||||
("CYL_PRES", "ESP12"),
|
||||
|
||||
("CF_Clu_CruiseSwState", "CLU11", 0),
|
||||
("CF_Clu_CruiseSwMain", "CLU11", 0),
|
||||
("CF_Clu_SldMainSW", "CLU11", 0),
|
||||
("CF_Clu_ParityBit1", "CLU11", 0),
|
||||
("CF_Clu_VanzDecimal" , "CLU11", 0),
|
||||
("CF_Clu_Vanz", "CLU11", 0),
|
||||
("CF_Clu_SPEED_UNIT", "CLU11", 0),
|
||||
("CF_Clu_DetentOut", "CLU11", 0),
|
||||
("CF_Clu_RheostatLevel", "CLU11", 0),
|
||||
("CF_Clu_CluInfo", "CLU11", 0),
|
||||
("CF_Clu_AmpInfo", "CLU11", 0),
|
||||
("CF_Clu_AliveCnt1", "CLU11", 0),
|
||||
("CF_Clu_CruiseSwState", "CLU11"),
|
||||
("CF_Clu_CruiseSwMain", "CLU11"),
|
||||
("CF_Clu_SldMainSW", "CLU11"),
|
||||
("CF_Clu_ParityBit1", "CLU11"),
|
||||
("CF_Clu_VanzDecimal" , "CLU11"),
|
||||
("CF_Clu_Vanz", "CLU11"),
|
||||
("CF_Clu_SPEED_UNIT", "CLU11"),
|
||||
("CF_Clu_DetentOut", "CLU11"),
|
||||
("CF_Clu_RheostatLevel", "CLU11"),
|
||||
("CF_Clu_CluInfo", "CLU11"),
|
||||
("CF_Clu_AmpInfo", "CLU11"),
|
||||
("CF_Clu_AliveCnt1", "CLU11"),
|
||||
|
||||
("ACCEnable", "TCS13", 0),
|
||||
("ACC_REQ", "TCS13", 0),
|
||||
("DriverBraking", "TCS13", 0),
|
||||
("StandStill", "TCS13", 0),
|
||||
("PBRAKE_ACT", "TCS13", 0),
|
||||
("ACCEnable", "TCS13"),
|
||||
("ACC_REQ", "TCS13"),
|
||||
("DriverBraking", "TCS13"),
|
||||
("StandStill", "TCS13"),
|
||||
("PBRAKE_ACT", "TCS13"),
|
||||
|
||||
("ESC_Off_Step", "TCS15", 0),
|
||||
("AVH_LAMP", "TCS15", 0),
|
||||
("ESC_Off_Step", "TCS15"),
|
||||
("AVH_LAMP", "TCS15"),
|
||||
|
||||
("CR_Mdps_StrColTq", "MDPS12", 0),
|
||||
("CF_Mdps_ToiActive", "MDPS12", 0),
|
||||
("CF_Mdps_ToiUnavail", "MDPS12", 0),
|
||||
("CF_Mdps_ToiFlt", "MDPS12", 0),
|
||||
("CR_Mdps_OutTq", "MDPS12", 0),
|
||||
("CR_Mdps_StrColTq", "MDPS12"),
|
||||
("CF_Mdps_ToiActive", "MDPS12"),
|
||||
("CF_Mdps_ToiUnavail", "MDPS12"),
|
||||
("CF_Mdps_ToiFlt", "MDPS12"),
|
||||
("CR_Mdps_OutTq", "MDPS12"),
|
||||
|
||||
("SAS_Angle", "SAS11", 0),
|
||||
("SAS_Speed", "SAS11", 0),
|
||||
("SAS_Angle", "SAS11"),
|
||||
("SAS_Speed", "SAS11"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -189,11 +189,11 @@ class CarState(CarStateBase):
|
|||
|
||||
if not CP.openpilotLongitudinalControl:
|
||||
signals += [
|
||||
("MainMode_ACC", "SCC11", 0),
|
||||
("VSetDis", "SCC11", 0),
|
||||
("SCCInfoDisplay", "SCC11", 0),
|
||||
("ACC_ObjDist", "SCC11", 0),
|
||||
("ACCMode", "SCC12", 1),
|
||||
("MainMode_ACC", "SCC11"),
|
||||
("VSetDis", "SCC11"),
|
||||
("SCCInfoDisplay", "SCC11"),
|
||||
("ACC_ObjDist", "SCC11"),
|
||||
("ACCMode", "SCC12"),
|
||||
]
|
||||
|
||||
checks += [
|
||||
|
@ -203,39 +203,39 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint in FEATURES["use_fca"]:
|
||||
signals += [
|
||||
("FCA_CmdAct", "FCA11", 0),
|
||||
("CF_VSM_Warn", "FCA11", 0),
|
||||
("FCA_CmdAct", "FCA11"),
|
||||
("CF_VSM_Warn", "FCA11"),
|
||||
]
|
||||
checks += [("FCA11", 50)]
|
||||
else:
|
||||
signals += [
|
||||
("AEB_CmdAct", "SCC12", 0),
|
||||
("CF_VSM_Warn", "SCC12", 0),
|
||||
("AEB_CmdAct", "SCC12"),
|
||||
("CF_VSM_Warn", "SCC12"),
|
||||
]
|
||||
|
||||
if CP.enableBsm:
|
||||
signals += [
|
||||
("CF_Lca_IndLeft", "LCA11", 0),
|
||||
("CF_Lca_IndRight", "LCA11", 0),
|
||||
("CF_Lca_IndLeft", "LCA11"),
|
||||
("CF_Lca_IndRight", "LCA11"),
|
||||
]
|
||||
checks += [("LCA11", 50)]
|
||||
|
||||
if CP.carFingerprint in (HYBRID_CAR | EV_CAR):
|
||||
if CP.carFingerprint in HYBRID_CAR:
|
||||
signals += [
|
||||
("CR_Vcu_AccPedDep_Pos", "E_EMS11", 0)
|
||||
("CR_Vcu_AccPedDep_Pos", "E_EMS11")
|
||||
]
|
||||
else:
|
||||
signals += [
|
||||
("Accel_Pedal_Pos", "E_EMS11", 0)
|
||||
("Accel_Pedal_Pos", "E_EMS11")
|
||||
]
|
||||
checks += [
|
||||
("E_EMS11", 50),
|
||||
]
|
||||
else:
|
||||
signals += [
|
||||
("PV_AV_CAN", "EMS12", 0),
|
||||
("CF_Ems_AclAct", "EMS16", 0),
|
||||
("PV_AV_CAN", "EMS12"),
|
||||
("CF_Ems_AclAct", "EMS16"),
|
||||
]
|
||||
checks += [
|
||||
("EMS12", 100),
|
||||
|
@ -244,24 +244,24 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint in FEATURES["use_cluster_gears"]:
|
||||
signals += [
|
||||
("CF_Clu_Gear", "CLU15", 0),
|
||||
("CF_Clu_Gear", "CLU15"),
|
||||
]
|
||||
checks += [
|
||||
("CLU15", 5)
|
||||
]
|
||||
elif CP.carFingerprint in FEATURES["use_tcu_gears"]:
|
||||
signals += [
|
||||
("CUR_GR", "TCU12", 0)
|
||||
("CUR_GR", "TCU12")
|
||||
]
|
||||
checks += [
|
||||
("TCU12", 100)
|
||||
]
|
||||
elif CP.carFingerprint in FEATURES["use_elect_gears"]:
|
||||
signals += [("Elect_Gear_Shifter", "ELECT_GEAR", 0)]
|
||||
signals += [("Elect_Gear_Shifter", "ELECT_GEAR")]
|
||||
checks += [("ELECT_GEAR", 20)]
|
||||
else:
|
||||
signals += [
|
||||
("CF_Lvr_Gear", "LVR12", 0)
|
||||
("CF_Lvr_Gear", "LVR12")
|
||||
]
|
||||
checks += [
|
||||
("LVR12", 100)
|
||||
|
@ -273,22 +273,22 @@ class CarState(CarStateBase):
|
|||
def get_cam_can_parser(CP):
|
||||
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("CF_Lkas_LdwsActivemode", "LKAS11", 0),
|
||||
("CF_Lkas_LdwsSysState", "LKAS11", 0),
|
||||
("CF_Lkas_SysWarning", "LKAS11", 0),
|
||||
("CF_Lkas_LdwsLHWarning", "LKAS11", 0),
|
||||
("CF_Lkas_LdwsRHWarning", "LKAS11", 0),
|
||||
("CF_Lkas_HbaLamp", "LKAS11", 0),
|
||||
("CF_Lkas_FcwBasReq", "LKAS11", 0),
|
||||
("CF_Lkas_HbaSysState", "LKAS11", 0),
|
||||
("CF_Lkas_FcwOpt", "LKAS11", 0),
|
||||
("CF_Lkas_HbaOpt", "LKAS11", 0),
|
||||
("CF_Lkas_FcwSysState", "LKAS11", 0),
|
||||
("CF_Lkas_FcwCollisionWarning", "LKAS11", 0),
|
||||
("CF_Lkas_FusionState", "LKAS11", 0),
|
||||
("CF_Lkas_FcwOpt_USM", "LKAS11", 0),
|
||||
("CF_Lkas_LdwsOpt_USM", "LKAS11", 0),
|
||||
# sig_name, sig_address
|
||||
("CF_Lkas_LdwsActivemode", "LKAS11"),
|
||||
("CF_Lkas_LdwsSysState", "LKAS11"),
|
||||
("CF_Lkas_SysWarning", "LKAS11"),
|
||||
("CF_Lkas_LdwsLHWarning", "LKAS11"),
|
||||
("CF_Lkas_LdwsRHWarning", "LKAS11"),
|
||||
("CF_Lkas_HbaLamp", "LKAS11"),
|
||||
("CF_Lkas_FcwBasReq", "LKAS11"),
|
||||
("CF_Lkas_HbaSysState", "LKAS11"),
|
||||
("CF_Lkas_FcwOpt", "LKAS11"),
|
||||
("CF_Lkas_HbaOpt", "LKAS11"),
|
||||
("CF_Lkas_FcwSysState", "LKAS11"),
|
||||
("CF_Lkas_FcwCollisionWarning", "LKAS11"),
|
||||
("CF_Lkas_FusionState", "LKAS11"),
|
||||
("CF_Lkas_FcwOpt_USM", "LKAS11"),
|
||||
("CF_Lkas_LdwsOpt_USM", "LKAS11"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
|
|
@ -20,11 +20,11 @@ def get_radar_can_parser(CP):
|
|||
for addr in range(RADAR_START_ADDR, RADAR_START_ADDR + RADAR_MSG_COUNT):
|
||||
msg = f"RADAR_TRACK_{addr:x}"
|
||||
signals += [
|
||||
("STATE", msg, 0),
|
||||
("AZIMUTH", msg, 0),
|
||||
("LONG_DIST", msg, 0),
|
||||
("REL_ACCEL", msg, 0),
|
||||
("REL_SPEED", msg, 0),
|
||||
("STATE", msg),
|
||||
("AZIMUTH", msg),
|
||||
("LONG_DIST", msg),
|
||||
("REL_ACCEL", msg),
|
||||
("REL_SPEED", msg),
|
||||
]
|
||||
checks += [(msg, 50)]
|
||||
return CANParser(DBC[CP.carFingerprint]['radar'], signals, checks, 1)
|
||||
|
@ -81,7 +81,7 @@ class RadarInterface(RadarInterfaceBase):
|
|||
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 = msg['REL_ACCEL']
|
||||
self.pts[addr].aRel = msg['REL_ACCEL']
|
||||
self.pts[addr].yvRel = float('nan')
|
||||
|
||||
else:
|
||||
|
|
|
@ -102,18 +102,18 @@ class CarState(CarStateBase):
|
|||
def get_can_parser(CP):
|
||||
# this function generates lists for signal, messages and initial values
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("LEFT_BLINK", "BLINK_INFO", 0),
|
||||
("RIGHT_BLINK", "BLINK_INFO", 0),
|
||||
("HIGH_BEAMS", "BLINK_INFO", 0),
|
||||
("STEER_ANGLE", "STEER", 0),
|
||||
("STEER_ANGLE_RATE", "STEER_RATE", 0),
|
||||
("STEER_TORQUE_SENSOR", "STEER_TORQUE", 0),
|
||||
("STEER_TORQUE_MOTOR", "STEER_TORQUE", 0),
|
||||
("FL", "WHEEL_SPEEDS", 0),
|
||||
("FR", "WHEEL_SPEEDS", 0),
|
||||
("RL", "WHEEL_SPEEDS", 0),
|
||||
("RR", "WHEEL_SPEEDS", 0),
|
||||
# sig_name, sig_address
|
||||
("LEFT_BLINK", "BLINK_INFO"),
|
||||
("RIGHT_BLINK", "BLINK_INFO"),
|
||||
("HIGH_BEAMS", "BLINK_INFO"),
|
||||
("STEER_ANGLE", "STEER"),
|
||||
("STEER_ANGLE_RATE", "STEER_RATE"),
|
||||
("STEER_TORQUE_SENSOR", "STEER_TORQUE"),
|
||||
("STEER_TORQUE_MOTOR", "STEER_TORQUE"),
|
||||
("FL", "WHEEL_SPEEDS"),
|
||||
("FR", "WHEEL_SPEEDS"),
|
||||
("RL", "WHEEL_SPEEDS"),
|
||||
("RR", "WHEEL_SPEEDS"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -127,26 +127,26 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint in GEN1:
|
||||
signals += [
|
||||
("LKAS_BLOCK", "STEER_RATE", 0),
|
||||
("LKAS_TRACK_STATE", "STEER_RATE", 0),
|
||||
("HANDS_OFF_5_SECONDS", "STEER_RATE", 0),
|
||||
("CRZ_ACTIVE", "CRZ_CTRL", 0),
|
||||
("CRZ_AVAILABLE", "CRZ_CTRL", 0),
|
||||
("CRZ_SPEED", "CRZ_EVENTS", 0),
|
||||
("STANDSTILL", "PEDALS", 0),
|
||||
("BRAKE_ON", "PEDALS", 0),
|
||||
("BRAKE_PRESSURE", "BRAKE", 0),
|
||||
("GEAR", "GEAR", 0),
|
||||
("DRIVER_SEATBELT", "SEATBELT", 0),
|
||||
("FL", "DOORS", 0),
|
||||
("FR", "DOORS", 0),
|
||||
("BL", "DOORS", 0),
|
||||
("BR", "DOORS", 0),
|
||||
("PEDAL_GAS", "ENGINE_DATA", 0),
|
||||
("SPEED", "ENGINE_DATA", 0),
|
||||
("CTR", "CRZ_BTNS", 0),
|
||||
("LEFT_BS1", "BSM", 0),
|
||||
("RIGHT_BS1", "BSM", 0),
|
||||
("LKAS_BLOCK", "STEER_RATE"),
|
||||
("LKAS_TRACK_STATE", "STEER_RATE"),
|
||||
("HANDS_OFF_5_SECONDS", "STEER_RATE"),
|
||||
("CRZ_ACTIVE", "CRZ_CTRL"),
|
||||
("CRZ_AVAILABLE", "CRZ_CTRL"),
|
||||
("CRZ_SPEED", "CRZ_EVENTS"),
|
||||
("STANDSTILL", "PEDALS"),
|
||||
("BRAKE_ON", "PEDALS"),
|
||||
("BRAKE_PRESSURE", "BRAKE"),
|
||||
("GEAR", "GEAR"),
|
||||
("DRIVER_SEATBELT", "SEATBELT"),
|
||||
("FL", "DOORS"),
|
||||
("FR", "DOORS"),
|
||||
("BL", "DOORS"),
|
||||
("BR", "DOORS"),
|
||||
("PEDAL_GAS", "ENGINE_DATA"),
|
||||
("SPEED", "ENGINE_DATA"),
|
||||
("CTR", "CRZ_BTNS"),
|
||||
("LEFT_BS1", "BSM"),
|
||||
("RIGHT_BS1", "BSM"),
|
||||
]
|
||||
|
||||
checks += [
|
||||
|
@ -171,26 +171,26 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint in GEN1:
|
||||
signals += [
|
||||
# sig_name, sig_address, default
|
||||
("LKAS_REQUEST", "CAM_LKAS", 0),
|
||||
("CTR", "CAM_LKAS", 0),
|
||||
("ERR_BIT_1", "CAM_LKAS", 0),
|
||||
("LINE_NOT_VISIBLE", "CAM_LKAS", 0),
|
||||
("BIT_1", "CAM_LKAS", 1),
|
||||
("ERR_BIT_2", "CAM_LKAS", 0),
|
||||
("STEERING_ANGLE", "CAM_LKAS", 0),
|
||||
("ANGLE_ENABLED", "CAM_LKAS", 0),
|
||||
("CHKSUM", "CAM_LKAS", 0),
|
||||
# sig_name, sig_address
|
||||
("LKAS_REQUEST", "CAM_LKAS"),
|
||||
("CTR", "CAM_LKAS"),
|
||||
("ERR_BIT_1", "CAM_LKAS"),
|
||||
("LINE_NOT_VISIBLE", "CAM_LKAS"),
|
||||
("BIT_1", "CAM_LKAS"),
|
||||
("ERR_BIT_2", "CAM_LKAS"),
|
||||
("STEERING_ANGLE", "CAM_LKAS"),
|
||||
("ANGLE_ENABLED", "CAM_LKAS"),
|
||||
("CHKSUM", "CAM_LKAS"),
|
||||
|
||||
("LINE_VISIBLE", "CAM_LANEINFO", 0),
|
||||
("LINE_NOT_VISIBLE", "CAM_LANEINFO", 1),
|
||||
("LANE_LINES", "CAM_LANEINFO", 0),
|
||||
("BIT1", "CAM_LANEINFO", 0),
|
||||
("BIT2", "CAM_LANEINFO", 0),
|
||||
("BIT3", "CAM_LANEINFO", 0),
|
||||
("NO_ERR_BIT", "CAM_LANEINFO", 1),
|
||||
("S1", "CAM_LANEINFO", 0),
|
||||
("S1_HBEAM", "CAM_LANEINFO", 0),
|
||||
("LINE_VISIBLE", "CAM_LANEINFO"),
|
||||
("LINE_NOT_VISIBLE", "CAM_LANEINFO"),
|
||||
("LANE_LINES", "CAM_LANEINFO"),
|
||||
("BIT1", "CAM_LANEINFO"),
|
||||
("BIT2", "CAM_LANEINFO"),
|
||||
("BIT3", "CAM_LANEINFO"),
|
||||
("NO_ERR_BIT", "CAM_LANEINFO"),
|
||||
("S1", "CAM_LANEINFO"),
|
||||
("S1_HBEAM", "CAM_LANEINFO"),
|
||||
]
|
||||
|
||||
checks += [
|
||||
|
|
|
@ -121,25 +121,25 @@ class CarState(CarStateBase):
|
|||
def get_can_parser(CP):
|
||||
# this function generates lists for signal, messages and initial values
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("WHEEL_SPEED_FL", "WHEEL_SPEEDS_FRONT", 0),
|
||||
("WHEEL_SPEED_FR", "WHEEL_SPEEDS_FRONT", 0),
|
||||
("WHEEL_SPEED_RL", "WHEEL_SPEEDS_REAR", 0),
|
||||
("WHEEL_SPEED_RR", "WHEEL_SPEEDS_REAR", 0),
|
||||
# sig_name, sig_address
|
||||
("WHEEL_SPEED_FL", "WHEEL_SPEEDS_FRONT"),
|
||||
("WHEEL_SPEED_FR", "WHEEL_SPEEDS_FRONT"),
|
||||
("WHEEL_SPEED_RL", "WHEEL_SPEEDS_REAR"),
|
||||
("WHEEL_SPEED_RR", "WHEEL_SPEEDS_REAR"),
|
||||
|
||||
("STEER_ANGLE", "STEER_ANGLE_SENSOR", 0),
|
||||
("STEER_ANGLE", "STEER_ANGLE_SENSOR"),
|
||||
|
||||
("DOOR_OPEN_FR", "DOORS_LIGHTS", 1),
|
||||
("DOOR_OPEN_FL", "DOORS_LIGHTS", 1),
|
||||
("DOOR_OPEN_RR", "DOORS_LIGHTS", 1),
|
||||
("DOOR_OPEN_RL", "DOORS_LIGHTS", 1),
|
||||
("DOOR_OPEN_FR", "DOORS_LIGHTS"),
|
||||
("DOOR_OPEN_FL", "DOORS_LIGHTS"),
|
||||
("DOOR_OPEN_RR", "DOORS_LIGHTS"),
|
||||
("DOOR_OPEN_RL", "DOORS_LIGHTS"),
|
||||
|
||||
("RIGHT_BLINKER", "LIGHTS", 0),
|
||||
("LEFT_BLINKER", "LIGHTS", 0),
|
||||
("RIGHT_BLINKER", "LIGHTS"),
|
||||
("LEFT_BLINKER", "LIGHTS"),
|
||||
|
||||
("ESP_DISABLED", "ESP", 0),
|
||||
("ESP_DISABLED", "ESP"),
|
||||
|
||||
("GEAR_SHIFTER", "GEARBOX", 0),
|
||||
("GEAR_SHIFTER", "GEARBOX"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -155,26 +155,26 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint in (CAR.ROGUE, CAR.XTRAIL, CAR.ALTIMA):
|
||||
signals += [
|
||||
("USER_BRAKE_PRESSED", "DOORS_LIGHTS", 1),
|
||||
("USER_BRAKE_PRESSED", "DOORS_LIGHTS"),
|
||||
|
||||
("GAS_PEDAL", "GAS_PEDAL", 0),
|
||||
("SEATBELT_DRIVER_LATCHED", "HUD", 0),
|
||||
("SPEED_MPH", "HUD", 0),
|
||||
("GAS_PEDAL", "GAS_PEDAL"),
|
||||
("SEATBELT_DRIVER_LATCHED", "HUD"),
|
||||
("SPEED_MPH", "HUD"),
|
||||
|
||||
("PROPILOT_BUTTON", "CRUISE_THROTTLE", 0),
|
||||
("CANCEL_BUTTON", "CRUISE_THROTTLE", 0),
|
||||
("GAS_PEDAL_INVERTED", "CRUISE_THROTTLE", 0),
|
||||
("SET_BUTTON", "CRUISE_THROTTLE", 0),
|
||||
("RES_BUTTON", "CRUISE_THROTTLE", 0),
|
||||
("FOLLOW_DISTANCE_BUTTON", "CRUISE_THROTTLE", 0),
|
||||
("NO_BUTTON_PRESSED", "CRUISE_THROTTLE", 0),
|
||||
("GAS_PEDAL", "CRUISE_THROTTLE", 0),
|
||||
("USER_BRAKE_PRESSED", "CRUISE_THROTTLE", 0),
|
||||
("NEW_SIGNAL_2", "CRUISE_THROTTLE", 0),
|
||||
("GAS_PRESSED_INVERTED", "CRUISE_THROTTLE", 0),
|
||||
("unsure1", "CRUISE_THROTTLE", 0),
|
||||
("unsure2", "CRUISE_THROTTLE", 0),
|
||||
("unsure3", "CRUISE_THROTTLE", 0),
|
||||
("PROPILOT_BUTTON", "CRUISE_THROTTLE"),
|
||||
("CANCEL_BUTTON", "CRUISE_THROTTLE"),
|
||||
("GAS_PEDAL_INVERTED", "CRUISE_THROTTLE"),
|
||||
("SET_BUTTON", "CRUISE_THROTTLE"),
|
||||
("RES_BUTTON", "CRUISE_THROTTLE"),
|
||||
("FOLLOW_DISTANCE_BUTTON", "CRUISE_THROTTLE"),
|
||||
("NO_BUTTON_PRESSED", "CRUISE_THROTTLE"),
|
||||
("GAS_PEDAL", "CRUISE_THROTTLE"),
|
||||
("USER_BRAKE_PRESSED", "CRUISE_THROTTLE"),
|
||||
("NEW_SIGNAL_2", "CRUISE_THROTTLE"),
|
||||
("GAS_PRESSED_INVERTED", "CRUISE_THROTTLE"),
|
||||
("unsure1", "CRUISE_THROTTLE"),
|
||||
("unsure2", "CRUISE_THROTTLE"),
|
||||
("unsure3", "CRUISE_THROTTLE"),
|
||||
]
|
||||
|
||||
checks += [
|
||||
|
@ -185,17 +185,17 @@ class CarState(CarStateBase):
|
|||
|
||||
elif CP.carFingerprint in (CAR.LEAF, CAR.LEAF_IC):
|
||||
signals += [
|
||||
("USER_BRAKE_PRESSED", "CRUISE_THROTTLE", 1),
|
||||
("GAS_PEDAL", "CRUISE_THROTTLE", 0),
|
||||
("CRUISE_AVAILABLE", "CRUISE_THROTTLE", 0),
|
||||
("SPEED_MPH", "HUD_SETTINGS", 0),
|
||||
("SEATBELT_DRIVER_LATCHED", "SEATBELT", 0),
|
||||
("USER_BRAKE_PRESSED", "CRUISE_THROTTLE"),
|
||||
("GAS_PEDAL", "CRUISE_THROTTLE"),
|
||||
("CRUISE_AVAILABLE", "CRUISE_THROTTLE"),
|
||||
("SPEED_MPH", "HUD_SETTINGS"),
|
||||
("SEATBELT_DRIVER_LATCHED", "SEATBELT"),
|
||||
|
||||
# Copy other values, we use this to cancel
|
||||
("CANCEL_SEATBELT", "CANCEL_MSG", 0),
|
||||
("NEW_SIGNAL_1", "CANCEL_MSG", 0),
|
||||
("NEW_SIGNAL_2", "CANCEL_MSG", 0),
|
||||
("NEW_SIGNAL_3", "CANCEL_MSG", 0),
|
||||
("CANCEL_SEATBELT", "CANCEL_MSG"),
|
||||
("NEW_SIGNAL_1", "CANCEL_MSG"),
|
||||
("NEW_SIGNAL_2", "CANCEL_MSG"),
|
||||
("NEW_SIGNAL_3", "CANCEL_MSG"),
|
||||
]
|
||||
checks += [
|
||||
("BRAKE_PEDAL", 100),
|
||||
|
@ -207,9 +207,9 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint == CAR.ALTIMA:
|
||||
signals += [
|
||||
("LKAS_ENABLED", "LKAS_SETTINGS", 0),
|
||||
("CRUISE_ENABLED", "CRUISE_STATE", 0),
|
||||
("SET_SPEED", "PROPILOT_HUD", 0),
|
||||
("LKAS_ENABLED", "LKAS_SETTINGS"),
|
||||
("CRUISE_ENABLED", "CRUISE_STATE"),
|
||||
("SET_SPEED", "PROPILOT_HUD"),
|
||||
]
|
||||
checks += [
|
||||
("CRUISE_STATE", 10),
|
||||
|
@ -219,7 +219,7 @@ class CarState(CarStateBase):
|
|||
return CANParser(DBC[CP.carFingerprint]["pt"], signals, checks, 1)
|
||||
|
||||
signals += [
|
||||
("STEER_TORQUE_DRIVER", "STEER_TORQUE_SENSOR", 0),
|
||||
("STEER_TORQUE_DRIVER", "STEER_TORQUE_SENSOR"),
|
||||
]
|
||||
checks += [
|
||||
("STEER_TORQUE_SENSOR", 100),
|
||||
|
@ -233,14 +233,14 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint == CAR.ALTIMA:
|
||||
signals = [
|
||||
("DESIRED_ANGLE", "LKAS", 0),
|
||||
("SET_0x80_2", "LKAS", 0),
|
||||
("MAX_TORQUE", "LKAS", 0),
|
||||
("SET_0x80", "LKAS", 0),
|
||||
("COUNTER", "LKAS", 0),
|
||||
("LKA_ACTIVE", "LKAS", 0),
|
||||
("DESIRED_ANGLE", "LKAS"),
|
||||
("SET_0x80_2", "LKAS"),
|
||||
("MAX_TORQUE", "LKAS"),
|
||||
("SET_0x80", "LKAS"),
|
||||
("COUNTER", "LKAS"),
|
||||
("LKA_ACTIVE", "LKAS"),
|
||||
|
||||
("CRUISE_ON", "PRO_PILOT", 0),
|
||||
("CRUISE_ON", "PRO_PILOT"),
|
||||
]
|
||||
checks = [
|
||||
("LKAS", 100),
|
||||
|
@ -248,85 +248,85 @@ class CarState(CarStateBase):
|
|||
]
|
||||
else:
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("LKAS_ENABLED", "LKAS_SETTINGS", 0),
|
||||
# sig_name, sig_address
|
||||
("LKAS_ENABLED", "LKAS_SETTINGS"),
|
||||
|
||||
("CRUISE_ENABLED", "CRUISE_STATE", 0),
|
||||
("CRUISE_ENABLED", "CRUISE_STATE"),
|
||||
|
||||
("DESIRED_ANGLE", "LKAS", 0),
|
||||
("SET_0x80_2", "LKAS", 0),
|
||||
("MAX_TORQUE", "LKAS", 0),
|
||||
("SET_0x80", "LKAS", 0),
|
||||
("COUNTER", "LKAS", 0),
|
||||
("LKA_ACTIVE", "LKAS", 0),
|
||||
("DESIRED_ANGLE", "LKAS"),
|
||||
("SET_0x80_2", "LKAS"),
|
||||
("MAX_TORQUE", "LKAS"),
|
||||
("SET_0x80", "LKAS"),
|
||||
("COUNTER", "LKAS"),
|
||||
("LKA_ACTIVE", "LKAS"),
|
||||
|
||||
# Below are the HUD messages. We copy the stock message and modify
|
||||
("LARGE_WARNING_FLASHING", "PROPILOT_HUD", 0),
|
||||
("SIDE_RADAR_ERROR_FLASHING1", "PROPILOT_HUD", 0),
|
||||
("SIDE_RADAR_ERROR_FLASHING2", "PROPILOT_HUD", 0),
|
||||
("LEAD_CAR", "PROPILOT_HUD", 0),
|
||||
("LEAD_CAR_ERROR", "PROPILOT_HUD", 0),
|
||||
("FRONT_RADAR_ERROR", "PROPILOT_HUD", 0),
|
||||
("FRONT_RADAR_ERROR_FLASHING", "PROPILOT_HUD", 0),
|
||||
("SIDE_RADAR_ERROR_FLASHING3", "PROPILOT_HUD", 0),
|
||||
("LKAS_ERROR_FLASHING", "PROPILOT_HUD", 0),
|
||||
("SAFETY_SHIELD_ACTIVE", "PROPILOT_HUD", 0),
|
||||
("RIGHT_LANE_GREEN_FLASH", "PROPILOT_HUD", 0),
|
||||
("LEFT_LANE_GREEN_FLASH", "PROPILOT_HUD", 0),
|
||||
("FOLLOW_DISTANCE", "PROPILOT_HUD", 0),
|
||||
("AUDIBLE_TONE", "PROPILOT_HUD", 0),
|
||||
("SPEED_SET_ICON", "PROPILOT_HUD", 0),
|
||||
("SMALL_STEERING_WHEEL_ICON", "PROPILOT_HUD", 0),
|
||||
("unknown59", "PROPILOT_HUD", 0),
|
||||
("unknown55", "PROPILOT_HUD", 0),
|
||||
("unknown26", "PROPILOT_HUD", 0),
|
||||
("unknown28", "PROPILOT_HUD", 0),
|
||||
("unknown31", "PROPILOT_HUD", 0),
|
||||
("SET_SPEED", "PROPILOT_HUD", 0),
|
||||
("unknown43", "PROPILOT_HUD", 0),
|
||||
("unknown08", "PROPILOT_HUD", 0),
|
||||
("unknown05", "PROPILOT_HUD", 0),
|
||||
("unknown02", "PROPILOT_HUD", 0),
|
||||
("LARGE_WARNING_FLASHING", "PROPILOT_HUD"),
|
||||
("SIDE_RADAR_ERROR_FLASHING1", "PROPILOT_HUD"),
|
||||
("SIDE_RADAR_ERROR_FLASHING2", "PROPILOT_HUD"),
|
||||
("LEAD_CAR", "PROPILOT_HUD"),
|
||||
("LEAD_CAR_ERROR", "PROPILOT_HUD"),
|
||||
("FRONT_RADAR_ERROR", "PROPILOT_HUD"),
|
||||
("FRONT_RADAR_ERROR_FLASHING", "PROPILOT_HUD"),
|
||||
("SIDE_RADAR_ERROR_FLASHING3", "PROPILOT_HUD"),
|
||||
("LKAS_ERROR_FLASHING", "PROPILOT_HUD"),
|
||||
("SAFETY_SHIELD_ACTIVE", "PROPILOT_HUD"),
|
||||
("RIGHT_LANE_GREEN_FLASH", "PROPILOT_HUD"),
|
||||
("LEFT_LANE_GREEN_FLASH", "PROPILOT_HUD"),
|
||||
("FOLLOW_DISTANCE", "PROPILOT_HUD"),
|
||||
("AUDIBLE_TONE", "PROPILOT_HUD"),
|
||||
("SPEED_SET_ICON", "PROPILOT_HUD"),
|
||||
("SMALL_STEERING_WHEEL_ICON", "PROPILOT_HUD"),
|
||||
("unknown59", "PROPILOT_HUD"),
|
||||
("unknown55", "PROPILOT_HUD"),
|
||||
("unknown26", "PROPILOT_HUD"),
|
||||
("unknown28", "PROPILOT_HUD"),
|
||||
("unknown31", "PROPILOT_HUD"),
|
||||
("SET_SPEED", "PROPILOT_HUD"),
|
||||
("unknown43", "PROPILOT_HUD"),
|
||||
("unknown08", "PROPILOT_HUD"),
|
||||
("unknown05", "PROPILOT_HUD"),
|
||||
("unknown02", "PROPILOT_HUD"),
|
||||
|
||||
("NA_HIGH_ACCEL_TEMP", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("SIDE_RADAR_NA_HIGH_CABIN_TEMP", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("SIDE_RADAR_MALFUNCTION", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("LKAS_MALFUNCTION", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("FRONT_RADAR_MALFUNCTION", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("SIDE_RADAR_NA_CLEAN_REAR_CAMERA", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("NA_POOR_ROAD_CONDITIONS", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("CURRENTLY_UNAVAILABLE", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("SAFETY_SHIELD_OFF", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("FRONT_COLLISION_NA_FRONT_RADAR_OBSTRUCTION", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("PEDAL_MISSAPPLICATION_SYSTEM_ACTIVATED", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("SIDE_IMPACT_NA_RADAR_OBSTRUCTION", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("WARNING_DO_NOT_ENTER", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("SIDE_IMPACT_SYSTEM_OFF", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("SIDE_IMPACT_MALFUNCTION", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("FRONT_COLLISION_MALFUNCTION", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("SIDE_RADAR_MALFUNCTION2", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("LKAS_MALFUNCTION2", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("FRONT_RADAR_MALFUNCTION2", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("PROPILOT_NA_MSGS", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("BOTTOM_MSG", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("HANDS_ON_WHEEL_WARNING", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("WARNING_STEP_ON_BRAKE_NOW", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("PROPILOT_NA_FRONT_CAMERA_OBSTRUCTED", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("PROPILOT_NA_HIGH_CABIN_TEMP", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("WARNING_PROPILOT_MALFUNCTION", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("ACC_UNAVAILABLE_HIGH_CABIN_TEMP", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("ACC_NA_FRONT_CAMERA_IMPARED", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown07", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown10", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown15", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown23", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown19", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown31", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown32", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown46", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown61", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown55", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("unknown50", "PROPILOT_HUD_INFO_MSG", 0),
|
||||
("NA_HIGH_ACCEL_TEMP", "PROPILOT_HUD_INFO_MSG"),
|
||||
("SIDE_RADAR_NA_HIGH_CABIN_TEMP", "PROPILOT_HUD_INFO_MSG"),
|
||||
("SIDE_RADAR_MALFUNCTION", "PROPILOT_HUD_INFO_MSG"),
|
||||
("LKAS_MALFUNCTION", "PROPILOT_HUD_INFO_MSG"),
|
||||
("FRONT_RADAR_MALFUNCTION", "PROPILOT_HUD_INFO_MSG"),
|
||||
("SIDE_RADAR_NA_CLEAN_REAR_CAMERA", "PROPILOT_HUD_INFO_MSG"),
|
||||
("NA_POOR_ROAD_CONDITIONS", "PROPILOT_HUD_INFO_MSG"),
|
||||
("CURRENTLY_UNAVAILABLE", "PROPILOT_HUD_INFO_MSG"),
|
||||
("SAFETY_SHIELD_OFF", "PROPILOT_HUD_INFO_MSG"),
|
||||
("FRONT_COLLISION_NA_FRONT_RADAR_OBSTRUCTION", "PROPILOT_HUD_INFO_MSG"),
|
||||
("PEDAL_MISSAPPLICATION_SYSTEM_ACTIVATED", "PROPILOT_HUD_INFO_MSG"),
|
||||
("SIDE_IMPACT_NA_RADAR_OBSTRUCTION", "PROPILOT_HUD_INFO_MSG"),
|
||||
("WARNING_DO_NOT_ENTER", "PROPILOT_HUD_INFO_MSG"),
|
||||
("SIDE_IMPACT_SYSTEM_OFF", "PROPILOT_HUD_INFO_MSG"),
|
||||
("SIDE_IMPACT_MALFUNCTION", "PROPILOT_HUD_INFO_MSG"),
|
||||
("FRONT_COLLISION_MALFUNCTION", "PROPILOT_HUD_INFO_MSG"),
|
||||
("SIDE_RADAR_MALFUNCTION2", "PROPILOT_HUD_INFO_MSG"),
|
||||
("LKAS_MALFUNCTION2", "PROPILOT_HUD_INFO_MSG"),
|
||||
("FRONT_RADAR_MALFUNCTION2", "PROPILOT_HUD_INFO_MSG"),
|
||||
("PROPILOT_NA_MSGS", "PROPILOT_HUD_INFO_MSG"),
|
||||
("BOTTOM_MSG", "PROPILOT_HUD_INFO_MSG"),
|
||||
("HANDS_ON_WHEEL_WARNING", "PROPILOT_HUD_INFO_MSG"),
|
||||
("WARNING_STEP_ON_BRAKE_NOW", "PROPILOT_HUD_INFO_MSG"),
|
||||
("PROPILOT_NA_FRONT_CAMERA_OBSTRUCTED", "PROPILOT_HUD_INFO_MSG"),
|
||||
("PROPILOT_NA_HIGH_CABIN_TEMP", "PROPILOT_HUD_INFO_MSG"),
|
||||
("WARNING_PROPILOT_MALFUNCTION", "PROPILOT_HUD_INFO_MSG"),
|
||||
("ACC_UNAVAILABLE_HIGH_CABIN_TEMP", "PROPILOT_HUD_INFO_MSG"),
|
||||
("ACC_NA_FRONT_CAMERA_IMPARED", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown07", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown10", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown15", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown23", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown19", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown31", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown32", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown46", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown61", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown55", "PROPILOT_HUD_INFO_MSG"),
|
||||
("unknown50", "PROPILOT_HUD_INFO_MSG"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -346,19 +346,18 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint in (CAR.ROGUE, CAR.XTRAIL):
|
||||
signals += [
|
||||
("CRUISE_ON", "PRO_PILOT", 0),
|
||||
("CRUISE_ON", "PRO_PILOT"),
|
||||
]
|
||||
checks += [
|
||||
("PRO_PILOT", 100),
|
||||
]
|
||||
elif CP.carFingerprint == CAR.ALTIMA:
|
||||
signals += [
|
||||
("STEER_TORQUE_DRIVER", "STEER_TORQUE_SENSOR", 0),
|
||||
("STEER_TORQUE_DRIVER", "STEER_TORQUE_SENSOR"),
|
||||
]
|
||||
checks += [
|
||||
("STEER_TORQUE_SENSOR", 100),
|
||||
]
|
||||
return CANParser(DBC[CP.carFingerprint]["pt"], signals, checks, 0)
|
||||
|
||||
|
||||
return CANParser(DBC[CP.carFingerprint]["pt"], signals, checks, 1)
|
||||
|
|
|
@ -79,26 +79,26 @@ class CarState(CarStateBase):
|
|||
def get_can_parser(CP):
|
||||
# this function generates lists for signal, messages and initial values
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("Steer_Torque_Sensor", "Steering_Torque", 0),
|
||||
("Steering_Angle", "Steering_Torque", 0),
|
||||
("Steer_Error_1", "Steering_Torque", 0),
|
||||
("Cruise_On", "CruiseControl", 0),
|
||||
("Cruise_Activated", "CruiseControl", 0),
|
||||
("Brake_Pedal", "Brake_Pedal", 0),
|
||||
("Throttle_Pedal", "Throttle", 0),
|
||||
("LEFT_BLINKER", "Dashlights", 0),
|
||||
("RIGHT_BLINKER", "Dashlights", 0),
|
||||
("SEATBELT_FL", "Dashlights", 0),
|
||||
("FL", "Wheel_Speeds", 0),
|
||||
("FR", "Wheel_Speeds", 0),
|
||||
("RL", "Wheel_Speeds", 0),
|
||||
("RR", "Wheel_Speeds", 0),
|
||||
("DOOR_OPEN_FR", "BodyInfo", 1),
|
||||
("DOOR_OPEN_FL", "BodyInfo", 1),
|
||||
("DOOR_OPEN_RR", "BodyInfo", 1),
|
||||
("DOOR_OPEN_RL", "BodyInfo", 1),
|
||||
("Gear", "Transmission", 0),
|
||||
# sig_name, sig_address
|
||||
("Steer_Torque_Sensor", "Steering_Torque"),
|
||||
("Steering_Angle", "Steering_Torque"),
|
||||
("Steer_Error_1", "Steering_Torque"),
|
||||
("Cruise_On", "CruiseControl"),
|
||||
("Cruise_Activated", "CruiseControl"),
|
||||
("Brake_Pedal", "Brake_Pedal"),
|
||||
("Throttle_Pedal", "Throttle"),
|
||||
("LEFT_BLINKER", "Dashlights"),
|
||||
("RIGHT_BLINKER", "Dashlights"),
|
||||
("SEATBELT_FL", "Dashlights"),
|
||||
("FL", "Wheel_Speeds"),
|
||||
("FR", "Wheel_Speeds"),
|
||||
("RL", "Wheel_Speeds"),
|
||||
("RR", "Wheel_Speeds"),
|
||||
("DOOR_OPEN_FR", "BodyInfo"),
|
||||
("DOOR_OPEN_FL", "BodyInfo"),
|
||||
("DOOR_OPEN_RR", "BodyInfo"),
|
||||
("DOOR_OPEN_RL", "BodyInfo"),
|
||||
("Gear", "Transmission"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -114,10 +114,10 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.enableBsm:
|
||||
signals += [
|
||||
("L_ADJACENT", "BSD_RCTA", 0),
|
||||
("R_ADJACENT", "BSD_RCTA", 0),
|
||||
("L_APPROACHING", "BSD_RCTA", 0),
|
||||
("R_APPROACHING", "BSD_RCTA", 0),
|
||||
("L_ADJACENT", "BSD_RCTA"),
|
||||
("R_ADJACENT", "BSD_RCTA"),
|
||||
("L_APPROACHING", "BSD_RCTA"),
|
||||
("R_APPROACHING", "BSD_RCTA"),
|
||||
]
|
||||
checks += [
|
||||
("BSD_RCTA", 17),
|
||||
|
@ -125,9 +125,9 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.carFingerprint not in PREGLOBAL_CARS:
|
||||
signals += [
|
||||
("Steer_Warning", "Steering_Torque", 0),
|
||||
("Brake", "Brake_Status", 0),
|
||||
("UNITS", "Dashlights", 0),
|
||||
("Steer_Warning", "Steering_Torque"),
|
||||
("Brake", "Brake_Status"),
|
||||
("UNITS", "Dashlights"),
|
||||
]
|
||||
|
||||
checks += [
|
||||
|
@ -138,7 +138,7 @@ class CarState(CarStateBase):
|
|||
]
|
||||
else:
|
||||
signals += [
|
||||
("UNITS", "Dash_State2", 0),
|
||||
("UNITS", "Dash_State2"),
|
||||
]
|
||||
|
||||
checks += [
|
||||
|
@ -164,26 +164,26 @@ class CarState(CarStateBase):
|
|||
def get_cam_can_parser(CP):
|
||||
if CP.carFingerprint in PREGLOBAL_CARS:
|
||||
signals = [
|
||||
("Cruise_Set_Speed", "ES_DashStatus", 0),
|
||||
("Not_Ready_Startup", "ES_DashStatus", 0),
|
||||
("Cruise_Set_Speed", "ES_DashStatus"),
|
||||
("Not_Ready_Startup", "ES_DashStatus"),
|
||||
|
||||
("Cruise_Throttle", "ES_Distance", 0),
|
||||
("Signal1", "ES_Distance", 0),
|
||||
("Car_Follow", "ES_Distance", 0),
|
||||
("Signal2", "ES_Distance", 0),
|
||||
("Brake_On", "ES_Distance", 0),
|
||||
("Distance_Swap", "ES_Distance", 0),
|
||||
("Standstill", "ES_Distance", 0),
|
||||
("Signal3", "ES_Distance", 0),
|
||||
("Close_Distance", "ES_Distance", 0),
|
||||
("Signal4", "ES_Distance", 0),
|
||||
("Standstill_2", "ES_Distance", 0),
|
||||
("Cruise_Fault", "ES_Distance", 0),
|
||||
("Signal5", "ES_Distance", 0),
|
||||
("Counter", "ES_Distance", 0),
|
||||
("Signal6", "ES_Distance", 0),
|
||||
("Cruise_Button", "ES_Distance", 0),
|
||||
("Signal7", "ES_Distance", 0),
|
||||
("Cruise_Throttle", "ES_Distance"),
|
||||
("Signal1", "ES_Distance"),
|
||||
("Car_Follow", "ES_Distance"),
|
||||
("Signal2", "ES_Distance"),
|
||||
("Brake_On", "ES_Distance"),
|
||||
("Distance_Swap", "ES_Distance"),
|
||||
("Standstill", "ES_Distance"),
|
||||
("Signal3", "ES_Distance"),
|
||||
("Close_Distance", "ES_Distance"),
|
||||
("Signal4", "ES_Distance"),
|
||||
("Standstill_2", "ES_Distance"),
|
||||
("Cruise_Fault", "ES_Distance"),
|
||||
("Signal5", "ES_Distance"),
|
||||
("Counter", "ES_Distance"),
|
||||
("Signal6", "ES_Distance"),
|
||||
("Cruise_Button", "ES_Distance"),
|
||||
("Signal7", "ES_Distance"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -192,42 +192,42 @@ class CarState(CarStateBase):
|
|||
]
|
||||
else:
|
||||
signals = [
|
||||
("Cruise_Set_Speed", "ES_DashStatus", 0),
|
||||
("Conventional_Cruise", "ES_DashStatus", 0),
|
||||
("Cruise_Set_Speed", "ES_DashStatus"),
|
||||
("Conventional_Cruise", "ES_DashStatus"),
|
||||
|
||||
("Counter", "ES_Distance", 0),
|
||||
("Signal1", "ES_Distance", 0),
|
||||
("Cruise_Fault", "ES_Distance", 0),
|
||||
("Cruise_Throttle", "ES_Distance", 0),
|
||||
("Signal2", "ES_Distance", 0),
|
||||
("Car_Follow", "ES_Distance", 0),
|
||||
("Signal3", "ES_Distance", 0),
|
||||
("Cruise_Brake_Active", "ES_Distance", 0),
|
||||
("Distance_Swap", "ES_Distance", 0),
|
||||
("Cruise_EPB", "ES_Distance", 0),
|
||||
("Signal4", "ES_Distance", 0),
|
||||
("Close_Distance", "ES_Distance", 0),
|
||||
("Signal5", "ES_Distance", 0),
|
||||
("Cruise_Cancel", "ES_Distance", 0),
|
||||
("Cruise_Set", "ES_Distance", 0),
|
||||
("Cruise_Resume", "ES_Distance", 0),
|
||||
("Signal6", "ES_Distance", 0),
|
||||
("Counter", "ES_Distance"),
|
||||
("Signal1", "ES_Distance"),
|
||||
("Cruise_Fault", "ES_Distance"),
|
||||
("Cruise_Throttle", "ES_Distance"),
|
||||
("Signal2", "ES_Distance"),
|
||||
("Car_Follow", "ES_Distance"),
|
||||
("Signal3", "ES_Distance"),
|
||||
("Cruise_Brake_Active", "ES_Distance"),
|
||||
("Distance_Swap", "ES_Distance"),
|
||||
("Cruise_EPB", "ES_Distance"),
|
||||
("Signal4", "ES_Distance"),
|
||||
("Close_Distance", "ES_Distance"),
|
||||
("Signal5", "ES_Distance"),
|
||||
("Cruise_Cancel", "ES_Distance"),
|
||||
("Cruise_Set", "ES_Distance"),
|
||||
("Cruise_Resume", "ES_Distance"),
|
||||
("Signal6", "ES_Distance"),
|
||||
|
||||
("Counter", "ES_LKAS_State", 0),
|
||||
("LKAS_Alert_Msg", "ES_LKAS_State", 0),
|
||||
("Signal1", "ES_LKAS_State", 0),
|
||||
("LKAS_ACTIVE", "ES_LKAS_State", 0),
|
||||
("LKAS_Dash_State", "ES_LKAS_State", 0),
|
||||
("Signal2", "ES_LKAS_State", 0),
|
||||
("Backward_Speed_Limit_Menu", "ES_LKAS_State", 0),
|
||||
("LKAS_Left_Line_Enable", "ES_LKAS_State", 0),
|
||||
("LKAS_Left_Line_Light_Blink", "ES_LKAS_State", 0),
|
||||
("LKAS_Right_Line_Enable", "ES_LKAS_State", 0),
|
||||
("LKAS_Right_Line_Light_Blink", "ES_LKAS_State", 0),
|
||||
("LKAS_Left_Line_Visible", "ES_LKAS_State", 0),
|
||||
("LKAS_Right_Line_Visible", "ES_LKAS_State", 0),
|
||||
("LKAS_Alert", "ES_LKAS_State", 0),
|
||||
("Signal3", "ES_LKAS_State", 0),
|
||||
("Counter", "ES_LKAS_State"),
|
||||
("LKAS_Alert_Msg", "ES_LKAS_State"),
|
||||
("Signal1", "ES_LKAS_State"),
|
||||
("LKAS_ACTIVE", "ES_LKAS_State"),
|
||||
("LKAS_Dash_State", "ES_LKAS_State"),
|
||||
("Signal2", "ES_LKAS_State"),
|
||||
("Backward_Speed_Limit_Menu", "ES_LKAS_State"),
|
||||
("LKAS_Left_Line_Enable", "ES_LKAS_State"),
|
||||
("LKAS_Left_Line_Light_Blink", "ES_LKAS_State"),
|
||||
("LKAS_Right_Line_Enable", "ES_LKAS_State"),
|
||||
("LKAS_Right_Line_Light_Blink", "ES_LKAS_State"),
|
||||
("LKAS_Left_Line_Visible", "ES_LKAS_State"),
|
||||
("LKAS_Right_Line_Visible", "ES_LKAS_State"),
|
||||
("LKAS_Alert", "ES_LKAS_State"),
|
||||
("Signal3", "ES_LKAS_State"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
|
|
@ -96,64 +96,64 @@ class CarState(CarStateBase):
|
|||
@staticmethod
|
||||
def get_can_parser(CP):
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("ESP_vehicleSpeed", "ESP_B", 0),
|
||||
("DI_pedalPos", "DI_torque1", 0),
|
||||
("DI_brakePedal", "DI_torque2", 0),
|
||||
("StW_AnglHP", "STW_ANGLHP_STAT", 0),
|
||||
("StW_AnglHP_Spd", "STW_ANGLHP_STAT", 0),
|
||||
("EPAS_handsOnLevel", "EPAS_sysStatus", 0),
|
||||
("EPAS_torsionBarTorque", "EPAS_sysStatus", 0),
|
||||
("EPAS_internalSAS", "EPAS_sysStatus", 0),
|
||||
("EPAS_eacStatus", "EPAS_sysStatus", 1),
|
||||
("EPAS_eacErrorCode", "EPAS_sysStatus", 0),
|
||||
("DI_cruiseState", "DI_state", 0),
|
||||
("DI_digitalSpeed", "DI_state", 0),
|
||||
("DI_speedUnits", "DI_state", 0),
|
||||
("DI_gear", "DI_torque2", 0),
|
||||
("DOOR_STATE_FL", "GTW_carState", 1),
|
||||
("DOOR_STATE_FR", "GTW_carState", 1),
|
||||
("DOOR_STATE_RL", "GTW_carState", 1),
|
||||
("DOOR_STATE_RR", "GTW_carState", 1),
|
||||
("DOOR_STATE_FrontTrunk", "GTW_carState", 1),
|
||||
("BOOT_STATE", "GTW_carState", 1),
|
||||
("BC_indicatorLStatus", "GTW_carState", 1),
|
||||
("BC_indicatorRStatus", "GTW_carState", 1),
|
||||
("SDM_bcklDrivStatus", "SDM1", 0),
|
||||
("driverBrakeStatus", "BrakeMessage", 0),
|
||||
# sig_name, sig_address
|
||||
("ESP_vehicleSpeed", "ESP_B"),
|
||||
("DI_pedalPos", "DI_torque1"),
|
||||
("DI_brakePedal", "DI_torque2"),
|
||||
("StW_AnglHP", "STW_ANGLHP_STAT"),
|
||||
("StW_AnglHP_Spd", "STW_ANGLHP_STAT"),
|
||||
("EPAS_handsOnLevel", "EPAS_sysStatus"),
|
||||
("EPAS_torsionBarTorque", "EPAS_sysStatus"),
|
||||
("EPAS_internalSAS", "EPAS_sysStatus"),
|
||||
("EPAS_eacStatus", "EPAS_sysStatus"),
|
||||
("EPAS_eacErrorCode", "EPAS_sysStatus"),
|
||||
("DI_cruiseState", "DI_state"),
|
||||
("DI_digitalSpeed", "DI_state"),
|
||||
("DI_speedUnits", "DI_state"),
|
||||
("DI_gear", "DI_torque2"),
|
||||
("DOOR_STATE_FL", "GTW_carState"),
|
||||
("DOOR_STATE_FR", "GTW_carState"),
|
||||
("DOOR_STATE_RL", "GTW_carState"),
|
||||
("DOOR_STATE_RR", "GTW_carState"),
|
||||
("DOOR_STATE_FrontTrunk", "GTW_carState"),
|
||||
("BOOT_STATE", "GTW_carState"),
|
||||
("BC_indicatorLStatus", "GTW_carState"),
|
||||
("BC_indicatorRStatus", "GTW_carState"),
|
||||
("SDM_bcklDrivStatus", "SDM1"),
|
||||
("driverBrakeStatus", "BrakeMessage"),
|
||||
|
||||
# We copy this whole message when spamming cancel
|
||||
("SpdCtrlLvr_Stat", "STW_ACTN_RQ", 0),
|
||||
("VSL_Enbl_Rq", "STW_ACTN_RQ", 0),
|
||||
("SpdCtrlLvrStat_Inv", "STW_ACTN_RQ", 0),
|
||||
("DTR_Dist_Rq", "STW_ACTN_RQ", 0),
|
||||
("TurnIndLvr_Stat", "STW_ACTN_RQ", 0),
|
||||
("HiBmLvr_Stat", "STW_ACTN_RQ", 0),
|
||||
("WprWashSw_Psd", "STW_ACTN_RQ", 0),
|
||||
("WprWash_R_Sw_Posn_V2", "STW_ACTN_RQ", 0),
|
||||
("StW_Lvr_Stat", "STW_ACTN_RQ", 0),
|
||||
("StW_Cond_Flt", "STW_ACTN_RQ", 0),
|
||||
("StW_Cond_Psd", "STW_ACTN_RQ", 0),
|
||||
("HrnSw_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw00_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw01_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw02_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw03_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw04_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw05_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw06_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw07_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw08_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw09_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw10_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw11_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw12_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw13_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw14_Psd", "STW_ACTN_RQ", 0),
|
||||
("StW_Sw15_Psd", "STW_ACTN_RQ", 0),
|
||||
("WprSw6Posn", "STW_ACTN_RQ", 0),
|
||||
("MC_STW_ACTN_RQ", "STW_ACTN_RQ", 0),
|
||||
("CRC_STW_ACTN_RQ", "STW_ACTN_RQ", 0),
|
||||
("SpdCtrlLvr_Stat", "STW_ACTN_RQ"),
|
||||
("VSL_Enbl_Rq", "STW_ACTN_RQ"),
|
||||
("SpdCtrlLvrStat_Inv", "STW_ACTN_RQ"),
|
||||
("DTR_Dist_Rq", "STW_ACTN_RQ"),
|
||||
("TurnIndLvr_Stat", "STW_ACTN_RQ"),
|
||||
("HiBmLvr_Stat", "STW_ACTN_RQ"),
|
||||
("WprWashSw_Psd", "STW_ACTN_RQ"),
|
||||
("WprWash_R_Sw_Posn_V2", "STW_ACTN_RQ"),
|
||||
("StW_Lvr_Stat", "STW_ACTN_RQ"),
|
||||
("StW_Cond_Flt", "STW_ACTN_RQ"),
|
||||
("StW_Cond_Psd", "STW_ACTN_RQ"),
|
||||
("HrnSw_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw00_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw01_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw02_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw03_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw04_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw05_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw06_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw07_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw08_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw09_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw10_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw11_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw12_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw13_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw14_Psd", "STW_ACTN_RQ"),
|
||||
("StW_Sw15_Psd", "STW_ACTN_RQ"),
|
||||
("WprSw6Posn", "STW_ACTN_RQ"),
|
||||
("MC_STW_ACTN_RQ", "STW_ACTN_RQ"),
|
||||
("CRC_STW_ACTN_RQ", "STW_ACTN_RQ"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -175,8 +175,8 @@ class CarState(CarStateBase):
|
|||
@staticmethod
|
||||
def get_cam_can_parser(CP):
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("DAS_accState", "DAS_control", 0),
|
||||
# sig_name, sig_address
|
||||
("DAS_accState", "DAS_control"),
|
||||
]
|
||||
checks = [
|
||||
# sig_address, frequency
|
||||
|
|
|
@ -11,9 +11,9 @@ NUM_POINTS = len(RADAR_MSGS_A)
|
|||
def get_radar_can_parser(CP):
|
||||
# Status messages
|
||||
signals = [
|
||||
('RADC_HWFail', 'TeslaRadarSguInfo', 0),
|
||||
('RADC_SGUFail', 'TeslaRadarSguInfo', 0),
|
||||
('RADC_SensorDirty', 'TeslaRadarSguInfo', 0),
|
||||
('RADC_HWFail', 'TeslaRadarSguInfo'),
|
||||
('RADC_SGUFail', 'TeslaRadarSguInfo'),
|
||||
('RADC_SensorDirty', 'TeslaRadarSguInfo'),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -29,16 +29,16 @@ def get_radar_can_parser(CP):
|
|||
# There is a bunch more info in the messages,
|
||||
# but these are the only things actually used in openpilot
|
||||
signals.extend([
|
||||
('LongDist', msg_id_a, 255),
|
||||
('LongSpeed', msg_id_a, 0),
|
||||
('LatDist', msg_id_a, 0),
|
||||
('LongAccel', msg_id_a, 0),
|
||||
('Meas', msg_id_a, 0),
|
||||
('Tracked', msg_id_a, 0),
|
||||
('Index', msg_id_a, 0),
|
||||
('LongDist', msg_id_a),
|
||||
('LongSpeed', msg_id_a),
|
||||
('LatDist', msg_id_a),
|
||||
('LongAccel', msg_id_a),
|
||||
('Meas', msg_id_a),
|
||||
('Tracked', msg_id_a),
|
||||
('Index', msg_id_a),
|
||||
|
||||
('LatSpeed', msg_id_b, 0),
|
||||
('Index2', msg_id_b, 0),
|
||||
('LatSpeed', msg_id_b),
|
||||
('Index2', msg_id_b),
|
||||
])
|
||||
|
||||
checks.extend([
|
||||
|
|
|
@ -129,32 +129,32 @@ class CarState(CarStateBase):
|
|||
def get_can_parser(CP):
|
||||
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("STEER_ANGLE", "STEER_ANGLE_SENSOR", 0),
|
||||
("GEAR", "GEAR_PACKET", 0),
|
||||
("BRAKE_PRESSED", "BRAKE_MODULE", 0),
|
||||
("WHEEL_SPEED_FL", "WHEEL_SPEEDS", 0),
|
||||
("WHEEL_SPEED_FR", "WHEEL_SPEEDS", 0),
|
||||
("WHEEL_SPEED_RL", "WHEEL_SPEEDS", 0),
|
||||
("WHEEL_SPEED_RR", "WHEEL_SPEEDS", 0),
|
||||
("DOOR_OPEN_FL", "BODY_CONTROL_STATE", 1),
|
||||
("DOOR_OPEN_FR", "BODY_CONTROL_STATE", 1),
|
||||
("DOOR_OPEN_RL", "BODY_CONTROL_STATE", 1),
|
||||
("DOOR_OPEN_RR", "BODY_CONTROL_STATE", 1),
|
||||
("SEATBELT_DRIVER_UNLATCHED", "BODY_CONTROL_STATE", 1),
|
||||
("TC_DISABLED", "ESP_CONTROL", 1),
|
||||
("BRAKE_HOLD_ACTIVE", "ESP_CONTROL", 1),
|
||||
("STEER_FRACTION", "STEER_ANGLE_SENSOR", 0),
|
||||
("STEER_RATE", "STEER_ANGLE_SENSOR", 0),
|
||||
("CRUISE_ACTIVE", "PCM_CRUISE", 0),
|
||||
("CRUISE_STATE", "PCM_CRUISE", 0),
|
||||
("GAS_RELEASED", "PCM_CRUISE", 1),
|
||||
("STEER_TORQUE_DRIVER", "STEER_TORQUE_SENSOR", 0),
|
||||
("STEER_TORQUE_EPS", "STEER_TORQUE_SENSOR", 0),
|
||||
("STEER_ANGLE", "STEER_TORQUE_SENSOR", 0),
|
||||
("TURN_SIGNALS", "BLINKERS_STATE", 3), # 3 is no blinkers
|
||||
("LKA_STATE", "EPS_STATUS", 0),
|
||||
("AUTO_HIGH_BEAM", "LIGHT_STALK", 0),
|
||||
# sig_name, sig_address
|
||||
("STEER_ANGLE", "STEER_ANGLE_SENSOR"),
|
||||
("GEAR", "GEAR_PACKET"),
|
||||
("BRAKE_PRESSED", "BRAKE_MODULE"),
|
||||
("WHEEL_SPEED_FL", "WHEEL_SPEEDS"),
|
||||
("WHEEL_SPEED_FR", "WHEEL_SPEEDS"),
|
||||
("WHEEL_SPEED_RL", "WHEEL_SPEEDS"),
|
||||
("WHEEL_SPEED_RR", "WHEEL_SPEEDS"),
|
||||
("DOOR_OPEN_FL", "BODY_CONTROL_STATE"),
|
||||
("DOOR_OPEN_FR", "BODY_CONTROL_STATE"),
|
||||
("DOOR_OPEN_RL", "BODY_CONTROL_STATE"),
|
||||
("DOOR_OPEN_RR", "BODY_CONTROL_STATE"),
|
||||
("SEATBELT_DRIVER_UNLATCHED", "BODY_CONTROL_STATE"),
|
||||
("TC_DISABLED", "ESP_CONTROL"),
|
||||
("BRAKE_HOLD_ACTIVE", "ESP_CONTROL"),
|
||||
("STEER_FRACTION", "STEER_ANGLE_SENSOR"),
|
||||
("STEER_RATE", "STEER_ANGLE_SENSOR"),
|
||||
("CRUISE_ACTIVE", "PCM_CRUISE"),
|
||||
("CRUISE_STATE", "PCM_CRUISE"),
|
||||
("GAS_RELEASED", "PCM_CRUISE"),
|
||||
("STEER_TORQUE_DRIVER", "STEER_TORQUE_SENSOR"),
|
||||
("STEER_TORQUE_EPS", "STEER_TORQUE_SENSOR"),
|
||||
("STEER_ANGLE", "STEER_TORQUE_SENSOR"),
|
||||
("TURN_SIGNALS", "BLINKERS_STATE"),
|
||||
("LKA_STATE", "EPS_STATUS"),
|
||||
("AUTO_HIGH_BEAM", "LIGHT_STALK"),
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
|
|
@ -4,6 +4,7 @@ from cereal import car
|
|||
from selfdrive.car.toyota.values import NO_DSU_CAR, DBC, TSS2_CAR
|
||||
from selfdrive.car.interfaces import RadarInterfaceBase
|
||||
|
||||
|
||||
def _create_radar_can_parser(car_fingerprint):
|
||||
if car_fingerprint in TSS2_CAR:
|
||||
RADAR_A_MSGS = list(range(0x180, 0x190))
|
||||
|
@ -16,11 +17,10 @@ def _create_radar_can_parser(car_fingerprint):
|
|||
msg_b_n = len(RADAR_B_MSGS)
|
||||
|
||||
signals = list(zip(['LONG_DIST'] * msg_a_n + ['NEW_TRACK'] * msg_a_n + ['LAT_DIST'] * msg_a_n +
|
||||
['REL_SPEED'] * msg_a_n + ['VALID'] * msg_a_n + ['SCORE'] * msg_b_n,
|
||||
RADAR_A_MSGS * 5 + RADAR_B_MSGS,
|
||||
[255] * msg_a_n + [1] * msg_a_n + [0] * msg_a_n + [0] * msg_a_n + [0] * msg_a_n + [0] * msg_b_n))
|
||||
['REL_SPEED'] * msg_a_n + ['VALID'] * msg_a_n + ['SCORE'] * msg_b_n,
|
||||
RADAR_A_MSGS * 5 + RADAR_B_MSGS))
|
||||
|
||||
checks = list(zip(RADAR_A_MSGS + RADAR_B_MSGS, [20]*(msg_a_n + msg_b_n)))
|
||||
checks = list(zip(RADAR_A_MSGS + RADAR_B_MSGS, [20] * (msg_a_n + msg_b_n)))
|
||||
|
||||
return CANParser(DBC[car_fingerprint]['radar'], signals, checks, 1)
|
||||
|
||||
|
|
|
@ -149,48 +149,48 @@ class CarState(CarStateBase):
|
|||
def get_can_parser(CP):
|
||||
# this function generates lists for signal, messages and initial values
|
||||
signals = [
|
||||
# sig_name, sig_address, default
|
||||
("LWI_Lenkradwinkel", "LWI_01", 0), # Absolute steering angle
|
||||
("LWI_VZ_Lenkradwinkel", "LWI_01", 0), # Steering angle sign
|
||||
("LWI_Lenkradw_Geschw", "LWI_01", 0), # Absolute steering rate
|
||||
("LWI_VZ_Lenkradw_Geschw", "LWI_01", 0), # Steering rate sign
|
||||
("ESP_VL_Radgeschw_02", "ESP_19", 0), # ABS wheel speed, front left
|
||||
("ESP_VR_Radgeschw_02", "ESP_19", 0), # ABS wheel speed, front right
|
||||
("ESP_HL_Radgeschw_02", "ESP_19", 0), # ABS wheel speed, rear left
|
||||
("ESP_HR_Radgeschw_02", "ESP_19", 0), # ABS wheel speed, rear right
|
||||
("ESP_Gierrate", "ESP_02", 0), # Absolute yaw rate
|
||||
("ESP_VZ_Gierrate", "ESP_02", 0), # Yaw rate sign
|
||||
("ZV_FT_offen", "Gateway_72", 0), # Door open, driver
|
||||
("ZV_BT_offen", "Gateway_72", 0), # Door open, passenger
|
||||
("ZV_HFS_offen", "Gateway_72", 0), # Door open, rear left
|
||||
("ZV_HBFS_offen", "Gateway_72", 0), # Door open, rear right
|
||||
("ZV_HD_offen", "Gateway_72", 0), # Trunk or hatch open
|
||||
("Comfort_Signal_Left", "Blinkmodi_02", 0), # Left turn signal including comfort blink interval
|
||||
("Comfort_Signal_Right", "Blinkmodi_02", 0), # Right turn signal including comfort blink interval
|
||||
("AB_Gurtschloss_FA", "Airbag_02", 0), # Seatbelt status, driver
|
||||
("AB_Gurtschloss_BF", "Airbag_02", 0), # Seatbelt status, passenger
|
||||
("ESP_Fahrer_bremst", "ESP_05", 0), # Brake pedal pressed
|
||||
("ESP_Bremsdruck", "ESP_05", 0), # Brake pressure applied
|
||||
("MO_Fahrpedalrohwert_01", "Motor_20", 0), # Accelerator pedal value
|
||||
("EPS_Lenkmoment", "LH_EPS_03", 0), # Absolute driver torque input
|
||||
("EPS_VZ_Lenkmoment", "LH_EPS_03", 0), # Driver torque input sign
|
||||
("EPS_HCA_Status", "LH_EPS_03", 3), # EPS HCA control status
|
||||
("ESP_Tastung_passiv", "ESP_21", 0), # Stability control disabled
|
||||
("ESP_Haltebestaetigung", "ESP_21", 0), # ESP hold confirmation
|
||||
("KBI_MFA_v_Einheit_02", "Einheiten_01", 0), # MPH vs KMH speed display
|
||||
("KBI_Handbremse", "Kombi_01", 0), # Manual handbrake applied
|
||||
("TSK_Status", "TSK_06", 0), # ACC engagement status from drivetrain coordinator
|
||||
("GRA_Hauptschalter", "GRA_ACC_01", 0), # ACC button, on/off
|
||||
("GRA_Abbrechen", "GRA_ACC_01", 0), # ACC button, cancel
|
||||
("GRA_Tip_Setzen", "GRA_ACC_01", 0), # ACC button, set
|
||||
("GRA_Tip_Hoch", "GRA_ACC_01", 0), # ACC button, increase or accel
|
||||
("GRA_Tip_Runter", "GRA_ACC_01", 0), # ACC button, decrease or decel
|
||||
("GRA_Tip_Wiederaufnahme", "GRA_ACC_01", 0), # ACC button, resume
|
||||
("GRA_Verstellung_Zeitluecke", "GRA_ACC_01", 0), # ACC button, time gap adj
|
||||
("GRA_Typ_Hauptschalter", "GRA_ACC_01", 0), # ACC main button type
|
||||
("GRA_Tip_Stufe_2", "GRA_ACC_01", 0), # unknown related to stalk type
|
||||
("GRA_ButtonTypeInfo", "GRA_ACC_01", 0), # unknown related to stalk type
|
||||
("COUNTER", "GRA_ACC_01", 0), # GRA_ACC_01 CAN message counter
|
||||
# sig_name, sig_address
|
||||
("LWI_Lenkradwinkel", "LWI_01"), # Absolute steering angle
|
||||
("LWI_VZ_Lenkradwinkel", "LWI_01"), # Steering angle sign
|
||||
("LWI_Lenkradw_Geschw", "LWI_01"), # Absolute steering rate
|
||||
("LWI_VZ_Lenkradw_Geschw", "LWI_01"), # Steering rate sign
|
||||
("ESP_VL_Radgeschw_02", "ESP_19"), # ABS wheel speed, front left
|
||||
("ESP_VR_Radgeschw_02", "ESP_19"), # ABS wheel speed, front right
|
||||
("ESP_HL_Radgeschw_02", "ESP_19"), # ABS wheel speed, rear left
|
||||
("ESP_HR_Radgeschw_02", "ESP_19"), # ABS wheel speed, rear right
|
||||
("ESP_Gierrate", "ESP_02"), # Absolute yaw rate
|
||||
("ESP_VZ_Gierrate", "ESP_02"), # Yaw rate sign
|
||||
("ZV_FT_offen", "Gateway_72"), # Door open, driver
|
||||
("ZV_BT_offen", "Gateway_72"), # Door open, passenger
|
||||
("ZV_HFS_offen", "Gateway_72"), # Door open, rear left
|
||||
("ZV_HBFS_offen", "Gateway_72"), # Door open, rear right
|
||||
("ZV_HD_offen", "Gateway_72"), # Trunk or hatch open
|
||||
("Comfort_Signal_Left", "Blinkmodi_02"), # Left turn signal including comfort blink interval
|
||||
("Comfort_Signal_Right", "Blinkmodi_02"), # Right turn signal including comfort blink interval
|
||||
("AB_Gurtschloss_FA", "Airbag_02"), # Seatbelt status, driver
|
||||
("AB_Gurtschloss_BF", "Airbag_02"), # Seatbelt status, passenger
|
||||
("ESP_Fahrer_bremst", "ESP_05"), # Brake pedal pressed
|
||||
("ESP_Bremsdruck", "ESP_05"), # Brake pressure applied
|
||||
("MO_Fahrpedalrohwert_01", "Motor_20"), # Accelerator pedal value
|
||||
("EPS_Lenkmoment", "LH_EPS_03"), # Absolute driver torque input
|
||||
("EPS_VZ_Lenkmoment", "LH_EPS_03"), # Driver torque input sign
|
||||
("EPS_HCA_Status", "LH_EPS_03"), # EPS HCA control status
|
||||
("ESP_Tastung_passiv", "ESP_21"), # Stability control disabled
|
||||
("ESP_Haltebestaetigung", "ESP_21"), # ESP hold confirmation
|
||||
("KBI_MFA_v_Einheit_02", "Einheiten_01"), # MPH vs KMH speed display
|
||||
("KBI_Handbremse", "Kombi_01"), # Manual handbrake applied
|
||||
("TSK_Status", "TSK_06"), # ACC engagement status from drivetrain coordinator
|
||||
("GRA_Hauptschalter", "GRA_ACC_01"), # ACC button, on/off
|
||||
("GRA_Abbrechen", "GRA_ACC_01"), # ACC button, cancel
|
||||
("GRA_Tip_Setzen", "GRA_ACC_01"), # ACC button, set
|
||||
("GRA_Tip_Hoch", "GRA_ACC_01"), # ACC button, increase or accel
|
||||
("GRA_Tip_Runter", "GRA_ACC_01"), # ACC button, decrease or decel
|
||||
("GRA_Tip_Wiederaufnahme", "GRA_ACC_01"), # ACC button, resume
|
||||
("GRA_Verstellung_Zeitluecke", "GRA_ACC_01"), # ACC button, time gap adj
|
||||
("GRA_Typ_Hauptschalter", "GRA_ACC_01"), # ACC main button type
|
||||
("GRA_Tip_Stufe_2", "GRA_ACC_01"), # unknown related to stalk type
|
||||
("GRA_ButtonTypeInfo", "GRA_ACC_01"), # unknown related to stalk type
|
||||
("COUNTER", "GRA_ACC_01"), # GRA_ACC_01 CAN message counter
|
||||
]
|
||||
|
||||
checks = [
|
||||
|
@ -212,14 +212,14 @@ class CarState(CarStateBase):
|
|||
]
|
||||
|
||||
if CP.transmissionType == TransmissionType.automatic:
|
||||
signals += [("GE_Fahrstufe", "Getriebe_11", 0)] # Auto trans gear selector position
|
||||
signals += [("GE_Fahrstufe", "Getriebe_11")] # Auto trans gear selector position
|
||||
checks += [("Getriebe_11", 20)] # From J743 Auto transmission control module
|
||||
elif CP.transmissionType == TransmissionType.direct:
|
||||
signals += [("GearPosition", "EV_Gearshift", 0)] # EV gear selector position
|
||||
signals += [("GearPosition", "EV_Gearshift")] # EV gear selector position
|
||||
checks += [("EV_Gearshift", 10)] # From J??? unknown EV control module
|
||||
elif CP.transmissionType == TransmissionType.manual:
|
||||
signals += [("MO_Kuppl_schalter", "Motor_14", 0), # Clutch switch
|
||||
("BCM1_Rueckfahrlicht_Schalter", "Gateway_72", 0)] # Reverse light from BCM
|
||||
signals += [("MO_Kuppl_schalter", "Motor_14"), # Clutch switch
|
||||
("BCM1_Rueckfahrlicht_Schalter", "Gateway_72")] # Reverse light from BCM
|
||||
checks += [("Motor_14", 10)] # From J623 Engine control module
|
||||
|
||||
if CP.networkLocation == NetworkLocation.fwdCamera:
|
||||
|
@ -240,12 +240,12 @@ class CarState(CarStateBase):
|
|||
|
||||
if CP.networkLocation == NetworkLocation.fwdCamera:
|
||||
signals += [
|
||||
# sig_name, sig_address, default
|
||||
("LDW_SW_Warnung_links", "LDW_02", 0), # Blind spot in warning mode on left side due to lane departure
|
||||
("LDW_SW_Warnung_rechts", "LDW_02", 0), # Blind spot in warning mode on right side due to lane departure
|
||||
("LDW_Seite_DLCTLC", "LDW_02", 0), # Direction of most likely lane departure (left or right)
|
||||
("LDW_DLC", "LDW_02", 0), # Lane departure, distance to line crossing
|
||||
("LDW_TLC", "LDW_02", 0), # Lane departure, time to line crossing
|
||||
# sig_name, sig_address
|
||||
("LDW_SW_Warnung_links", "LDW_02"), # Blind spot in warning mode on left side due to lane departure
|
||||
("LDW_SW_Warnung_rechts", "LDW_02"), # Blind spot in warning mode on right side due to lane departure
|
||||
("LDW_Seite_DLCTLC", "LDW_02"), # Direction of most likely lane departure (left or right)
|
||||
("LDW_DLC", "LDW_02"), # Lane departure, distance to line crossing
|
||||
("LDW_TLC", "LDW_02"), # Lane departure, time to line crossing
|
||||
]
|
||||
checks += [
|
||||
# sig_address, frequency
|
||||
|
@ -264,20 +264,20 @@ class CarState(CarStateBase):
|
|||
class MqbExtraSignals:
|
||||
# Additional signal and message lists for optional or bus-portable controllers
|
||||
fwd_radar_signals = [
|
||||
("ACC_Wunschgeschw", "ACC_02", 0), # ACC set speed
|
||||
("AWV2_Freigabe", "ACC_10", 0), # FCW brake jerk release
|
||||
("ANB_Teilbremsung_Freigabe", "ACC_10", 0), # AEB partial braking release
|
||||
("ANB_Zielbremsung_Freigabe", "ACC_10", 0), # AEB target braking release
|
||||
("ACC_Wunschgeschw", "ACC_02"), # ACC set speed
|
||||
("AWV2_Freigabe", "ACC_10"), # FCW brake jerk release
|
||||
("ANB_Teilbremsung_Freigabe", "ACC_10"), # AEB partial braking release
|
||||
("ANB_Zielbremsung_Freigabe", "ACC_10"), # AEB target braking release
|
||||
]
|
||||
fwd_radar_checks = [
|
||||
("ACC_10", 50), # From J428 ACC radar control module
|
||||
("ACC_02", 17), # From J428 ACC radar control module
|
||||
]
|
||||
bsm_radar_signals = [
|
||||
("SWA_Infostufe_SWA_li", "SWA_01", 0), # Blind spot object info, left
|
||||
("SWA_Warnung_SWA_li", "SWA_01", 0), # Blind spot object warning, left
|
||||
("SWA_Infostufe_SWA_re", "SWA_01", 0), # Blind spot object info, right
|
||||
("SWA_Warnung_SWA_re", "SWA_01", 0), # Blind spot object warning, right
|
||||
("SWA_Infostufe_SWA_li", "SWA_01"), # Blind spot object info, left
|
||||
("SWA_Warnung_SWA_li", "SWA_01"), # Blind spot object warning, left
|
||||
("SWA_Infostufe_SWA_re", "SWA_01"), # Blind spot object info, right
|
||||
("SWA_Warnung_SWA_re", "SWA_01"), # Blind spot object warning, right
|
||||
]
|
||||
bsm_radar_checks = [
|
||||
("SWA_01", 20), # From J1086 Lane Change Assist
|
||||
|
|
|
@ -1 +1 @@
|
|||
498e43b0cc062291ec159d7f09b69d9f7024aeca
|
||||
f0d37f9fec3d36fef37df15f3865c3da068253c8
|
Loading…
Reference in New Issue