VW MQB: Cleanup, prep for J533 gateway integration (#20997)

* Refactor and clean up messages and signals

* Reenable checks[] enforcement

* Remove unused message check[]

* Comment touchup

* Make signal table names correct and consistent

* Refactor MqbExtraSignals for clarity
pull/21001/head
Jason Young 4 years ago committed by GitHub
parent 833644ad45
commit 591eaa1cbc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 53
      selfdrive/car/volkswagen/carstate.py

@ -186,11 +186,6 @@ class CarState(CarStateBase):
("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
("TSK_Fahrzeugmasse_02", "Motor_16", 0), # Estimated vehicle mass from drivetrain coordinator
("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
("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
@ -211,31 +206,17 @@ class CarState(CarStateBase):
("ESP_19", 100), # From J104 ABS/ESP controller
("ESP_05", 50), # From J104 ABS/ESP controller
("ESP_21", 50), # From J104 ABS/ESP controller
("ACC_10", 50), # From J428 ACC radar control module
("Motor_20", 50), # From J623 Engine control module
("TSK_06", 50), # From J623 Engine control module
("ESP_02", 50),
("GRA_ACC_01", 33), # From J??? steering wheel control buttons
("ACC_02", 17), # From J428 ACC radar control module
("ESP_02", 50), # From J104 ABS/ESP controller
("GRA_ACC_01", 33), # From J533 CAN gateway (via LIN from steering wheel controls)
("Gateway_72", 10), # From J533 CAN gateway (aggregated data)
("Motor_14", 10), # From J623 Engine control module
("Airbag_02", 5), # From J234 Airbag control module
("Kombi_01", 2), # From J285 Instrument cluster
("Motor_16", 2), # From J623 Engine control module
("Einheiten_01", 1), # From J??? not known if gateway, cluster, or BCM
]
if CP.enableBsm:
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
]
checks += [
("SWA_01", 20),
]
if CP.transmissionType == TransmissionType.automatic:
signals += [("GE_Fahrstufe", "Getriebe_11", 0)] # Auto trans gear selector position
checks += [("Getriebe_11", 20)] # From J743 Auto transmission control module
@ -247,6 +228,14 @@ class CarState(CarStateBase):
("BCM1_Rueckfahrlicht_Schalter", "Gateway_72", 0)] # Reverse light from BCM
checks += [("Motor_14", 10)] # From J623 Engine control module
# TODO: Detect ACC radar bus location
signals += MqbExtraSignals.fwd_radar_signals
checks += MqbExtraSignals.fwd_radar_checks
# TODO: Detect BSM radar bus location
if CP.enableBsm:
signals += MqbExtraSignals.bsm_radar_signals
checks += MqbExtraSignals.bsm_radar_checks
return CANParser(DBC[CP.carFingerprint]['pt'], signals, checks, CANBUS.pt)
@staticmethod
@ -267,3 +256,25 @@ class CarState(CarStateBase):
]
return CANParser(DBC[CP.carFingerprint]['pt'], signals, checks, CANBUS.cam)
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
]
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
]
bsm_radar_checks = [
("SWA_01", 20), # From J1086 Lane Change Assist
]

Loading…
Cancel
Save