From 97bc9e3bdb9d819dcbe684ceba92ea702d40eaf0 Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Wed, 20 Dec 2023 02:48:18 -0800 Subject: [PATCH] Auto-generated fingerprint PR from fuzzy fingerprinting cars --- selfdrive/car/chrysler/fingerprints.py | 32 +++++++++++++++++++ selfdrive/car/honda/fingerprints.py | 37 ++++++++++++++++++++++ selfdrive/car/hyundai/fingerprints.py | 39 ++++++++++++++++++++++++ selfdrive/car/mazda/fingerprints.py | 1 + selfdrive/car/nissan/fingerprints.py | 1 + selfdrive/car/subaru/fingerprints.py | 11 +++++++ selfdrive/car/toyota/fingerprints.py | 10 ++++++ selfdrive/car/volkswagen/fingerprints.py | 6 ++++ selfdrive/debug/format_fingerprints.py | 4 ++- 9 files changed, 140 insertions(+), 1 deletion(-) diff --git a/selfdrive/car/chrysler/fingerprints.py b/selfdrive/car/chrysler/fingerprints.py index bd191aae5d..a747a7925e 100644 --- a/selfdrive/car/chrysler/fingerprints.py +++ b/selfdrive/car/chrysler/fingerprints.py @@ -72,6 +72,7 @@ FW_VERSIONS = { CAR.JEEP_GRAND_CHEROKEE_2019: { (Ecu.combinationMeter, 0x742, None): [ b'68402971AD', + b'68454144AD', ], (Ecu.srs, 0x744, None): [ b'68355363AB', @@ -84,12 +85,15 @@ FW_VERSIONS = { ], (Ecu.eps, 0x75a, None): [ b'68453431AA', + b'68453433AA', ], (Ecu.engine, 0x7e0, None): [ b'05035674AB ', + b'68496223AA ', ], (Ecu.transmission, 0x7e1, None): [ b'05035707AA', + b'68495807AA', ], }, CAR.RAM_1500: { @@ -113,6 +117,13 @@ FW_VERSIONS = { b'68527346AE', b'68527375AD', b'68527382AE', + b'68510282AH', + b'68505633AB', + b'68527383AD', + b'68434847AC', + b'68527403AC', + b'68453505AD', + b'68434859AC', ], (Ecu.srs, 0x744, None): [ b'68428609AB', @@ -172,6 +183,8 @@ FW_VERSIONS = { b'68585106AB', b'68585109AB', b'68585112AB', + b'68466110AA', + b'68552794AA', ], (Ecu.engine, 0x7e0, None): [ b'05036065AE ', @@ -188,6 +201,16 @@ FW_VERSIONS = { b'68500630AD', b'68500630AE', b'68539650AD', + b'05149591AE ', + b'68378695AJ ', + b'68502741AF ', + b'68467915AC ', + b'68539651AD', + b'68455111AC ', + b'05036026AB ', + b'68455146AC ', + b'68378696AJ ', + b'68378710AL ', ], (Ecu.transmission, 0x7e1, None): [ b'05149536AC', @@ -202,6 +225,13 @@ FW_VERSIONS = { b'68502994AD', b'68520867AE', b'68540431AB', + b'68360085AJ', + b'68466087AB', + b'68540433AB', + b'68445536AB', + b'05035842AB', + b'05036069AA', + b'68360080AL', ], }, CAR.RAM_HD: { @@ -214,6 +244,7 @@ FW_VERSIONS = { b'68525498AB', b'68528791AF', b'68628474AB', + b'68528791AG', ], (Ecu.srs, 0x744, None): [ b'68399794AC', @@ -259,6 +290,7 @@ FW_VERSIONS = { b'68527616AD ', b'M2370131MB', b'M2421132MB', + b'52371331AG', ], }, } diff --git a/selfdrive/car/honda/fingerprints.py b/selfdrive/car/honda/fingerprints.py index fe9e9273b7..98984f0586 100644 --- a/selfdrive/car/honda/fingerprints.py +++ b/selfdrive/car/honda/fingerprints.py @@ -41,6 +41,8 @@ FW_VERSIONS = { b'37805-6B2-M520\x00\x00', b'37805-6B2-Y810\x00\x00', b'37805-6M4-B730\x00\x00', + b'37805-6A0-AJ10\x00\x00', + b'37805-6A0-CG20\x00\x00', ], (Ecu.shiftByWire, 0x18da0bf1, None): [ b'54008-TVC-A910\x00\x00', @@ -85,6 +87,7 @@ FW_VERSIONS = { b'57114-TVA-C530\x00\x00', b'57114-TVA-E520\x00\x00', b'57114-TVE-H250\x00\x00', + b'57114-TVA-D520\x00\x00', ], (Ecu.eps, 0x18da30f1, None): [ b'39990-TBX-H120\x00\x00', @@ -141,6 +144,7 @@ FW_VERSIONS = { b'78109-TVC-YF10\x00\x00', b'78109-TVE-H610\x00\x00', b'78109-TWA-A210\x00\x00', + b'78109-TVA-C330\x00\x00', ], (Ecu.hud, 0x18da61f1, None): [ b'78209-TVA-A010\x00\x00', @@ -183,6 +187,7 @@ FW_VERSIONS = { b'57114-TWA-A530\x00\x00', b'57114-TWA-B520\x00\x00', b'57114-TWB-H030\x00\x00', + b'57114-TWA-C510\x00\x00', ], (Ecu.srs, 0x18da53f1, None): [ b'77959-TWA-A440\x00\x00', @@ -202,6 +207,7 @@ FW_VERSIONS = { b'78109-TWA-L010\x00\x00', b'78109-TWA-L210\x00\x00', b'78109-TWA-H210\x00\x00', + b'78109-TWA-A610\x00\x00', ], (Ecu.shiftByWire, 0x18da0bf1, None): [ b'54008-TWA-A910\x00\x00', @@ -259,6 +265,7 @@ FW_VERSIONS = { b'37805-5BA-L930\x00\x00', b'37805-5BA-L940\x00\x00', b'37805-5BA-L960\x00\x00', + b'37805-5BA-C640\x00\x00', ], (Ecu.transmission, 0x18da1ef1, None): [ b'28101-5CG-A040\x00\x00', @@ -309,6 +316,7 @@ FW_VERSIONS = { b'78109-TBH-A530\x00\x00', b'78109-TED-Q510\x00\x00', b'78109-TEG-A310\x00\x00', + b'78109-TBA-C310\x00\x00', ], (Ecu.fwdRadar, 0x18dab0f1, None): [ b'36161-TBA-A020\x00\x00', @@ -377,6 +385,8 @@ FW_VERSIONS = { b'37805-5BB-L540\x00\x00', b'37805-5BB-L630\x00\x00', b'37805-5BB-L640\x00\x00', + b'37805-5AN-C650\x00\x00', + b'37805-5BB-A620\x00\x00', ], (Ecu.transmission, 0x18da1ef1, None): [ b'28101-5CG-A920\x00\x00', @@ -423,6 +433,7 @@ FW_VERSIONS = { b'39990-TGG-J510\x00\x00', b'39990-TGL-E130\x00\x00', b'39990-TGN-E120\x00\x00', + b'39990-TGG,A120\x00\x00', ], (Ecu.srs, 0x18da53f1, None): [ b'77959-TBA-A060\x00\x00', @@ -468,6 +479,7 @@ FW_VERSIONS = { b'78109-TGL-G210\x00\x00', b'78109-TGL-G230\x00\x00', b'78109-TGL-GM10\x00\x00', + b'78109-TGG-C010\x00\x00', ], (Ecu.fwdRadar, 0x18dab0f1, None): [ b'36802-TBA-A150\x00\x00', @@ -594,6 +606,7 @@ FW_VERSIONS = { b'37805-5PD-Q630\x00\x00', b'37805-5PF-F730\x00\x00', b'37805-5PF-M630\x00\x00', + b'37805-5PA-BF10\x00\x00', ], (Ecu.transmission, 0x18da1ef1, None): [ b'28101-5RG-A020\x00\x00', @@ -825,6 +838,8 @@ FW_VERSIONS = { b'37805-5MR-C620\x00\x00', b'37805-5MR-D530\x00\x00', b'37805-5MR-K730\x00\x00', + b'37805-5MR-3250\x00\x00', + b'37805-5MR-3050\x00\x00', ], (Ecu.eps, 0x18da30f1, None): [ b'39990-THR-A020\x00\x00', @@ -934,6 +949,9 @@ FW_VERSIONS = { b'28101-5EZ-A600\x00\x00', b'28101-5EZ-A430\x00\x00', b'28101-5EZ-A700\x00\x00', + b'28101-5EZ-A500\x00\x00', + b'28101-5EZ-A330\x00\x00', + b'28101-5EY-A430\x00\x00', ], (Ecu.programmedFuelInjection, 0x18da10f1, None): [ b'37805-RLV-4060\x00\x00', @@ -950,6 +968,16 @@ FW_VERSIONS = { b'37805-RLV-L160\x00\x00', b'37805-RLV-B420\x00\x00', b'37805-RLV-F120\x00\x00', + b'37805-RLV-L850\x00\x00', + b'37805-RLV-L410\x00\x00', + b'37805-RLV-B430\x00\x00', + b'37805-RLV-5230\x00\x00', + b'37805-RLV-L830\x00\x00', + b'37805-RLV-L080\x00\x00', + b'37805-RLV-L350\x00\x00', + b'37805-RLV-L090\x00\x00', + b'37805-RLV-B710\x00\x00', + b'37805-RLV-5250\x00\x00', ], (Ecu.gateway, 0x18daeff1, None): [ b'38897-TG7-A030\x00\x00', @@ -985,6 +1013,7 @@ FW_VERSIONS = { b'36161-TGT-A130\x00\x00', b'36161-TGS-A030\x00\x00', b'36161-TGS-A220\x00\x00', + b'36161-TGS-A320\x00\x00', ], (Ecu.srs, 0x18da53f1, None): [ b'77959-TG7-A020\x00\x00', @@ -1027,6 +1056,8 @@ FW_VERSIONS = { b'78109-TGS-AX20\x00\x00', b'78109-TGS-AJ20\x00\x00', b'78109-TGS-AC10\x00\x00', + b'78109-TGS-AD10\x00\x00', + b'78109-TGS-AB10\x00\x00', ], (Ecu.vsa, 0x18da28f1, None): [ b'57114-TG7-A130\x00\x00', @@ -1079,6 +1110,7 @@ FW_VERSIONS = { b'37805-5YF-C220\x00\x00', b'37805-5YF-C410\x00\x00', b'37805-5YF-C420\x00\x00', + b'37805-5YF-A760\x00\x00', ], (Ecu.vsa, 0x18da28f1, None): [ b'57114-TJB-A030\x00\x00', @@ -1125,6 +1157,7 @@ FW_VERSIONS = { b'78109-TJC-AA10\x00\x00', b'78109-TJC-AD10\x00\x00', b'78109-TJC-AF10\x00\x00', + b'78109-TJC-A240\x00\x00', ], (Ecu.srs, 0x18da53f1, None): [ b'77959-TJB-A040\x00\x00', @@ -1347,6 +1380,8 @@ FW_VERSIONS = { b'78108-T22-A020\x00\x00', b'78108-T21-MB10\x00\x00', b'78108-T21-A740\x00\x00', + b'78108-T20-A220\x00\x00', + b'78108-T22-A030\x00\x00', ], (Ecu.fwdRadar, 0x18dab0f1, None): [ b'36161-T20-A070\x00\x00', @@ -1354,6 +1389,7 @@ FW_VERSIONS = { b'36161-T20-A060\x00\x00', b'36161-T47-A070\x00\x00', b'36161-T24-T070\x00\x00', + b'8S102-T47-AA10\x00\x00', ], (Ecu.vsa, 0x18da28f1, None): [ b'57114-T20-AB40\x00\x00', @@ -1375,6 +1411,7 @@ FW_VERSIONS = { b'37805-64A-A620\x00\x00', b'37805-64D-P510\x00\x00', b'37805-64S-AA10\x00\x00', + b'37805-64A-AD10\x00\x00', ], }, } diff --git a/selfdrive/car/hyundai/fingerprints.py b/selfdrive/car/hyundai/fingerprints.py index 4d9ab22476..e5a9d686c3 100644 --- a/selfdrive/car/hyundai/fingerprints.py +++ b/selfdrive/car/hyundai/fingerprints.py @@ -309,6 +309,7 @@ FW_VERSIONS = { b'\xf1\x8739110-2S041\xf1\x81HM6M1_0a0_M00', b'\xf1\x8739110-2S042\xf1\x81HM6M1_0a0_M00', b'\xf1\x81HM6M1_0a0_G20', + b'\xf1\x81HM6M2_0a0_BD0', ], (Ecu.eps, 0x7d4, None): [ b'\xf1\x00DN8 MDPS C 1,00 1,01 56310L0010\x00 4DNAC101', @@ -405,6 +406,7 @@ FW_VERSIONS = { b'\xf1\x87SAMFBA8105254GJ2wx\x87\x88Vf\x86hx\x88\x87\x88wwwwwwww\x86O\xfa\xff\x99\x88\x7f\xffZG\xf1\x81U913\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U913\x00\x00\x00\x00\x00\x00SDN8T16NB2\n\xdd^\xbc', b'\xf1\x87SANFB45889451GC7wx\x87\x88gw\x87x\x88\x88x\x88\x87wxw\x87wxw\x87\x8f\xfc\xffeU\x8f\xff+Q\xf1\x81U913\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U913\x00\x00\x00\x00\x00\x00SDN8T16NB2\n\xdd^\xbc', b'\xf1\x00T02601BL T02900A1 VDN8T25XXX900NSA\xb9\x13\xf9p', + b'\xf1\x87RBKSHU134810SB01EUeVVf\x96i\x86fXfvfgf\xb9\xaa\xcf\xff\xab\xffo\xf9\xb1@\xf1\x81HT6TA800A1\xf1\x00HT6TA260BLHT6TA800A1TDN8C20KS4\x00\x00\x00\x00\x00\x00c\xcf\x8aY', ], }, CAR.SONATA_LF: { @@ -513,12 +515,14 @@ FW_VERSIONS = { b'\xf1\x87SDJXAA7656854GG1DEtWUU\x85X\x88\x88\x98\x88w\x88\x87xx\x88\x87\x88\x96o\xfb\xff\x86f\x7f\xff.\xca\xf1\x816W3C2051\x00\x00\xf1\x006W351_C2\x00\x006W3C2051\x00\x00TTM4G24NS2\x00\x00\x00\x00', b'\xf1\x87SDJXAA7656854GG1DEtWUU\x85X\x88\x88\x98\x88w\x88\x87xx\x88\x87\x88\x96o\xfb\xff\x86f\x7f\xff.\xca\xf1\x816W3C2051\x00\x00\xf1\x006W351_C2\x00\x006W3C2051\x00\x00TTM4G24NS2K\xdaV0', b'\xf1\x87SDKXAA2443414GG1vfvgwv\x87h\x88\x88\x88\x88ww\x87wwwww\x99_\xfc\xffvD?\xffl\xd2\xf1\x816W3E1051\x00\x00\xf1\x006W351_C2\x00\x006W3E1051\x00\x00TTM4G24NS6\x00\x00\x00\x00', + b'\xf1\x87LDJUEA7371114HG1\x87www\x86gvw\x89\x99\xa8\x99w\x88\x87xww\x87w\x86o\xf8\xff\x97\x88\x7f\xff\r\x00\xf1\x816W3C2051\x00\x00\xf1\x006W351_C2\x00\x006W3C2051\x00\x00TTM4T20NS1R\x7f\x90\n', ], }, CAR.SANTA_FE_2022: { (Ecu.fwdRadar, 0x7d0, None): [ b'\xf1\x00TM__ SCC F-CUP 1.00 1.00 99110-S1500 ', b'\xf1\x00TM__ SCC FHCUP 1.00 1.00 99110-S1500 ', + b'\xf1\x00TM__ SCC FHCUP 1.00 1.01 99110-S1500 ', ], (Ecu.abs, 0x7d1, None): [ b'\xf1\x00TM ESC \x01 102!\x04\x03 58910-S2DA0', @@ -532,6 +536,8 @@ FW_VERSIONS = { b'\xf1\x00TM ESC \x04 101 \x08\x04 58910-S2GA0', b'\xf1\x00TM ESC \x02 103"\x07\x08 58910-S2GA0', b'\xf1\x00TM ESC 103!\x030 58910-S1MA0', + b'\xf1\x8758910-S2GA0\xf1\x00TM ESC \x04 103"\x07\x08 58910-S2GA0', + b'\xf1\x8758910-S2GA0\xf1\x00TM ESC \x02 102!\x04\x05 58910-S2GA0', ], (Ecu.engine, 0x7e0, None): [ b'\xf1\x870\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf1\x81HM6M1_0a0_L50', @@ -575,39 +581,48 @@ FW_VERSIONS = { b'\xf1\x87954A02N250\x00\x00\x00\x00\x00\xf1\x81T02900A1 \xf1\x00T02601BL T02900A1 VTMPT25XXX900NS8\xb7\xaa\xfe\xfc', b'\xf1\x00T02601BL T02800A1 VTMPT25XXX800NS4\xed\xaf\xed\xf5', b'\xf1\x00T02601BL T02900A1 VTMPT25XXW900NS1c\x918\xc5', + b'\xf1\x87954A02N251\x00\x00\x00\x00\x00\xf1\x81T02900A1 \xf1\x00T02601BL T02900A1 VTMPT25XXW900NS1c\x918\xc5', ], }, CAR.SANTA_FE_HEV_2022: { (Ecu.fwdRadar, 0x7d0, None): [ b'\xf1\x00TMhe SCC FHCUP 1.00 1.00 99110-CL500 ', + b'\xf1\x00TMhe SCC FHCUP 1.00 1.01 99110-CL500 ', ], (Ecu.eps, 0x7d4, None): [ b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLAC0 4TSHC102', b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLEC0 4TSHC102', b'\xf1\x00TM MDPS R 1.00 1.05 57700-CL000 4TSHP105', b'\xf1\x00TM MDPS C 1.00 1.02 56310-GA000 4TSHA100', + b'\xf1\x8757700-CL000\xf1\x00TM MDPS R 1.00 1.06 57700-CL000 4TSHP106', ], (Ecu.fwdCamera, 0x7c4, None): [ b'\xf1\x00TMH MFC AT EUR LHD 1.00 1.06 99211-S1500 220727', b'\xf1\x00TMH MFC AT USA LHD 1.00 1.03 99211-S1500 210224', b'\xf1\x00TMH MFC AT USA LHD 1.00 1.06 99211-S1500 220727', b'\xf1\x00TMA MFC AT USA LHD 1.00 1.03 99211-S2500 220414', + b'\xf1\x00TMH MFC AT KOR LHD 1.00 1.06 99211-S1500 220727', + b'\xf1\x00TMH MFC AT USA LHD 1.00 1.05 99211-S1500 220126', ], (Ecu.transmission, 0x7e1, None): [ b'\xf1\x00PSBG2333 E16\x00\x00\x00\x00\x00\x00\x00TTM2H16SA3\xa3\x1b\xe14', b'\xf1\x00PSBG2333 E16\x00\x00\x00\x00\x00\x00\x00TTM2H16UA3I\x94\xac\x8f', b'\xf1\x87959102T250\x00\x00\x00\x00\x00\xf1\x81E14\x00\x00\x00\x00\x00\x00\x00\xf1\x00PSBG2333 E14\x00\x00\x00\x00\x00\x00\x00TTM2H16SA2\x80\xd7l\xb2', + b'\xf1\x8795441-3D100\x00\xf1\x81E16\x00\x00\x00\x00\x00\x00\x00\xf1\x00PSBG2333 E16\x00\x00\x00\x00\x00\x00\x00TTM2H16KA1\xc6\x15Q\x1e', + b'\xf1\x8795441-3D120\x00\xf1\x81E16\x00\x00\x00\x00\x00\x00\x00\xf1\x00PSBG2333 E16\x00\x00\x00\x00\x00\x00\x00TTM2H16SA3\xa3\x1b\xe14', ], (Ecu.engine, 0x7e0, None): [ b'\xf1\x87391312MTC1', b'\xf1\x87391312MTE0', b'\xf1\x87391312MTL0', + b'\xf1\x87391312MTA0', ], }, CAR.SANTA_FE_PHEV_2022: { (Ecu.fwdRadar, 0x7d0, None): [ b'\xf1\x8799110CL500\xf1\x00TMhe SCC FHCUP 1.00 1.00 99110-CL500 ', b'\xf1\x00TMhe SCC FHCUP 1.00 1.01 99110-CL500 ', + b'\xf1\x00TMhe SCC F-CUP 1.00 1.00 99110-CL500 ', ], (Ecu.eps, 0x7d4, None): [ b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLAC0 4TSHC102', @@ -617,6 +632,7 @@ FW_VERSIONS = { (Ecu.fwdCamera, 0x7c4, None): [ b'\xf1\x00TMP MFC AT USA LHD 1.00 1.03 99211-S1500 210224', b'\xf1\x00TMP MFC AT USA LHD 1.00 1.06 99211-S1500 220727', + b'\xf1\x00TMP MFC AT USA LHD 1.00 1.05 99211-S1500 220126', ], (Ecu.transmission, 0x7e1, None): [ b'\xf1\x8795441-3D121\x00\xf1\x81E16\x00\x00\x00\x00\x00\x00\x00\xf1\x00PSBG2333 E16\x00\x00\x00\x00\x00\x00\x00TTM2P16SA0o\x88^\xbe', @@ -733,6 +749,7 @@ FW_VERSIONS = { b'\xf1\x00LX2_ SCC FHCUP 1.00 1.05 99110-S8100 ', b'\xf1\x00ON__ FCA FHCUP 1.00 1.02 99110-S9100 ', b'\xf1\x00ON__ FCA FHCUP 1.00 1.01 99110-S9110 ', + b'\xf1\x00ON__ FCA FHCUP 1.00 1.03 99110-S9100 ', ], (Ecu.abs, 0x7d1, None): [ b'\xf1\x00LX ESC \x01 103\x19\t\x10 58910-S8360', @@ -747,6 +764,7 @@ FW_VERSIONS = { b'\xf1\x00ON ESC \x0b 101\x19\t\x08 58910-S9360', b'\xf1\x00ON ESC \x0b 101\x19\t\x05 58910-S9320', b'\xf1\x00ON ESC \x01 101\x19\t\x08 58910-S9360', + b'\xf1\x00LX ESC \x01 104 \x10\x16 58910-S8360', ], (Ecu.engine, 0x7e0, None): [ b'\xf1\x81640J0051\x00\x00\x00\x00\x00\x00\x00\x00', @@ -760,6 +778,8 @@ FW_VERSIONS = { b'\xf1\x00LX2 MDPS C 1.00 1.04 56310-S8020 4LXDC104', b'\xf1\x00ON MDPS C 1.00 1.00 56340-S9000 8B13', b'\xf1\x00ON MDPS C 1.00 1.01 56340-S9000 9201', + b'\xf1\x00LX2 MDPS C 1.00 1.03 56310-XX000 4LXDC103', + b'\xf1\x00LX2 MDPS C 1.00 1.04 56310-S8420 4LXDC104', ], (Ecu.fwdCamera, 0x7c4, None): [ b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.03 99211-S8100 190125', @@ -823,6 +843,17 @@ FW_VERSIONS = { b'\xf1\x87LDMVBN950669KF37\x97www\x96fffy\x99\xa7\x99\xa9\x99\xaa\x99g\x88\x96x\xb8\x8f\xf9\xffTD/\xff\xa7\xcb\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00SLX4G38NB5\xb9\x94\xe8\x89', b'\xf1\x87LDLVAA4478824HH1\x87wwwvfvg\x89\x99\xa8\x99w\x88\x87x\x89\x99\xa8\x99\xa6o\xfa\xfffU/\xffu\x92\xf1\x81U903\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U903\x00\x00\x00\x00\x00\x00TON4G38NB2[v\\\xb6', b'\xf1\x87LDMVBN871852KF37\xb9\x99\x99\x99\xa8\x88\x88\x88y\x99\xa7\x99x\x99\xa7\x89\x88\x88\x98\x88\x89o\xf7\xff\xaa\x88o\xff\x0e\xed\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00SLX4G38NB5\xb9\x94\xe8\x89', + b'\xf1\x87LBMUFN786399KF36\xa8\x88\x88\x88\x86f\x86hx\x99\xb7\x89f\x88\x96hx\x99\xa7\x89\xb8\x8f\xf7\xffwfO\xffmW\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00SLX2G38NB47\x86\xd7\x17', + b'\xf1\x87LDNVAA3051684HH1vgvweVef\x88\x99\x98\x89x\x99\x97\x89x\x99\xa7\x89r_\xf7\xff\x86fo\xff\xdbY\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00TON4G38NB5\xd2\x96l\x86', + b'\xf1\x87LBKUFN477572KF25\x88\x88x\x87\xa9\x99\x99\x99\x89\x99\xa8\x99\x88\x88\x98\x88\x87\x88\x98x\x98o\xf6\xffvfo\xff\xb4b\xf1\x81U891\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U891\x00\x00\x00\x00\x00\x00SLX2G38NB2\xd7\xc1/\xd1', + b'\xf1\x87LBMUFN969795KF36\xa9\x98\x99\x89\x87w\x87xx\x99\x97\x89x\x88\xa7\x88\x98\x99\x99\x89\x87o\xf7\xffxD\x8f\xff\xc5\x15\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00SLX2G38NB5X\xfa\xe88', + b'\xf1\x87LDKVBN534625KF26\x88\x88\x88\x88\x87x\x87\x88x\x99\x97\x89\x88\x88\x88\x88\x88\x88\x98\x88eo\xf7\xff\x99w\x8f\xffe\xfa\xf1\x81U891\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U891\x00\x00\x00\x00\x00\x00SLX4G38NB2\xafL]\xe7', + b'\xf1\x87LDNVBN026089KF37vfff\x86fVe\x88\x88\x88\x88\x98\x88\x89\x88efvVSo\xf8\xff\x89f?\xff\xce@\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00SLX4G38NB6\x18\x80\xb4\x16', + b'\xf1\x87LBMUFN854395KF36\x87wgv\x98\x87Xu\x88\x99\x98\x89\x88\x99\x98\x89fw\x86g3o\xf7\xff\xa9\x88\x9f\xff@\xb2\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00SLX2G38NB5X\xfa\xe88', + b'\xf1\x87LDNVBN086258KF26\xb8\x88x\x87\x87www\x88\x99\x98\x89fw\x96g\x88\x99\xa8\x89\xc9\x7f\xf6\xff\xbb\x99\x8f\xff\x99\xfb\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00SLX4G38NB6\x18\x80\xb4\x16', + b'\xf1\x87LDKVBN531841KF37\x88\x88\x88\x88\x98\x88\x98\x89y\x99\x97\x99\x88\x99\xa8\x89\x88\x99\x98\x89uo\xf6\xff\x98wo\xff\r\x13\xf1\x81U891\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U891\x00\x00\x00\x00\x00\x00SLX4G38NB2\xafL]\xe7', + b'\xf1\x87LDNVAA4915974HH1\x98\x88x\x87uVef\x89\x99\xa8\x99\x88\x99\x98\x89x\x99\x97\x89\xd9_\xf7\xff\x98\x88_\xff\x7f\xa9\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00TON4G38NB5\xd2\x96l\x86', + b'\xf1\x87LDMVAA8319544HH1eUUUvfffww\x87wx\x99\x97\x89x\x88\x97\x88t?\xf9\xff\x97f_\xff\x8al\xf1\x81U922\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U922\x00\x00\x00\x00\x00\x00TON4G38NB4m\xeb\x19\x88', ], }, CAR.VELOSTER: { @@ -917,10 +948,12 @@ FW_VERSIONS = { b'\xf1\x00bcsh8p54 E18\x00\x00\x00\x00\x00\x00\x00SDH0G38NH2j\x9dA\x1c', b'\xf1\x00bcsh8p54 E18\x00\x00\x00\x00\x00\x00\x00SDH0T33NH3\x97\xe6\xbc\xb8', b'\xf1\x00bcsh8p54 E18\x00\x00\x00\x00\x00\x00\x00SDH0G33KH2\xae\xde\xd5!', + b'\xf1\x87WBHAH16524582CL7WvWvgvVv\x87fVfwvWvwuWfvT5Th\x99\x7f\xff\xad\xd6\xf1\x81E18\x00\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 E18\x00\x00\x00\x00\x00\x00\x00SDH0G38NH2j\x9dA\x1c', ], (Ecu.engine, 0x7e0, None): [ b'\xf1\x81640F0051\x00\x00\x00\x00\x00\x00\x00\x00', b'\xf1\x81640A4051\x00\x00\x00\x00\x00\x00\x00\x00', + b'\xf1\x81640BA051\x00\x00\x00\x00\x00\x00\x00\x00', ], }, CAR.GENESIS_G90: { @@ -1048,6 +1081,7 @@ FW_VERSIONS = { b'\xf1\x870\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf1\x82DLDWN5TMDCXXXJ1B', b'\xf1\x81HM6M2_0a0_DQ0', b'\xf1\x87391212MKT3', + b'\xf1\x87391212MKV2', ], (Ecu.transmission, 0x7e1, None): [ b'\xf1\x00bcsh8p54 U913\x00\x00\x00\x00\x00\x00TDL2T16NB1ia\x0b\xb8', @@ -1058,6 +1092,7 @@ FW_VERSIONS = { b'\xf1\x00bcsh8p54 U913\x00\x00\x00\x00\x00\x00TDL4T16NB05\x94t\x18', b'\xf1\x00HT6TA261BLHT6TAB00A1SDL0C20KS0\x00\x00\x00\x00\x00\x00\\\x9f\xa5\x15', b'\xf1\x00bcsh8p54 U913\x00\x00\x00\x00\x00\x00TDL2T16NB2.\x13\xf6\xed', + b'\xf1\x87SCNSAA4562104GK1VfvgVf\x86hgwfwUUUUvUWe\x86/\xfc\xffeDo\xffMI\xf1\x81U913\x00\x00\x00\x00\x00\x00\xf1\x00bcsh8p54 U913\x00\x00\x00\x00\x00\x00TDL4T16NB05\x94t\x18', ], }, CAR.KIA_K5_HEV_2020: { @@ -1547,6 +1582,7 @@ FW_VERSIONS = { b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.04 99210-CV000 210823', b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.05 99210-CV000 211027', b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.06 99210-CV000 220328', + b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.00 99210-CV100 220630', ], }, CAR.IONIQ_5: { @@ -1563,6 +1599,8 @@ FW_VERSIONS = { b'\xf1\x00NE1 MFC AT EUR RHD 1.00 1.02 99211-GI010 211206', b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.03 99211-GI010 220401', b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.06 99211-GI010 230110', + b'\xf1\x00NE1 MFC AT CAN LHD 1.00 1.01 99211-GI010 211007', + b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.06 99211-GI000 210813', ], }, CAR.IONIQ_6: { @@ -1572,6 +1610,7 @@ FW_VERSIONS = { (Ecu.fwdCamera, 0x7c4, None): [ b'\xf1\x00CE MFC AT EUR LHD 1.00 1.03 99211-KL000 221011', b'\xf1\x00CE MFC AT USA LHD 1.00 1.04 99211-KL000 221213', + b'\xf1\x00CE MFC AT CAN LHD 1.00 1.04 99211-KL000 221213', ], }, CAR.TUCSON_4TH_GEN: { diff --git a/selfdrive/car/mazda/fingerprints.py b/selfdrive/car/mazda/fingerprints.py index ee1f4be38b..80f0039d64 100644 --- a/selfdrive/car/mazda/fingerprints.py +++ b/selfdrive/car/mazda/fingerprints.py @@ -249,6 +249,7 @@ FW_VERSIONS = { b'GSH7-67XK2-P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'GSH7-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'GSH7-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-U\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', ], (Ecu.transmission, 0x7e1, None): [ b'PXM4-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', diff --git a/selfdrive/car/nissan/fingerprints.py b/selfdrive/car/nissan/fingerprints.py index 3145729238..8bc0c5ef1b 100644 --- a/selfdrive/car/nissan/fingerprints.py +++ b/selfdrive/car/nissan/fingerprints.py @@ -57,6 +57,7 @@ FW_VERSIONS = { ], (Ecu.fwdCamera, 0x707, None): [ b'6WK2CDB\x04\x18\x00\x00\x00\x00\x00R=1\x18\x99\x10\x00\x00\x00\x80', + b'6WK2BDB\x04\x18\x00\x00\x00\x00\x00R;1\x18\x99\x10\x00\x00\x00\x80', ], (Ecu.gateway, 0x18dad0f1, None): [ b'284U26WK0C', diff --git a/selfdrive/car/subaru/fingerprints.py b/selfdrive/car/subaru/fingerprints.py index 6625d14e5c..6ffb5644d3 100644 --- a/selfdrive/car/subaru/fingerprints.py +++ b/selfdrive/car/subaru/fingerprints.py @@ -29,12 +29,16 @@ FW_VERSIONS = { b'\xf1\x82\xd9,\xa0@\x07', b'\xf1\x82\xd1,\xa0q\x07', b'\xd1,\xa0q\x07', + b'\xd9,\xa0p\x07', + b'\xd9,\xa0@\x07', ], (Ecu.transmission, 0x7e1, None): [ b'\x00\xfe\xf7\x00\x00', b'\x01\xfe\xf9\x00\x00', b'\x01\xfe\xf7\x00\x00', b'\x01\xfe\xfa\x00\x00', + b'\x00>\xf0\x00\x00', + b'\x00\xfe\xf9\x00\x00', ], }, CAR.ASCENT_2023: { @@ -144,6 +148,8 @@ FW_VERSIONS = { b'\xaa!av\x07', b'\xaa\x01bt\x07', b'\xc5!ap\x07', + b'\xaa!`v\x07', + b'\xc5!dt\x07', ], (Ecu.transmission, 0x7e1, None): [ b'\xe3\xe5F1\x00', @@ -186,6 +192,7 @@ FW_VERSIONS = { b'\x00\x00e\x8f\x00\x00\x00\x00', b'\x00\x00e\x92\x00\x00\x00\x00', b'\x00\x00e\xa4\x00\x00\x00\x00', + b'\x00\x00e\x87\x1f@ "', ], (Ecu.engine, 0x7e0, None): [ b'\xca!ap\x07', @@ -202,6 +209,7 @@ FW_VERSIONS = { b'\xe6"f0\x07', b'\xe6"fp\x07', b'\xe6!`@\x07', + b'\xf3"fq\x07', ], (Ecu.transmission, 0x7e1, None): [ b'\xe6\xf5\x04\x00\x00', @@ -267,6 +275,8 @@ FW_VERSIONS = { b'\xf1\x00\xa2\x10\n', b'\xcf"`p\x07', b'\xb6\xa2`A\x07', + b'\xb6"`r\x07', + b'\xb6"`s\x07', ], (Ecu.transmission, 0x7e1, None): [ b'\x1a\xf6B0\x00', @@ -471,6 +481,7 @@ FW_VERSIONS = { b'\xa1 \x07\x02', b'\xa1 \x08\x00', b'\xa1 "\t\x00', + b'\xa1 \x07\x01', ], (Ecu.eps, 0x746, None): [ b'\x9b\xc0\x10\x00', diff --git a/selfdrive/car/toyota/fingerprints.py b/selfdrive/car/toyota/fingerprints.py index 8332f242b2..a071f39147 100644 --- a/selfdrive/car/toyota/fingerprints.py +++ b/selfdrive/car/toyota/fingerprints.py @@ -155,6 +155,7 @@ FW_VERSIONS = { b'8821F0604200 ', b'8821F0606200 ', b'8821F0609000 ', + b'8821F0601400 ', ], (Ecu.abs, 0x7b0, None): [ b'F152606210\x00\x00\x00\x00\x00\x00', @@ -198,6 +199,7 @@ FW_VERSIONS = { b'8821F0604200 ', b'8821F0606200 ', b'8821F0609000 ', + b'8821F0601400 ', ], (Ecu.fwdCamera, 0x750, 0x6d): [ b'8646F0601200 ', @@ -710,6 +712,7 @@ FW_VERSIONS = { b'\x018821F3301400\x00\x00\x00\x00', b'\x018821F6201200\x00\x00\x00\x00', b'\x018821F6201300\x00\x00\x00\x00', + b'\x018821F6201400\x00\x00\x00\x00', ], (Ecu.fwdCamera, 0x750, 0x6d): [ b'\x028646F0E02100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', @@ -1238,6 +1241,7 @@ FW_VERSIONS = { b'\x018821F6201300\x00\x00\x00\x00', b'\x018821F3301300\x00\x00\x00\x00', b'\x018821F6201400\x00\x00\x00\x00', + b'\x018821F6201200\x00\x00\x00\x00', ], (Ecu.fwdCamera, 0x750, 0x6d): [ b'\x028646F33030D0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', @@ -1248,6 +1252,7 @@ FW_VERSIONS = { b'\x028646F0610000\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', b'\x028646F3303100\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', b'\x028646F3304200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F3309100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', ], }, CAR.LEXUS_ES: { @@ -1319,6 +1324,7 @@ FW_VERSIONS = { b'\x01896637852000\x00\x00\x00\x00', b'\x01896637854000\x00\x00\x00\x00', b'\x01896637878000\x00\x00\x00\x00', + b'\x01896637873000\x00\x00\x00\x00', ], (Ecu.engine, 0x7e0, None): [ b'\x0237841000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', @@ -1437,6 +1443,7 @@ FW_VERSIONS = { b'\x018966348R1300\x00\x00\x00\x00', b'\x018966348R8500\x00\x00\x00\x00', b'\x018966348W1300\x00\x00\x00\x00', + b'\x01896630E37100\x00\x00\x00\x00', ], (Ecu.abs, 0x7b0, None): [ b'F152648472\x00\x00\x00\x00\x00\x00', @@ -1484,6 +1491,7 @@ FW_VERSIONS = { b'\x02348T3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x02348V6000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x02348Z3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348Z4000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', ], (Ecu.abs, 0x7b0, None): [ b'F152648361\x00\x00\x00\x00\x00\x00', @@ -1492,6 +1500,7 @@ FW_VERSIONS = { b'F152648504\x00\x00\x00\x00\x00\x00', b'F152648740\x00\x00\x00\x00\x00\x00', b'F152648A30\x00\x00\x00\x00\x00\x00', + b'F152648A70\x00\x00\x00\x00\x00\x00', ], (Ecu.dsu, 0x791, None): [ b'881514811300\x00\x00\x00\x00', @@ -1503,6 +1512,7 @@ FW_VERSIONS = { b'8965B0E012\x00\x00\x00\x00\x00\x00', b'8965B48111\x00\x00\x00\x00\x00\x00', b'8965B48112\x00\x00\x00\x00\x00\x00', + b'8965B48102\x00\x00\x00\x00\x00\x00', ], (Ecu.fwdRadar, 0x750, 0xf): [ b'8821F4701000\x00\x00\x00\x00', diff --git a/selfdrive/car/volkswagen/fingerprints.py b/selfdrive/car/volkswagen/fingerprints.py index 56c658e404..b5d256eefb 100644 --- a/selfdrive/car/volkswagen/fingerprints.py +++ b/selfdrive/car/volkswagen/fingerprints.py @@ -318,6 +318,8 @@ FW_VERSIONS = { b'\xf1\x8704E906024L \xf1\x899970', b'\xf1\x8704E906027MS\xf1\x896223', b'\xf1\x875G0906259T \xf1\x890003', + b'\xf1\x8704E906024C \xf1\x899971', + b'\xf1\x8704E906024R \xf1\x899970', ], (Ecu.transmission, 0x7e1, None): [ b'\xf1\x8709G927158BQ\xf1\x893545', @@ -659,6 +661,7 @@ FW_VERSIONS = { (Ecu.fwdRadar, 0x757, None): [ b'\xf1\x872Q0907572R \xf1\x890372', b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572AA\xf1\x89X390', ], }, CAR.TROC_MK1: { @@ -744,6 +747,7 @@ FW_VERSIONS = { b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13121111111211--261117141112231291163221', b'\xf1\x875Q0959655N \xf1\x890361\xf1\x82\x111212001112110004110411111421149114', b'\xf1\x875Q0959655N \xf1\x890361\xf1\x82\x111212001112111104110411111521159114', + b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13271112111312--071104171825102591131211', ], (Ecu.eps, 0x712, None): [ b'\xf1\x873Q0909144F \xf1\x895043\xf1\x82\x0561G01A13A0', @@ -760,6 +764,7 @@ FW_VERSIONS = { b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516G00804A1', b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516G00804A1', b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521G00807A1', + b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516A00604A1', ], (Ecu.fwdRadar, 0x757, None): [ b'\xf1\x875Q0907567M \xf1\x890398\xf1\x82\x0101', @@ -769,6 +774,7 @@ FW_VERSIONS = { b'\xf1\x875Q0907572G \xf1\x890571', b'\xf1\x875Q0907572H \xf1\x890620', b'\xf1\x875Q0907572P \xf1\x890682', + b'\xf1\x875Q0907572R \xf1\x890771', ], }, CAR.AUDI_Q2_MK1: { diff --git a/selfdrive/debug/format_fingerprints.py b/selfdrive/debug/format_fingerprints.py index f6c0755730..c8a4b6f2d6 100755 --- a/selfdrive/debug/format_fingerprints.py +++ b/selfdrive/debug/format_fingerprints.py @@ -68,7 +68,9 @@ def format_brand_fw_versions(brand, extra_fw_versions: None | dict[str, dict[tup if extra_fw_versions is not None: for platform, ecus in extra_fw_versions.items(): for ecu, fws in ecus.items(): - fw_versions[brand][platform][ecu] += fws + if ecu not in fw_versions[brand][platform]: + continue + fw_versions[brand][platform][ecu] += [fw for fw in fws if fw not in fw_versions[brand][platform][ecu]] fingerprints_file = os.path.join(BASEDIR, f"selfdrive/car/{brand}/fingerprints.py") with open(fingerprints_file, "r") as f: