From 95e2bcb9091f1901c53dd79151db7ca8f5090aec Mon Sep 17 00:00:00 2001 From: Willem Melching Date: Wed, 23 Jun 2021 15:48:40 +0200 Subject: [PATCH] VW: put back DBC dict (#21369) --- selfdrive/car/volkswagen/carcontroller.py | 4 ++-- selfdrive/car/volkswagen/carstate.py | 8 ++++---- selfdrive/car/volkswagen/values.py | 8 +++++++- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/selfdrive/car/volkswagen/carcontroller.py b/selfdrive/car/volkswagen/carcontroller.py index 59702d8c9c..d816ba3974 100644 --- a/selfdrive/car/volkswagen/carcontroller.py +++ b/selfdrive/car/volkswagen/carcontroller.py @@ -1,7 +1,7 @@ from cereal import car from selfdrive.car import apply_std_steer_torque_limits from selfdrive.car.volkswagen import volkswagencan -from selfdrive.car.volkswagen.values import DBC, CANBUS, MQB_LDW_MESSAGES, BUTTON_STATES, CarControllerParams as P +from selfdrive.car.volkswagen.values import DBC_FILES, CANBUS, MQB_LDW_MESSAGES, BUTTON_STATES, CarControllerParams as P from opendbc.can.packer import CANPacker VisualAlert = car.CarControl.HUDControl.VisualAlert @@ -10,7 +10,7 @@ class CarController(): def __init__(self, dbc_name, CP, VM): self.apply_steer_last = 0 - self.packer_pt = CANPacker(DBC.mqb) + self.packer_pt = CANPacker(DBC_FILES.mqb) self.hcaSameTorqueCount = 0 self.hcaEnabledFrameCount = 0 diff --git a/selfdrive/car/volkswagen/carstate.py b/selfdrive/car/volkswagen/carstate.py index 7549eb7466..ec3fc53e3c 100644 --- a/selfdrive/car/volkswagen/carstate.py +++ b/selfdrive/car/volkswagen/carstate.py @@ -4,12 +4,12 @@ from selfdrive.config import Conversions as CV from selfdrive.car.interfaces import CarStateBase from opendbc.can.parser import CANParser from opendbc.can.can_define import CANDefine -from selfdrive.car.volkswagen.values import DBC, CANBUS, TransmissionType, GearShifter, BUTTON_STATES, CarControllerParams +from selfdrive.car.volkswagen.values import DBC_FILES, CANBUS, TransmissionType, GearShifter, BUTTON_STATES, CarControllerParams class CarState(CarStateBase): def __init__(self, CP): super().__init__(CP) - can_define = CANDefine(DBC.mqb) + can_define = CANDefine(DBC_FILES.mqb) if CP.transmissionType == TransmissionType.automatic: self.shifter_values = can_define.dv["Getriebe_11"]["GE_Fahrstufe"] elif CP.transmissionType == TransmissionType.direct: @@ -239,7 +239,7 @@ class CarState(CarStateBase): signals += MqbExtraSignals.bsm_radar_signals checks += MqbExtraSignals.bsm_radar_checks - return CANParser(DBC.mqb, signals, checks, CANBUS.pt) + return CANParser(DBC_FILES.mqb, signals, checks, CANBUS.pt) @staticmethod def get_cam_can_parser(CP): @@ -258,7 +258,7 @@ class CarState(CarStateBase): ("LDW_02", 10) # From R242 Driver assistance camera ] - return CANParser(DBC.mqb, signals, checks, CANBUS.cam) + return CANParser(DBC_FILES.mqb, signals, checks, CANBUS.cam) class MqbExtraSignals: # Additional signal and message lists for optional or bus-portable controllers diff --git a/selfdrive/car/volkswagen/values.py b/selfdrive/car/volkswagen/values.py index bd3eebd834..cc5f352874 100644 --- a/selfdrive/car/volkswagen/values.py +++ b/selfdrive/car/volkswagen/values.py @@ -1,6 +1,10 @@ # flake8: noqa +from collections import defaultdict +from typing import Dict + from cereal import car +from selfdrive.car import dbc_dict Ecu = car.CarParams.Ecu class CarControllerParams: @@ -25,9 +29,11 @@ class CANBUS: pt = 0 cam = 2 -class DBC: +class DBC_FILES: mqb = "vw_mqb_2010" # Used for all cars with MQB-style CAN messaging +DBC = defaultdict(lambda: dbc_dict(DBC_FILES.mqb, None)) # type: Dict[str, Dict[str, str]] + TransmissionType = car.CarParams.TransmissionType GearShifter = car.CarState.GearShifter