|
|
|
@ -7,7 +7,7 @@ Ecu = car.CarParams.Ecu |
|
|
|
|
# Steer torque limits |
|
|
|
|
class CarControllerParams: |
|
|
|
|
def __init__(self, CP): |
|
|
|
|
if CP.carFingerprint in [CAR.SONATA, CAR.PALISADE, CAR.SANTA_FE, CAR.VELOSTER, CAR.GENESIS_G70, CAR.IONIQ_EV_2020, CAR.KIA_CEED, CAR.KIA_SELTOS, CAR.ELANTRA_2021, CAR.ELANTRA_HEV_2021]: |
|
|
|
|
if CP.carFingerprint in [CAR.SONATA, CAR.PALISADE, CAR.SANTA_FE, CAR.VELOSTER, CAR.GENESIS_G70, CAR.IONIQ_EV_2020, CAR.KIA_CEED, CAR.KIA_SELTOS, CAR.ELANTRA_2021, CAR.ELANTRA_HEV_2021, CAR.SONATA_HYBRID]: |
|
|
|
|
self.STEER_MAX = 384 |
|
|
|
|
else: |
|
|
|
|
self.STEER_MAX = 255 |
|
|
|
@ -36,6 +36,7 @@ class CAR: |
|
|
|
|
SONATA_LF = "HYUNDAI SONATA 2019" |
|
|
|
|
PALISADE = "HYUNDAI PALISADE 2020" |
|
|
|
|
VELOSTER = "HYUNDAI VELOSTER 2019" |
|
|
|
|
SONATA_HYBRID = "HYUNDAI SONATA HYBRID 2021" |
|
|
|
|
|
|
|
|
|
# Kia |
|
|
|
|
KIA_FORTE = "KIA FORTE E 2018 & GT 2021" |
|
|
|
@ -653,11 +654,18 @@ FW_VERSIONS = { |
|
|
|
|
(Ecu.engine, 0x7e0, None) : [ |
|
|
|
|
b'\xf1\x816H6G5051\000\000\000\000\000\000\000\000' |
|
|
|
|
] |
|
|
|
|
}, |
|
|
|
|
CAR.SONATA_HYBRID: { |
|
|
|
|
(Ecu.fwdRadar, 0x7d0, None): [b'\xf1\000DNhe SCC FHCUP 1.00 1.02 99110-L5000 ',], |
|
|
|
|
(Ecu.eps, 0x7d4, None): [b'\xf1\x8756310-L5500\xf1\000DN8 MDPS C 1.00 1.02 56310-L5500 4DNHC102\xf1\xa01.02',], |
|
|
|
|
(Ecu.fwdCamera, 0x7c4, None): [b'\xf1\000DN8HMFC AT USA LHD 1.00 1.04 99211-L1000 191016',], |
|
|
|
|
(Ecu.transmission, 0x7e1, None): [b'\xf1\000PSBG2323 E09\000\000\000\000\000\000\000TDN2H20SA5\x97R\x88\x9e',], |
|
|
|
|
(Ecu.engine, 0x7e0, None): [b'\xf1\x87391162J012\xf1\xa0000R',], |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
CHECKSUM = { |
|
|
|
|
"crc8": [CAR.SANTA_FE, CAR.SONATA, CAR.PALISADE, CAR.KIA_SELTOS, CAR.ELANTRA_2021, CAR.ELANTRA_HEV_2021], |
|
|
|
|
"crc8": [CAR.SANTA_FE, CAR.SONATA, CAR.PALISADE, CAR.KIA_SELTOS, CAR.ELANTRA_2021, CAR.ELANTRA_HEV_2021, CAR.SONATA_HYBRID], |
|
|
|
|
"6B": [CAR.KIA_SORENTO, CAR.HYUNDAI_GENESIS], |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -665,13 +673,13 @@ FEATURES = { |
|
|
|
|
# which message has the gear |
|
|
|
|
"use_cluster_gears": set([CAR.ELANTRA, CAR.ELANTRA_GT_I30, CAR.KONA]), |
|
|
|
|
"use_tcu_gears": set([CAR.KIA_OPTIMA, CAR.SONATA_LF, CAR.VELOSTER]), |
|
|
|
|
"use_elect_gears": set([CAR.KIA_NIRO_EV, CAR.KIA_NIRO_HEV, CAR.KIA_OPTIMA_H, CAR.IONIQ_EV_LTD, CAR.KONA_EV, CAR.IONIQ, CAR.IONIQ_EV_2020, CAR.IONIQ_PHEV, CAR.ELANTRA_HEV_2021]), |
|
|
|
|
"use_elect_gears": set([CAR.KIA_NIRO_EV, CAR.KIA_NIRO_HEV, CAR.KIA_OPTIMA_H, CAR.IONIQ_EV_LTD, CAR.KONA_EV, CAR.IONIQ, CAR.IONIQ_EV_2020, CAR.IONIQ_PHEV, CAR.ELANTRA_HEV_2021,CAR.SONATA_HYBRID]), |
|
|
|
|
|
|
|
|
|
# these cars use the FCA11 message for the AEB and FCW signals, all others use SCC12 |
|
|
|
|
"use_fca": set([CAR.SONATA, CAR.ELANTRA, CAR.ELANTRA_2021, CAR.ELANTRA_HEV_2021, CAR.ELANTRA_GT_I30, CAR.KIA_STINGER, CAR.IONIQ, CAR.IONIQ_EV_2020, CAR.IONIQ_PHEV, CAR.KONA_EV, CAR.KIA_FORTE, CAR.KIA_NIRO_EV, CAR.PALISADE, CAR.GENESIS_G70, CAR.KONA, CAR.SANTA_FE, CAR.KIA_SELTOS]), |
|
|
|
|
"use_fca": set([CAR.SONATA, CAR.SONATA_HYBRID, CAR.ELANTRA, CAR.ELANTRA_2021, CAR.ELANTRA_HEV_2021, CAR.ELANTRA_GT_I30, CAR.KIA_STINGER, CAR.IONIQ, CAR.IONIQ_EV_2020, CAR.IONIQ_PHEV, CAR.KONA_EV, CAR.KIA_FORTE, CAR.KIA_NIRO_EV, CAR.PALISADE, CAR.GENESIS_G70, CAR.KONA, CAR.SANTA_FE, CAR.KIA_SELTOS]), |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
HYBRID_CAR = set([CAR.IONIQ_PHEV, CAR.ELANTRA_HEV_2021, CAR.KIA_NIRO_HEV]) # these cars use a different gas signal |
|
|
|
|
HYBRID_CAR = set([CAR.IONIQ_PHEV, CAR.ELANTRA_HEV_2021, CAR.KIA_NIRO_HEV, CAR.SONATA_HYBRID]) # these cars use a different gas signal |
|
|
|
|
EV_CAR = set([CAR.IONIQ_EV_2020, CAR.IONIQ_EV_LTD, CAR.IONIQ, CAR.KONA_EV, CAR.KIA_NIRO_EV]) |
|
|
|
|
|
|
|
|
|
DBC = { |
|
|
|
@ -703,6 +711,7 @@ DBC = { |
|
|
|
|
CAR.PALISADE: dbc_dict('hyundai_kia_generic', None), |
|
|
|
|
CAR.VELOSTER: dbc_dict('hyundai_kia_generic', None), |
|
|
|
|
CAR.KIA_CEED: dbc_dict('hyundai_kia_generic', None), |
|
|
|
|
CAR.SONATA_HYBRID: dbc_dict('hyundai_kia_generic', None), |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
STEER_THRESHOLD = 150 |
|
|
|
|