You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
807 B
26 lines
807 B
#!/usr/bin/env python3
|
|
from cereal import car
|
|
from selfdrive.car.hyundai.values import FW_VERSIONS, PLATFORM_CODE_ECUS, get_platform_codes
|
|
|
|
Ecu = car.CarParams.Ecu
|
|
ECU_NAME = {v: k for k, v in Ecu.schema.enumerants.items()}
|
|
|
|
if __name__ == "__main__":
|
|
for car_model, ecus in FW_VERSIONS.items():
|
|
print()
|
|
print(car_model)
|
|
for ecu in sorted(ecus, key=lambda x: int(x[0])):
|
|
if ecu[0] not in PLATFORM_CODE_ECUS:
|
|
continue
|
|
|
|
codes = set()
|
|
dates = set()
|
|
for fw in ecus[ecu]:
|
|
code = list(get_platform_codes([fw]))[0]
|
|
codes.add(code.split(b"-")[0])
|
|
if b"-" in code:
|
|
dates.add(code.split(b"-")[1])
|
|
|
|
print(f' (Ecu.{ECU_NAME[ecu[0]]}, {hex(ecu[1])}, {ecu[2]}):')
|
|
print(f' Codes: {codes}')
|
|
print(f' Dates: {dates}')
|
|
|