move Lexus to info dict and make int enum

pull/23762/head
Shane Smiskol 3 years ago
parent 8aa896d9bb
commit 92da9bcc63
  1. 17
      selfdrive/car/__init__.py
  2. 152
      selfdrive/car/toyota/values.py

@ -7,22 +7,7 @@ from common.numpy_fast import clip
# kg of standard extra cargo to count for drive, gas, etc... # kg of standard extra cargo to count for drive, gas, etc...
STD_CARGO_KG = 136. STD_CARGO_KG = 136.
CarInfo = namedtuple('CarInfo', ['years', 'supported_package'], defaults=('All',)) CarInfo = namedtuple('CarInfo', ['name', 'years', 'supported_package'], defaults=('All',))
# class CarInfo:
# def __init__(self, fingerprint, years, package=None):
# self.fingerprint = fingerprint
# self.years = years
# if package is None:
# package = 'All'
# self.package = package
#
# def __eq__(self, other):
# return self.fingerprint == other
#
# def __hash__(self):
# return hash(self.fingerprint)
def gen_empty_fingerprint(): def gen_empty_fingerprint():

@ -26,79 +26,95 @@ class ToyotaFlags(IntFlag):
class CAR(Enum): class CAR(Enum):
# Toyota # Toyota
ALPHARD_TSS2 = "Toyota Alphard 2020" ALPHARD_TSS2 = 0
AVALON = "Toyota Avalon 2016" AVALON = 1
AVALON_2019 = "Toyota Avalon 2019" AVALON_2019 = 2
AVALONH_2019 = "Toyota Avalon Hybrid 2019" AVALONH_2019 = 3
AVALON_TSS2 = "Toyota Avalon 2022" AVALON_TSS2 = 4
CAMRY = "Toyota Camry 2018" CAMRY = 5
CAMRYH = "Toyota Camry Hybrid 2018" CAMRYH = 6
CAMRY_TSS2 = "Toyota Camry 2021" # TSS 2.5 CAMRY_TSS2 = 7
CAMRYH_TSS2 = "Toyota Camry Hybrid 2021" CAMRYH_TSS2 = 8
CHR = "Toyota C-HR 2018" CHR = 9
CHRH = "Toyota C-HR Hybrid 2018" CHRH = 10
COROLLA = "Toyota Corolla 2017" COROLLA = 11
COROLLA_TSS2 = "Toyota Corolla TSS2 2019" COROLLA_TSS2 = 12
# LSS2 Lexus UX Hybrid is same as a TSS2 Corolla Hybrid COROLLAH_TSS2 = 13
COROLLAH_TSS2 = "Toyota Corolla Hybrid TSS2 2019" HIGHLANDER = 14
HIGHLANDER = "Toyota Highlander 2017" # TODO: don't change fingerprint HIGHLANDER_TSS2 = 15
HIGHLANDER_TSS2 = "Toyota Highlander 2020" HIGHLANDERH = 16
HIGHLANDERH = "Toyota Highlander Hybrid 2018" HIGHLANDERH_TSS2 = 17
HIGHLANDERH_TSS2 = "Toyota Highlander Hybrid 2020" PRIUS = 18
PRIUS = "Toyota Prius 2017" PRIUS_V = 19
PRIUS_V = "Toyota Prius v 2017" PRIUS_TSS2 = 20
PRIUS_TSS2 = "Toyota Prius TSS2 2021" RAV4 = 21
RAV4 = "Toyota RAV4 2017" RAV4H = 22
RAV4H = "Toyota RAV4 Hybrid 2017" RAV4_TSS2 = 23
RAV4_TSS2 = "Toyota RAV4 2019" RAV4H_TSS2 = 24
RAV4H_TSS2 = "Toyota RAV4 Hybrid 2019" MIRAI = 25
MIRAI = "Toyota Mirai 2021" # TSS 2.5 SIENNA = 26
SIENNA = "Toyota Sienna 2018"
# Lexus # Lexus
LEXUS_CTH = "Lexus CT Hybrid 2018" LEXUS_CTH = 27
LEXUS_ESH = "Lexus ES Hybrid 2018" LEXUS_ESH = 28
LEXUS_ES_TSS2 = "Lexus ES 2019" LEXUS_ES_TSS2 = 29
LEXUS_ESH_TSS2 = "Lexus ES Hybrid 2019" LEXUS_ESH_TSS2 = 30
LEXUS_IS = "Lexus IS 2018" LEXUS_IS = 31
LEXUS_NX = "Lexus NX 2018" LEXUS_NX = 32
LEXUS_NXH = "Lexus NX Hybrid 2018" LEXUS_NXH = 33
LEXUS_NX_TSS2 = "Lexus NX 2020" LEXUS_NX_TSS2 = 33
LEXUS_RC = "Lexus RC 2020" LEXUS_RC = 34
LEXUS_RX = "Lexus RX 2016" LEXUS_RX = 35
LEXUS_RXH = "Lexus RX Hybrid 2017" LEXUS_RXH = 36
LEXUS_RX_TSS2 = "Lexus RX 2020" LEXUS_RX_TSS2 = 37
LEXUS_RXH_TSS2 = "Lexus RX Hybrid 2020" LEXUS_RXH_TSS2 = 38
CAR_INFO = { CAR_INFO = {
CAR.ALPHARD_TSS2: CarInfo({2019, 2020}), # Toyota
CAR.AVALON: CarInfo({2016, 2017, 2018, 2019, 2020, 2021}, 'TSS-P'), CAR.ALPHARD_TSS2: CarInfo("Toyota Alphard 2020", {2019, 2020}),
CAR.AVALON_2019: CarInfo({2022}, 'TSS-P'), CAR.AVALON: CarInfo("Toyota Avalon 2016", {2016, 2017, 2018, 2019, 2020, 2021}, 'TSS-P'),
CAR.AVALONH_2019: CarInfo({2019, 2020, 2021}, 'TSS-P'), CAR.AVALON_2019: CarInfo("Toyota Avalon 2019", {2022}, 'TSS-P'),
CAR.AVALON_TSS2: CarInfo({2022}), CAR.AVALONH_2019: CarInfo("Toyota Avalon Hybrid 2019", {2019, 2020, 2021}, 'TSS-P'),
CAR.CAMRY: CarInfo({2018, 2019, 2020}), CAR.AVALON_TSS2: CarInfo("Toyota Avalon 2022", {2022}),
CAR.CAMRYH: CarInfo({2018, 2019, 2020}), CAR.CAMRY: CarInfo("Toyota Camry 2018", {2018, 2019, 2020}),
CAR.CAMRY_TSS2: CarInfo({2021, 2022}), CAR.CAMRYH: CarInfo("Toyota Camry Hybrid 2018", {2018, 2019, 2020}),
CAR.CAMRYH_TSS2: CarInfo({2021, 2022}), CAR.CAMRY_TSS2: CarInfo("Toyota Camry 2021", {2021, 2022}), # TSS 2.5
CAR.CHR: CarInfo({2017, 2018, 2019, 2020, 2021}), CAR.CAMRYH_TSS2: CarInfo("Toyota Camry Hybrid 2021", {2021, 2022}),
CAR.CHRH: CarInfo({2017, 2018, 2019}), CAR.CHR: CarInfo("Toyota C-HR 2018", {2017, 2018, 2019, 2020, 2021}),
CAR.COROLLA: CarInfo({2017, 2018, 2019}), CAR.CHRH: CarInfo("Toyota C-HR Hybrid 2018", {2017, 2018, 2019}),
CAR.COROLLA_TSS2: CarInfo({2020, 2021, 2022}), CAR.COROLLA: CarInfo("Toyota Corolla 2017", {2017, 2018, 2019}),
CAR.COROLLAH_TSS2: CarInfo({2020, 2021, 2022}), CAR.COROLLA_TSS2: CarInfo("Toyota Corolla TSS2 2019", {2020, 2021, 2022}),
CAR.HIGHLANDER: CarInfo({2017, 2018, 2019}), # LSS2 Lexus UX Hybrid is same as a TSS2 Corolla Hybrid
CAR.HIGHLANDER_TSS2: CarInfo({2020, 2021, 2022}), CAR.COROLLAH_TSS2: CarInfo("Toyota Corolla Hybrid TSS2 2019", {2020, 2021, 2022}),
CAR.HIGHLANDERH: CarInfo({2017, 2018, 2019}), CAR.HIGHLANDER: CarInfo("Toyota Highlander 2017", {2017, 2018, 2019}),
CAR.HIGHLANDERH_TSS2: CarInfo({2020, 2021, 2022}), CAR.HIGHLANDER_TSS2: CarInfo("Toyota Highlander 2020", {2020, 2021, 2022}),
CAR.PRIUS: CarInfo({2016, 2017, 2018, 2019, 2020}, 'TSS-P'), # TODO: Prius Prime is lost here (supports All packages) CAR.HIGHLANDERH: CarInfo("Toyota Highlander Hybrid 2018", {2017, 2018, 2019}),
CAR.PRIUS_V: CarInfo({2017}, 'TSS-P'), CAR.HIGHLANDERH_TSS2: CarInfo("Toyota Highlander Hybrid 2020", {2020, 2021, 2022}),
CAR.PRIUS_TSS2: CarInfo({2021, 2022}), CAR.PRIUS: CarInfo("Toyota Prius 2017", {2016, 2017, 2018, 2019, 2020}, 'TSS-P'), # TODO: Prius Prime is lost here (supports All packages)
CAR.RAV4: CarInfo({2016, 2017, 2018}, 'TSS-P'), CAR.PRIUS_V: CarInfo("Toyota Prius v 2017", {2017}, 'TSS-P'),
CAR.RAV4H: CarInfo({2016, 2017, 2018}, 'TSS-P'), CAR.PRIUS_TSS2: CarInfo("Toyota Prius Prime TSS2 2021", {2021, 2022}),
CAR.RAV4_TSS2: CarInfo({2019, 2020, 2021}), CAR.RAV4: CarInfo("Toyota RAV4 2017", {2016, 2017, 2018}, 'TSS-P'),
CAR.RAV4H_TSS2: CarInfo({2019, 2020, 2021}), CAR.RAV4H: CarInfo("Toyota RAV4 Hybrid 2017", {2016, 2017, 2018}, 'TSS-P'),
CAR.MIRAI: CarInfo({2021}), CAR.RAV4_TSS2: CarInfo("Toyota RAV4 2019", {2019, 2020, 2021}),
CAR.SIENNA: CarInfo({2018, 2019, 2020}), CAR.RAV4H_TSS2: CarInfo("Toyota RAV4 Hybrid 2019", {2019, 2020, 2021}),
CAR.MIRAI: CarInfo("Toyota Mirai 2021", {2021}), # TSS 2.5
CAR.SIENNA: CarInfo("Toyota Sienna 2018", {2018, 2019, 2020}),
# Lexus
CAR.LEXUS_CTH: CarInfo("Lexus CT Hybrid 2018", {2017, 2018}, 'LSS'),
CAR.LEXUS_ESH: CarInfo("Lexus ES Hybrid 2018", {2017, 2018}, 'LSS'),
CAR.LEXUS_ES_TSS2: CarInfo("Lexus ES 2019", {2019, 2020, 2021}),
CAR.LEXUS_ESH_TSS2: CarInfo("Lexus ES Hybrid 2019", {2019, 2020, 2021}),
CAR.LEXUS_IS: CarInfo("Lexus IS 2018", {2017, 2018, 2019}),
CAR.LEXUS_NX: CarInfo("Lexus NX 2018", {2018, 2019}),
CAR.LEXUS_NXH: CarInfo("Lexus NX Hybrid 2018", {2018, 2019}),
CAR.LEXUS_NX_TSS2: CarInfo("Lexus NX 2020", {2020}),
CAR.LEXUS_RC: CarInfo("Lexus RC 2020", {2020}),
CAR.LEXUS_RX: CarInfo("Lexus RX 2016", {2016, 2017, 2018}),
CAR.LEXUS_RXH: CarInfo("Lexus RX Hybrid 2017", {2016, 2017, 2018, 2019}),
CAR.LEXUS_RX_TSS2: CarInfo("Lexus RX 2020", {2020, 2021}),
CAR.LEXUS_RXH_TSS2: CarInfo("Lexus RX Hybrid 2020", {2020, 2021}),
} }
# (addr, cars, bus, 1/freq*100, vl) # (addr, cars, bus, 1/freq*100, vl)

Loading…
Cancel
Save