From 9d1b3cc7737ed0621383d09d0a4772bfc867cc02 Mon Sep 17 00:00:00 2001 From: MarinkoMagla <159032106+MarinkoMagla@users.noreply.github.com> Date: Thu, 11 Apr 2024 00:22:36 +0200 Subject: [PATCH] Encode the actual current date in vw_mqb_config.py (#32093) --- selfdrive/debug/vw_mqb_config.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/selfdrive/debug/vw_mqb_config.py b/selfdrive/debug/vw_mqb_config.py index 75409e3f87..64bc2bc638 100755 --- a/selfdrive/debug/vw_mqb_config.py +++ b/selfdrive/debug/vw_mqb_config.py @@ -6,6 +6,7 @@ from enum import IntEnum from panda import Panda from panda.python.uds import UdsClient, MessageTimeoutError, NegativeResponseError, SESSION_TYPE,\ DATA_IDENTIFIER_TYPE, ACCESS_TYPE +from datetime import date # TODO: extend UDS library to allow custom/vendor-defined data identifiers without ignoring type checks class VOLKSWAGEN_DATA_IDENTIFIER_TYPE(IntEnum): @@ -136,8 +137,10 @@ if __name__ == "__main__": # last two bytes, but not the VZ/importer or tester serial number # Can't seem to read it back, but we can read the calibration tester, # so fib a little and say that same tester did the programming - # TODO: encode the actual current date - prog_date = b'\x22\x02\x08' + current_date = date.today() + formatted_date = current_date.strftime('%y-%m-%d') + year, month, day = [int(part) for part in formatted_date.split('-')] + prog_date = bytes([year, month, day]) uds_client.write_data_by_identifier(DATA_IDENTIFIER_TYPE.PROGRAMMING_DATE, prog_date) tester_num = uds_client.read_data_by_identifier(DATA_IDENTIFIER_TYPE.CALIBRATION_REPAIR_SHOP_CODE_OR_CALIBRATION_EQUIPMENT_SERIAL_NUMBER) uds_client.write_data_by_identifier(DATA_IDENTIFIER_TYPE.REPAIR_SHOP_CODE_OR_TESTER_SERIAL_NUMBER, tester_num)