format_fingerprints: automatically sort fw fingerprints (#30819)

* Auto sort fingerprints

* add comment
old-commit-hash: 3d8c78d6b3
chrysler-long2
Justin Newberry 1 year ago committed by GitHub
parent bf8e8f8338
commit 3b65f2075e
  1. 2
      selfdrive/car/body/fingerprints.py
  2. 2
      selfdrive/car/chrysler/fingerprints.py
  3. 8
      selfdrive/car/ford/fingerprints.py
  4. 92
      selfdrive/car/honda/fingerprints.py
  5. 456
      selfdrive/car/hyundai/fingerprints.py
  6. 28
      selfdrive/car/mazda/fingerprints.py
  7. 12
      selfdrive/car/nissan/fingerprints.py
  8. 348
      selfdrive/car/subaru/fingerprints.py
  9. 272
      selfdrive/car/toyota/fingerprints.py
  10. 116
      selfdrive/car/volkswagen/fingerprints.py
  11. 6
      selfdrive/debug/format_fingerprints.py

@ -17,8 +17,8 @@ FW_VERSIONS = {
CAR.BODY: { CAR.BODY: {
(Ecu.engine, 0x720, None): [ (Ecu.engine, 0x720, None): [
b'0.0.01', b'0.0.01',
b'02/27/2022',
b'0.3.00a', b'0.3.00a',
b'02/27/2022',
], ],
(Ecu.debug, 0x721, None): [ (Ecu.debug, 0x721, None): [
b'166bd860', b'166bd860',

@ -169,8 +169,8 @@ FW_VERSIONS = {
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'05036065AE ', b'05036065AE ',
b'05036066AE ', b'05036066AE ',
b'05149592AE ',
b'05149591AD ', b'05149591AD ',
b'05149592AE ',
b'05149846AA ', b'05149846AA ',
b'05149848AA ', b'05149848AA ',
b'68378701AI ', b'68378701AI ',

@ -21,9 +21,9 @@ FW_VERSIONS = {
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'M1PA-14C204-GF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'M1PA-14C204-GF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'M1PA-14C204-RE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'N1PA-14C204-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'N1PA-14C204-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'N1PA-14C204-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'N1PA-14C204-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'M1PA-14C204-RE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
}, },
CAR.ESCAPE_MK4: { CAR.ESCAPE_MK4: {
@ -72,9 +72,9 @@ FW_VERSIONS = {
b'L1MC-2D053-AJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'L1MC-2D053-AJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'L1MC-2D053-BA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'L1MC-2D053-BA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'L1MC-2D053-BB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'L1MC-2D053-BB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'L1MC-2D053-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'L1MC-2D053-BF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'L1MC-2D053-BF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'L1MC-2D053-KB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'L1MC-2D053-KB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'L1MC-2D053-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x764, None): [ (Ecu.fwdRadar, 0x764, None): [
b'LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
@ -87,6 +87,7 @@ FW_VERSIONS = {
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'LB5A-14C204-ATJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'LB5A-14C204-ATJ\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'LB5A-14C204-ATS\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'LB5A-14C204-AUJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'LB5A-14C204-AUJ\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'LB5A-14C204-AZL\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'LB5A-14C204-AZL\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'LB5A-14C204-BUJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'LB5A-14C204-BUJ\x00\x00\x00\x00\x00\x00\x00\x00\x00',
@ -96,7 +97,6 @@ FW_VERSIONS = {
b'NB5A-14C204-AZD\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'NB5A-14C204-AZD\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'NB5A-14C204-HB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'NB5A-14C204-HB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PB5A-14C204-DA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PB5A-14C204-DA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'LB5A-14C204-ATS\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
}, },
CAR.F_150_MK14: { CAR.F_150_MK14: {
@ -145,8 +145,8 @@ FW_VERSIONS = {
b'ML3T-14H102-ABS\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'ML3T-14H102-ABS\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'NJ98-14C204-VH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'MJ98-14C204-BBS\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'MJ98-14C204-BBS\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'NJ98-14C204-VH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
}, },
CAR.FOCUS_MK4: { CAR.FOCUS_MK4: {

@ -27,7 +27,6 @@ FW_VERSIONS = {
b'37805-6A0-A930\x00\x00', b'37805-6A0-A930\x00\x00',
b'37805-6A0-AF30\x00\x00', b'37805-6A0-AF30\x00\x00',
b'37805-6A0-AG30\x00\x00', b'37805-6A0-AG30\x00\x00',
b'37805-6B2-C520\x00\x00',
b'37805-6A0-C540\x00\x00', b'37805-6A0-C540\x00\x00',
b'37805-6A1-H650\x00\x00', b'37805-6A1-H650\x00\x00',
b'37805-6B2-A550\x00\x00', b'37805-6B2-A550\x00\x00',
@ -38,6 +37,7 @@ FW_VERSIONS = {
b'37805-6B2-A810\x00\x00', b'37805-6B2-A810\x00\x00',
b'37805-6B2-A820\x00\x00', b'37805-6B2-A820\x00\x00',
b'37805-6B2-A920\x00\x00', b'37805-6B2-A920\x00\x00',
b'37805-6B2-C520\x00\x00',
b'37805-6B2-M520\x00\x00', b'37805-6B2-M520\x00\x00',
b'37805-6B2-Y810\x00\x00', b'37805-6B2-Y810\x00\x00',
b'37805-6M4-B730\x00\x00', b'37805-6M4-B730\x00\x00',
@ -66,11 +66,11 @@ FW_VERSIONS = {
b'28102-6B8-R700\x00\x00', b'28102-6B8-R700\x00\x00',
], ],
(Ecu.electricBrakeBooster, 0x18da2bf1, None): [ (Ecu.electricBrakeBooster, 0x18da2bf1, None): [
b'46114-TVA-A050\x00\x00',
b'46114-TVA-A060\x00\x00', b'46114-TVA-A060\x00\x00',
b'46114-TVA-A080\x00\x00', b'46114-TVA-A080\x00\x00',
b'46114-TVA-A120\x00\x00', b'46114-TVA-A120\x00\x00',
b'46114-TVA-A320\x00\x00', b'46114-TVA-A320\x00\x00',
b'46114-TVA-A050\x00\x00',
b'46114-TVE-H550\x00\x00', b'46114-TVE-H550\x00\x00',
b'46114-TVE-H560\x00\x00', b'46114-TVE-H560\x00\x00',
], ],
@ -88,13 +88,13 @@ FW_VERSIONS = {
], ],
(Ecu.eps, 0x18da30f1, None): [ (Ecu.eps, 0x18da30f1, None): [
b'39990-TBX-H120\x00\x00', b'39990-TBX-H120\x00\x00',
b'39990-TVA,A150\x00\x00',
b'39990-TVA-A140\x00\x00', b'39990-TVA-A140\x00\x00',
b'39990-TVA-A150\x00\x00', b'39990-TVA-A150\x00\x00',
b'39990-TVA-A160\x00\x00', b'39990-TVA-A160\x00\x00',
b'39990-TVA-A340\x00\x00', b'39990-TVA-A340\x00\x00',
b'39990-TVA-X030\x00\x00', b'39990-TVA-X030\x00\x00',
b'39990-TVA-X040\x00\x00', b'39990-TVA-X040\x00\x00',
b'39990-TVA,A150\x00\x00',
b'39990-TVE-H130\x00\x00', b'39990-TVE-H130\x00\x00',
], ],
(Ecu.unknown, 0x18da3af1, None): [ (Ecu.unknown, 0x18da3af1, None): [
@ -199,9 +199,9 @@ FW_VERSIONS = {
b'78109-TWA-A210\x00\x00', b'78109-TWA-A210\x00\x00',
b'78109-TWA-A220\x00\x00', b'78109-TWA-A220\x00\x00',
b'78109-TWA-A230\x00\x00', b'78109-TWA-A230\x00\x00',
b'78109-TWA-H210\x00\x00',
b'78109-TWA-L010\x00\x00', b'78109-TWA-L010\x00\x00',
b'78109-TWA-L210\x00\x00', b'78109-TWA-L210\x00\x00',
b'78109-TWA-H210\x00\x00',
], ],
(Ecu.shiftByWire, 0x18da0bf1, None): [ (Ecu.shiftByWire, 0x18da0bf1, None): [
b'54008-TWA-A910\x00\x00', b'54008-TWA-A910\x00\x00',
@ -222,8 +222,8 @@ FW_VERSIONS = {
b'36802-TWB-H060\x00\x00', b'36802-TWB-H060\x00\x00',
], ],
(Ecu.eps, 0x18da30f1, None): [ (Ecu.eps, 0x18da30f1, None): [
b'39990-TVA-A160\x00\x00',
b'39990-TVA-A150\x00\x00', b'39990-TVA-A150\x00\x00',
b'39990-TVA-A160\x00\x00',
b'39990-TVA-A340\x00\x00', b'39990-TVA-A340\x00\x00',
b'39990-TWB-H120\x00\x00', b'39990-TWB-H120\x00\x00',
], ],
@ -489,16 +489,16 @@ FW_VERSIONS = {
b'36161-TGG-A080\x00\x00', b'36161-TGG-A080\x00\x00',
b'36161-TGG-A120\x00\x00', b'36161-TGG-A120\x00\x00',
b'36161-TGG-G050\x00\x00', b'36161-TGG-G050\x00\x00',
b'36161-TGG-G070\x00\x00',
b'36161-TGG-G130\x00\x00', b'36161-TGG-G130\x00\x00',
b'36161-TGG-G140\x00\x00', b'36161-TGG-G140\x00\x00',
b'36161-TGK-Q120\x00\x00', b'36161-TGK-Q120\x00\x00',
b'36161-TGL-G050\x00\x00', b'36161-TGL-G050\x00\x00',
b'36161-TGL-G070\x00\x00', b'36161-TGL-G070\x00\x00',
b'36161-TGG-G070\x00\x00',
], ],
(Ecu.gateway, 0x18daeff1, None): [ (Ecu.gateway, 0x18daeff1, None): [
b'38897-TBA-A110\x00\x00',
b'38897-TBA-A020\x00\x00', b'38897-TBA-A020\x00\x00',
b'38897-TBA-A110\x00\x00',
], ],
(Ecu.electricBrakeBooster, 0x18da2bf1, None): [ (Ecu.electricBrakeBooster, 0x18da2bf1, None): [
b'39494-TGL-G030\x00\x00', b'39494-TGL-G030\x00\x00',
@ -564,7 +564,6 @@ FW_VERSIONS = {
}, },
CAR.CRV_5G: { CAR.CRV_5G: {
(Ecu.programmedFuelInjection, 0x18da10f1, None): [ (Ecu.programmedFuelInjection, 0x18da10f1, None): [
b'37805-5PA-AH20\x00\x00',
b'37805-5PA-3060\x00\x00', b'37805-5PA-3060\x00\x00',
b'37805-5PA-3080\x00\x00', b'37805-5PA-3080\x00\x00',
b'37805-5PA-3180\x00\x00', b'37805-5PA-3180\x00\x00',
@ -590,6 +589,7 @@ FW_VERSIONS = {
b'37805-5PA-AB10\x00\x00', b'37805-5PA-AB10\x00\x00',
b'37805-5PA-AD10\x00\x00', b'37805-5PA-AD10\x00\x00',
b'37805-5PA-AF20\x00\x00', b'37805-5PA-AF20\x00\x00',
b'37805-5PA-AH20\x00\x00',
b'37805-5PA-C680\x00\x00', b'37805-5PA-C680\x00\x00',
b'37805-5PD-Q630\x00\x00', b'37805-5PD-Q630\x00\x00',
b'37805-5PF-F730\x00\x00', b'37805-5PF-F730\x00\x00',
@ -619,10 +619,10 @@ FW_VERSIONS = {
b'57114-TMC-Z050\x00\x00', b'57114-TMC-Z050\x00\x00',
], ],
(Ecu.eps, 0x18da30f1, None): [ (Ecu.eps, 0x18da30f1, None): [
b'39990-TLA,A040\x00\x00',
b'39990-TLA-A040\x00\x00', b'39990-TLA-A040\x00\x00',
b'39990-TLA-A110\x00\x00', b'39990-TLA-A110\x00\x00',
b'39990-TLA-A220\x00\x00', b'39990-TLA-A220\x00\x00',
b'39990-TLA,A040\x00\x00',
b'39990-TME-T030\x00\x00', b'39990-TME-T030\x00\x00',
b'39990-TME-T120\x00\x00', b'39990-TME-T120\x00\x00',
b'39990-TMT-T010\x00\x00', b'39990-TMT-T010\x00\x00',
@ -705,8 +705,8 @@ FW_VERSIONS = {
b'28103-5LH-E100\x00\x00', b'28103-5LH-E100\x00\x00',
], ],
(Ecu.combinationMeter, 0x18da60f1, None): [ (Ecu.combinationMeter, 0x18da60f1, None): [
b'78109-T1V-G020\x00\x00',
b'78109-T1B-3050\x00\x00', b'78109-T1B-3050\x00\x00',
b'78109-T1V-G020\x00\x00',
], ],
(Ecu.srs, 0x18da53f1, None): [ (Ecu.srs, 0x18da53f1, None): [
b'77959-T1G-G940\x00\x00', b'77959-T1G-G940\x00\x00',
@ -714,14 +714,14 @@ FW_VERSIONS = {
}, },
CAR.CRV_HYBRID: { CAR.CRV_HYBRID: {
(Ecu.vsa, 0x18da28f1, None): [ (Ecu.vsa, 0x18da28f1, None): [
b'57114-TMB-H030\x00\x00',
b'57114-TPA-G020\x00\x00', b'57114-TPA-G020\x00\x00',
b'57114-TPG-A020\x00\x00', b'57114-TPG-A020\x00\x00',
b'57114-TMB-H030\x00\x00',
], ],
(Ecu.eps, 0x18da30f1, None): [ (Ecu.eps, 0x18da30f1, None): [
b'39990-TMA-H020\x00\x00',
b'39990-TPA-G030\x00\x00', b'39990-TPA-G030\x00\x00',
b'39990-TPG-A020\x00\x00', b'39990-TPG-A020\x00\x00',
b'39990-TMA-H020\x00\x00',
], ],
(Ecu.gateway, 0x18daeff1, None): [ (Ecu.gateway, 0x18daeff1, None): [
b'38897-TMA-H110\x00\x00', b'38897-TMA-H110\x00\x00',
@ -748,9 +748,9 @@ FW_VERSIONS = {
b'78209-TLA-X010\x00\x00', b'78209-TLA-X010\x00\x00',
], ],
(Ecu.fwdRadar, 0x18dab0f1, None): [ (Ecu.fwdRadar, 0x18dab0f1, None): [
b'36802-TMB-H040\x00\x00',
b'36802-TPA-E040\x00\x00', b'36802-TPA-E040\x00\x00',
b'36802-TPG-A020\x00\x00', b'36802-TPG-A020\x00\x00',
b'36802-TMB-H040\x00\x00',
], ],
(Ecu.srs, 0x18da53f1, None): [ (Ecu.srs, 0x18da53f1, None): [
b'77959-TLA-C320\x00\x00', b'77959-TLA-C320\x00\x00',
@ -931,8 +931,8 @@ FW_VERSIONS = {
b'28101-5EZ-A060\x00\x00', b'28101-5EZ-A060\x00\x00',
b'28101-5EZ-A100\x00\x00', b'28101-5EZ-A100\x00\x00',
b'28101-5EZ-A210\x00\x00', b'28101-5EZ-A210\x00\x00',
b'28101-5EZ-A600\x00\x00',
b'28101-5EZ-A430\x00\x00', b'28101-5EZ-A430\x00\x00',
b'28101-5EZ-A600\x00\x00',
b'28101-5EZ-A700\x00\x00', b'28101-5EZ-A700\x00\x00',
], ],
(Ecu.programmedFuelInjection, 0x18da10f1, None): [ (Ecu.programmedFuelInjection, 0x18da10f1, None): [
@ -940,16 +940,16 @@ FW_VERSIONS = {
b'37805-RLV-4070\x00\x00', b'37805-RLV-4070\x00\x00',
b'37805-RLV-A830\x00\x00', b'37805-RLV-A830\x00\x00',
b'37805-RLV-A840\x00\x00', b'37805-RLV-A840\x00\x00',
b'37805-RLV-B210\x00\x00',
b'37805-RLV-B220\x00\x00',
b'37805-RLV-B420\x00\x00',
b'37805-RLV-C430\x00\x00', b'37805-RLV-C430\x00\x00',
b'37805-RLV-C510\x00\x00', b'37805-RLV-C510\x00\x00',
b'37805-RLV-C520\x00\x00', b'37805-RLV-C520\x00\x00',
b'37805-RLV-C530\x00\x00', b'37805-RLV-C530\x00\x00',
b'37805-RLV-C910\x00\x00', b'37805-RLV-C910\x00\x00',
b'37805-RLV-B220\x00\x00',
b'37805-RLV-B210\x00\x00',
b'37805-RLV-L160\x00\x00',
b'37805-RLV-B420\x00\x00',
b'37805-RLV-F120\x00\x00', b'37805-RLV-F120\x00\x00',
b'37805-RLV-L160\x00\x00',
], ],
(Ecu.gateway, 0x18daeff1, None): [ (Ecu.gateway, 0x18daeff1, None): [
b'38897-TG7-A030\x00\x00', b'38897-TG7-A030\x00\x00',
@ -980,11 +980,11 @@ FW_VERSIONS = {
b'36161-TG8-A630\x00\x00', b'36161-TG8-A630\x00\x00',
b'36161-TG8-A720\x00\x00', b'36161-TG8-A720\x00\x00',
b'36161-TG8-A830\x00\x00', b'36161-TG8-A830\x00\x00',
b'36161-TGS-A030\x00\x00',
b'36161-TGS-A130\x00\x00', b'36161-TGS-A130\x00\x00',
b'36161-TGS-A220\x00\x00',
b'36161-TGT-A030\x00\x00', b'36161-TGT-A030\x00\x00',
b'36161-TGT-A130\x00\x00', b'36161-TGT-A130\x00\x00',
b'36161-TGS-A030\x00\x00',
b'36161-TGS-A220\x00\x00',
], ],
(Ecu.srs, 0x18da53f1, None): [ (Ecu.srs, 0x18da53f1, None): [
b'77959-TG7-A020\x00\x00', b'77959-TG7-A020\x00\x00',
@ -1019,14 +1019,14 @@ FW_VERSIONS = {
b'78109-TG8-AJ10\x00\x00', b'78109-TG8-AJ10\x00\x00',
b'78109-TG8-AJ20\x00\x00', b'78109-TG8-AJ20\x00\x00',
b'78109-TG8-AK20\x00\x00', b'78109-TG8-AK20\x00\x00',
b'78109-TGS-AC10\x00\x00',
b'78109-TGS-AJ20\x00\x00',
b'78109-TGS-AK20\x00\x00', b'78109-TGS-AK20\x00\x00',
b'78109-TGS-AP20\x00\x00', b'78109-TGS-AP20\x00\x00',
b'78109-TGT-AJ20\x00\x00',
b'78109-TGT-AK30\x00\x00',
b'78109-TGS-AT20\x00\x00', b'78109-TGS-AT20\x00\x00',
b'78109-TGS-AX20\x00\x00', b'78109-TGS-AX20\x00\x00',
b'78109-TGS-AJ20\x00\x00', b'78109-TGT-AJ20\x00\x00',
b'78109-TGS-AC10\x00\x00', b'78109-TGT-AK30\x00\x00',
], ],
(Ecu.vsa, 0x18da28f1, None): [ (Ecu.vsa, 0x18da28f1, None): [
b'57114-TG7-A130\x00\x00', b'57114-TG7-A130\x00\x00',
@ -1045,22 +1045,22 @@ FW_VERSIONS = {
}, },
CAR.ACURA_RDX: { CAR.ACURA_RDX: {
(Ecu.vsa, 0x18da28f1, None): [ (Ecu.vsa, 0x18da28f1, None): [
b'57114-TX5-A220\x00\x00',
b'57114-TX4-A220\x00\x00', b'57114-TX4-A220\x00\x00',
b'57114-TX5-A220\x00\x00',
], ],
(Ecu.fwdRadar, 0x18dab0f1, None): [ (Ecu.fwdRadar, 0x18dab0f1, None): [
b'36161-TX5-A030\x00\x00',
b'36161-TX4-A030\x00\x00', b'36161-TX4-A030\x00\x00',
b'36161-TX5-A030\x00\x00',
], ],
(Ecu.srs, 0x18da53f1, None): [ (Ecu.srs, 0x18da53f1, None): [
b'77959-TX4-C010\x00\x00',
b'77959-TX4-B010\x00\x00', b'77959-TX4-B010\x00\x00',
b'77959-TX4-C010\x00\x00',
b'77959-TX4-C020\x00\x00', b'77959-TX4-C020\x00\x00',
], ],
(Ecu.combinationMeter, 0x18da60f1, None): [ (Ecu.combinationMeter, 0x18da60f1, None): [
b'78109-TX5-A310\x00\x00',
b'78109-TX4-A210\x00\x00', b'78109-TX4-A210\x00\x00',
b'78109-TX4-A310\x00\x00', b'78109-TX4-A310\x00\x00',
b'78109-TX5-A310\x00\x00',
], ],
}, },
CAR.ACURA_RDX_3G: { CAR.ACURA_RDX_3G: {
@ -1217,9 +1217,9 @@ FW_VERSIONS = {
(Ecu.combinationMeter, 0x18da60f1, None): [ (Ecu.combinationMeter, 0x18da60f1, None): [
b'78109-TXM-A010\x00\x00', b'78109-TXM-A010\x00\x00',
b'78109-TXM-A020\x00\x00', b'78109-TXM-A020\x00\x00',
b'78109-TXM-A030\x00\x00',
b'78109-TXM-A110\x00\x00', b'78109-TXM-A110\x00\x00',
b'78109-TXM-C010\x00\x00', b'78109-TXM-C010\x00\x00',
b'78109-TXM-A030\x00\x00',
], ],
}, },
CAR.HRV: { CAR.HRV: {
@ -1231,21 +1231,21 @@ FW_VERSIONS = {
b'39990-THX-A020\x00\x00', b'39990-THX-A020\x00\x00',
], ],
(Ecu.fwdRadar, 0x18dab0f1, None): [ (Ecu.fwdRadar, 0x18dab0f1, None): [
b'36161-T7A-A040\x00\x00',
b'36161-T7A-A140\x00\x00', b'36161-T7A-A140\x00\x00',
b'36161-T7A-A240\x00\x00', b'36161-T7A-A240\x00\x00',
b'36161-T7A-C440\x00\x00', b'36161-T7A-C440\x00\x00',
b'36161-T7A-A040\x00\x00',
], ],
(Ecu.srs, 0x18da53f1, None): [ (Ecu.srs, 0x18da53f1, None): [
b'77959-T7A-A230\x00\x00', b'77959-T7A-A230\x00\x00',
], ],
(Ecu.combinationMeter, 0x18da60f1, None): [ (Ecu.combinationMeter, 0x18da60f1, None): [
b'78109-THW-A110\x00\x00',
b'78109-THX-A110\x00\x00', b'78109-THX-A110\x00\x00',
b'78109-THX-A120\x00\x00', b'78109-THX-A120\x00\x00',
b'78109-THX-A210\x00\x00', b'78109-THX-A210\x00\x00',
b'78109-THX-A220\x00\x00', b'78109-THX-A220\x00\x00',
b'78109-THX-C220\x00\x00', b'78109-THX-C220\x00\x00',
b'78109-THW-A110\x00\x00',
], ],
}, },
CAR.HRV_3G: { CAR.HRV_3G: {
@ -1320,45 +1320,45 @@ FW_VERSIONS = {
}, },
CAR.CIVIC_2022: { CAR.CIVIC_2022: {
(Ecu.eps, 0x18da30f1, None): [ (Ecu.eps, 0x18da30f1, None): [
b'39990-T24-T120\x00\x00',
b'39990-T39-A130\x00\x00', b'39990-T39-A130\x00\x00',
b'39990-T43-J020\x00\x00', b'39990-T43-J020\x00\x00',
b'39990-T24-T120\x00\x00',
], ],
(Ecu.gateway, 0x18daeff1, None): [ (Ecu.gateway, 0x18daeff1, None): [
b'38897-T20-A020\x00\x00', b'38897-T20-A020\x00\x00',
b'38897-T20-A510\x00\x00',
b'38897-T21-A010\x00\x00',
b'38897-T20-A210\x00\x00', b'38897-T20-A210\x00\x00',
b'38897-T20-A310\x00\x00', b'38897-T20-A310\x00\x00',
b'38897-T20-A510\x00\x00',
b'38897-T21-A010\x00\x00',
b'38897-T24-Z120\x00\x00', b'38897-T24-Z120\x00\x00',
], ],
(Ecu.srs, 0x18da53f1, None): [ (Ecu.srs, 0x18da53f1, None): [
b'77959-T20-A970\x00\x00', b'77959-T20-A970\x00\x00',
b'77959-T20-A980\x00\x00',
b'77959-T20-M820\x00\x00',
b'77959-T47-A940\x00\x00', b'77959-T47-A940\x00\x00',
b'77959-T47-A950\x00\x00', b'77959-T47-A950\x00\x00',
b'77959-T20-M820\x00\x00',
b'77959-T20-A980\x00\x00',
], ],
(Ecu.combinationMeter, 0x18da60f1, None): [ (Ecu.combinationMeter, 0x18da60f1, None): [
b'78108-T21-A220\x00\x00', b'78108-T21-A220\x00\x00',
b'78108-T21-A620\x00\x00',
b'78108-T23-A110\x00\x00',
b'78108-T21-A230\x00\x00', b'78108-T21-A230\x00\x00',
b'78108-T22-A020\x00\x00', b'78108-T21-A620\x00\x00',
b'78108-T21-MB10\x00\x00',
b'78108-T21-A740\x00\x00', b'78108-T21-A740\x00\x00',
b'78108-T21-MB10\x00\x00',
b'78108-T22-A020\x00\x00',
b'78108-T23-A110\x00\x00',
], ],
(Ecu.fwdRadar, 0x18dab0f1, None): [ (Ecu.fwdRadar, 0x18dab0f1, None): [
b'36161-T20-A060\x00\x00',
b'36161-T20-A070\x00\x00', b'36161-T20-A070\x00\x00',
b'36161-T20-A080\x00\x00', b'36161-T20-A080\x00\x00',
b'36161-T20-A060\x00\x00',
b'36161-T47-A070\x00\x00',
b'36161-T24-T070\x00\x00', b'36161-T24-T070\x00\x00',
b'36161-T47-A070\x00\x00',
], ],
(Ecu.vsa, 0x18da28f1, None): [ (Ecu.vsa, 0x18da28f1, None): [
b'57114-T20-AB40\x00\x00', b'57114-T20-AB40\x00\x00',
b'57114-T43-JB30\x00\x00',
b'57114-T24-TB30\x00\x00', b'57114-T24-TB30\x00\x00',
b'57114-T43-JB30\x00\x00',
], ],
(Ecu.transmission, 0x18da1ef1, None): [ (Ecu.transmission, 0x18da1ef1, None): [
b'28101-65D-A020\x00\x00', b'28101-65D-A020\x00\x00',
@ -1368,12 +1368,12 @@ FW_VERSIONS = {
b'28101-65J-N010\x00\x00', b'28101-65J-N010\x00\x00',
], ],
(Ecu.programmedFuelInjection, 0x18da10f1, None): [ (Ecu.programmedFuelInjection, 0x18da10f1, None): [
b'37805-64L-A540\x00\x00',
b'37805-64S-A540\x00\x00',
b'37805-64S-A720\x00\x00',
b'37805-64A-A540\x00\x00', b'37805-64A-A540\x00\x00',
b'37805-64A-A620\x00\x00', b'37805-64A-A620\x00\x00',
b'37805-64D-P510\x00\x00', b'37805-64D-P510\x00\x00',
b'37805-64L-A540\x00\x00',
b'37805-64S-A540\x00\x00',
b'37805-64S-A720\x00\x00',
b'37805-64S-AA10\x00\x00', b'37805-64S-AA10\x00\x00',
], ],
}, },

File diff suppressed because it is too large Load Diff

@ -9,13 +9,13 @@ FW_VERSIONS = {
b'KSD5-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'KSD5-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'PEW5-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2G-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX2G-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2H-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX2H-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2H-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX2H-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX85-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX85-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'SH54-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXFG-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXFG-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PEW5-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'SH54-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x764, None): [ (Ecu.fwdRadar, 0x764, None): [
b'K131-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'K131-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
@ -30,13 +30,13 @@ FW_VERSIONS = {
b'GSH7-67XK2-U\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): [ (Ecu.transmission, 0x7e1, None): [
b'PYB2-21PS1-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PG69-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYB2-21PS1-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'SH51-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXDL-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXDL-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXFG-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXFG-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXFG-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXFG-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PG69-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PYB2-21PS1-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYB2-21PS1-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'SH51-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
}, },
CAR.CX5: { CAR.CX5: {
@ -50,10 +50,6 @@ FW_VERSIONS = {
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'PA53-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PA53-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PAR4-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PAR4-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFA-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFC-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFD-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYNF-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2E-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX2E-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2F-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX2F-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX2G-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX2G-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
@ -64,6 +60,10 @@ FW_VERSIONS = {
b'PX38-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX38-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX42-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX42-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PX68-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PX68-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFA-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFC-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFD-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYNF-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'SHKT-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'SHKT-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x764, None): [ (Ecu.fwdRadar, 0x764, None): [
@ -150,12 +150,12 @@ FW_VERSIONS = {
b'PXM4-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXM4-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXM7-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXM7-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXM7-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXM7-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFM-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFM-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYD5-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PYD5-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYD5-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PYD5-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYD6-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PYD6-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYD6-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PYD6-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFM-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYFM-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
}, },
CAR.MAZDA3: { CAR.MAZDA3: {
@ -186,8 +186,8 @@ FW_VERSIONS = {
b'B61L-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'B61L-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'PY2S-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'P52G-21PS1-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'P52G-21PS1-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PY2S-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYKA-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PYKA-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYKE-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PYKE-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PYKE-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PYKE-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
@ -230,11 +230,11 @@ FW_VERSIONS = {
b'TC3M-3210X-A-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'TC3M-3210X-A-00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'PXGW-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXGW-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXGW-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXM4-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXM4-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXM4-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXM4-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXM6-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'PXM6-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'PXGW-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x764, None): [ (Ecu.fwdRadar, 0x764, None): [
b'K131-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'K131-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',

@ -60,23 +60,23 @@ FW_VERSIONS = {
CAR.LEAF_IC: { CAR.LEAF_IC: {
(Ecu.fwdCamera, 0x707, None): [ (Ecu.fwdCamera, 0x707, None): [
b'5SH1BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80', b'5SH1BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80',
b'5SK0ADB\x04\x18\x00\x00\x00\x00\x00_(5\x07\x9aQ\x00\x00\x00\x80',
b'5SH4BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80', b'5SH4BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80',
b'5SK0ADB\x04\x18\x00\x00\x00\x00\x00_(5\x07\x9aQ\x00\x00\x00\x80',
], ],
(Ecu.abs, 0x740, None): [ (Ecu.abs, 0x740, None): [
b'476605SD2E',
b'476605SH1D', b'476605SH1D',
b'476605SK2A', b'476605SK2A',
b'476605SD2E',
], ],
(Ecu.eps, 0x742, None): [ (Ecu.eps, 0x742, None): [
b'5SH2A\x99A\x05\x02N123F\x15\x81\x00\x00\x00\x00\x00\x00\x00\x80', b'5SH2A\x99A\x05\x02N123F\x15\x81\x00\x00\x00\x00\x00\x00\x00\x80',
b'5SK3A\x99A\x05\x02N123F\x15u\x00\x00\x00\x00\x00\x00\x00\x80',
b'5SH2C\xb7A\x05\x02N123F\x15\xa3\x00\x00\x00\x00\x00\x00\x00\x80', b'5SH2C\xb7A\x05\x02N123F\x15\xa3\x00\x00\x00\x00\x00\x00\x00\x80',
b'5SK3A\x99A\x05\x02N123F\x15u\x00\x00\x00\x00\x00\x00\x00\x80',
], ],
(Ecu.gateway, 0x18dad0f1, None): [ (Ecu.gateway, 0x18dad0f1, None): [
b'284U25SF0C',
b'284U25SH3A', b'284U25SH3A',
b'284U25SK2D', b'284U25SK2D',
b'284U25SF0C',
], ],
}, },
CAR.XTRAIL: { CAR.XTRAIL: {
@ -84,8 +84,8 @@ FW_VERSIONS = {
b'284N86FR2A', b'284N86FR2A',
], ],
(Ecu.abs, 0x740, None): [ (Ecu.abs, 0x740, None): [
b'6FU1BD\x11\x02\x00\x02e\x95e\x80iX#\x01\x00\x00\x00\x00\x00\x80',
b'6FU0AD\x11\x02\x00\x02e\x95e\x80iQ#\x01\x00\x00\x00\x00\x00\x80', b'6FU0AD\x11\x02\x00\x02e\x95e\x80iQ#\x01\x00\x00\x00\x00\x00\x80',
b'6FU1BD\x11\x02\x00\x02e\x95e\x80iX#\x01\x00\x00\x00\x00\x00\x80',
], ],
(Ecu.eps, 0x742, None): [ (Ecu.eps, 0x742, None): [
b'6FP2A\x99A\x05\x02N123F\x18\x02\x00\x00\x00\x00\x00\x00\x00\x80', b'6FP2A\x99A\x05\x02N123F\x18\x02\x00\x00\x00\x00\x00\x00\x00\x80',
@ -94,8 +94,8 @@ FW_VERSIONS = {
b'6FR2A\x18B\x05\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80', b'6FR2A\x18B\x05\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'6FU9B\xa0A\x06\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80',
b'6FR9A\xa0A\x06\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80', b'6FR9A\xa0A\x06\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80',
b'6FU9B\xa0A\x06\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80',
], ],
(Ecu.gateway, 0x18dad0f1, None): [ (Ecu.gateway, 0x18dad0f1, None): [
b'284U26FR0E', b'284U26FR0E',

@ -11,29 +11,29 @@ FW_VERSIONS = {
b'\xf1\x82\xa5 \x19\x02\x00', b'\xf1\x82\xa5 \x19\x02\x00',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'\x85\xc0\xd0\x00',
b'\x05\xc0\xd0\x00', b'\x05\xc0\xd0\x00',
b'\x85\xc0\xd0\x00',
b'\x95\xc0\xd0\x00', b'\x95\xc0\xd0\x00',
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00d\xb9\x1f@ \x10',
b"\x00\x00e~\x1f@ '",
b'\x00\x00e@\x1f@ $',
b'\x00\x00d\xb9\x00\x00\x00\x00', b'\x00\x00d\xb9\x00\x00\x00\x00',
b'\x00\x00d\xb9\x1f@ \x10',
b'\x00\x00e@\x00\x00\x00\x00', b'\x00\x00e@\x00\x00\x00\x00',
b'\x00\x00e@\x1f@ $',
b"\x00\x00e~\x1f@ '",
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xbb,\xa0t\x07', b'\xbb,\xa0t\x07',
b'\xf1\x82\xbb,\xa0t\x87', b'\xd1,\xa0q\x07',
b'\xf1\x82\xbb,\xa0t\x07', b'\xf1\x82\xbb,\xa0t\x07',
b'\xf1\x82\xd9,\xa0@\x07', b'\xf1\x82\xbb,\xa0t\x87',
b'\xf1\x82\xd1,\xa0q\x07', b'\xf1\x82\xd1,\xa0q\x07',
b'\xd1,\xa0q\x07', b'\xf1\x82\xd9,\xa0@\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\x00\xfe\xf7\x00\x00', b'\x00\xfe\xf7\x00\x00',
b'\x01\xfe\xf9\x00\x00',
b'\x01\xfe\xf7\x00\x00', b'\x01\xfe\xf7\x00\x00',
b'\x01\xfe\xf9\x00\x00',
b'\x01\xfe\xfa\x00\x00', b'\x01\xfe\xfa\x00\x00',
], ],
}, },
@ -56,10 +56,10 @@ FW_VERSIONS = {
}, },
CAR.LEGACY: { CAR.LEGACY: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\xa1\\ x04\x01',
b'\xa1 \x03\x03',
b'\xa1 \x02\x01', b'\xa1 \x02\x01',
b'\xa1 \x02\x02', b'\xa1 \x02\x02',
b'\xa1 \x03\x03',
b'\xa1\\ x04\x01',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'\x9b\xc0\x11\x00', b'\x9b\xc0\x11\x00',
@ -71,150 +71,150 @@ FW_VERSIONS = {
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xde"a0\x07', b'\xde"a0\x07',
b'\xe2"aq\x07',
b'\xde,\xa0@\x07', b'\xde,\xa0@\x07',
b'\xe2"aq\x07',
b'\xe2,\xa0@\x07', b'\xe2,\xa0@\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xa5\xf6\x05@\x00', b'\xa5\xf6\x05@\x00',
b'\xa7\xf6\x04@\x00',
b'\xa5\xfe\xc7@\x00', b'\xa5\xfe\xc7@\x00',
b'\xa7\xf6\x04@\x00',
b'\xa7\xfe\xc4@\x00', b'\xa7\xfe\xc4@\x00',
], ],
}, },
CAR.IMPREZA: { CAR.IMPREZA: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'z\x84\x19\x90\x00',
b'z\x94\x08\x90\x00',
b'z\x94\x08\x90\x01',
b'z\x94\x0c\x90\x00',
b'z\x94\x0c\x90\x01',
b'z\x94.\x90\x00',
b'z\x94?\x90\x00', b'z\x94?\x90\x00',
b'z\x9c\x19\x80\x01',
b'\xa2 \x185\x00', b'\xa2 \x185\x00',
b'\xa2 \x193\x00', b'\xa2 \x193\x00',
b'\xa2 \x194\x00', b'\xa2 \x194\x00',
b'z\x94.\x90\x00',
b'z\x94\x08\x90\x01',
b'\xa2 \x19`\x00', b'\xa2 \x19`\x00',
b'z\x94\x0c\x90\x01',
b'z\x9c\x19\x80\x01',
b'z\x94\x08\x90\x00',
b'z\x84\x19\x90\x00',
b'\xf1\x00\xb2\x06\x04', b'\xf1\x00\xb2\x06\x04',
b'z\x94\x0c\x90\x00',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'z\xc0\x0c\x00', b'z\xc0\x00\x00',
b'z\xc0\x04\x00',
b'z\xc0\x08\x00', b'z\xc0\x08\x00',
b'z\xc0\n\x00',
b'z\xc0\x0c\x00',
b'\x8a\xc0\x00\x00', b'\x8a\xc0\x00\x00',
b'z\xc0\x04\x00',
b'z\xc0\x00\x00',
b'\x8a\xc0\x10\x00', b'\x8a\xc0\x10\x00',
b'z\xc0\n\x00',
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00d\xb5\x1f@ \x0e', b'\x00\x00c\xf4\x00\x00\x00\x00',
b'\x00\x00d\xdc\x1f@ \x0e', b'\x00\x00c\xf4\x1f@ \x07',
b'\x00\x00e\x1c\x1f@ \x14', b'\x00\x00d)\x00\x00\x00\x00',
b'\x00\x00d)\x1f@ \x07', b'\x00\x00d)\x1f@ \x07',
b'\x00\x00e+\x1f@ \x14', b'\x00\x00dd\x00\x00\x00\x00',
b'\x00\x00e+\x00\x00\x00\x00',
b'\x00\x00dd\x1f@ \x0e', b'\x00\x00dd\x1f@ \x0e',
b'\x00\x00e\x02\x1f@ \x14', b'\x00\x00d\xb5\x1f@ \x0e',
b'\x00\x00d)\x00\x00\x00\x00',
b'\x00\x00c\xf4\x00\x00\x00\x00',
b'\x00\x00d\xdc\x00\x00\x00\x00', b'\x00\x00d\xdc\x00\x00\x00\x00',
b'\x00\x00dd\x00\x00\x00\x00', b'\x00\x00d\xdc\x1f@ \x0e',
b'\x00\x00c\xf4\x1f@ \x07', b'\x00\x00e\x02\x1f@ \x14',
b'\x00\x00e\x1c\x00\x00\x00\x00', b'\x00\x00e\x1c\x00\x00\x00\x00',
b'\x00\x00e\x1c\x1f@ \x14',
b'\x00\x00e+\x00\x00\x00\x00',
b'\x00\x00e+\x1f@ \x14',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xaaafs\x07', b'\xaa\x00Bu\x07',
b'\xbeacr\x07', b'\xaa\x01bt\x07',
b'\xc5!`r\x07',
b'\xaa!ds\x07',
b'\xaa!`u\x07', b'\xaa!`u\x07',
b'\xaa!au\x07',
b'\xaa!av\x07',
b'\xaa!aw\x07',
b'\xaa!dq\x07', b'\xaa!dq\x07',
b'\xaa!ds\x07',
b'\xaa!dt\x07', b'\xaa!dt\x07',
b'\xc5!ar\x07', b'\xaaafs\x07',
b'\xbe!as\x07', b'\xbe!as\x07',
b'\xc5!as\x07',
b'\xc5!ds\x07',
b'\xc5!`s\x07',
b'\xaa!au\x07',
b'\xbe!at\x07', b'\xbe!at\x07',
b'\xaa\x00Bu\x07', b'\xbeacr\x07',
b'\xc5!dr\x07', b'\xc5!`r\x07',
b'\xaa!aw\x07', b'\xc5!`s\x07',
b'\xaa!av\x07',
b'\xaa\x01bt\x07',
b'\xc5!ap\x07', b'\xc5!ap\x07',
b'\xc5!ar\x07',
b'\xc5!as\x07',
b'\xc5!dr\x07',
b'\xc5!ds\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xe3\xd0\x081\x00',
b'\xe3\xd5\x161\x00',
b'\xe3\xe5F1\x00', b'\xe3\xe5F1\x00',
b'\xe4\xe5\x061\x00', b'\xe3\xf5\x06\x00\x00',
b'\xe5\xf5\x04\x00\x00',
b'\xe3\xf5G\x00\x00',
b'\xe3\xf5\x07\x00\x00', b'\xe3\xf5\x07\x00\x00',
b'\xe3\xf5C\x00\x00', b'\xe3\xf5C\x00\x00',
b'\xe5\xf5B\x00\x00',
b'\xe5\xf5$\x00\x00',
b'\xe4\xf5\x07\x00\x00',
b'\xe3\xf5F\x00\x00', b'\xe3\xf5F\x00\x00',
b'\xe3\xf5G\x00\x00',
b'\xe4\xe5\x061\x00',
b'\xe4\xf5\x02\x00\x00', b'\xe4\xf5\x02\x00\x00',
b'\xe3\xd0\x081\x00', b'\xe4\xf5\x07\x00\x00',
b'\xe3\xf5\x06\x00\x00', b'\xe5\xf5\x04\x00\x00',
b'\xe3\xd5\x161\x00', b'\xe5\xf5$\x00\x00',
b'\xe5\xf5B\x00\x00',
], ],
}, },
CAR.IMPREZA_2020: { CAR.IMPREZA_2020: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\xa2 \x194\x00',
b'\xa2 \x193\x00', b'\xa2 \x193\x00',
b'\xa2 !i\x00', b'\xa2 \x194\x00',
b'\xa2 !`\x00',
b'\xf1\x00\xb2\x06\x04',
b'\xa2 `\x00', b'\xa2 `\x00',
b'\xa2 !3\x00', b'\xa2 !3\x00',
b'\xa2 !`\x00',
b'\xa2 !i\x00',
b'\xf1\x00\xb2\x06\x04',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'\x9a\xc0\x00\x00',
b'\n\xc0\x04\x00', b'\n\xc0\x04\x00',
b'\x9a\xc0\x04\x00',
b'\n\xc0\x04\x01', b'\n\xc0\x04\x01',
b'\x9a\xc0\x00\x00',
b'\x9a\xc0\x04\x00',
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00eb\x1f@ "', b'\x00\x00eb\x1f@ "',
b'\x00\x00e\x8f\x1f@ )',
b'\x00\x00eq\x1f@ "',
b'\x00\x00eq\x00\x00\x00\x00', b'\x00\x00eq\x00\x00\x00\x00',
b'\x00\x00eq\x1f@ "',
b'\x00\x00e\x8f\x00\x00\x00\x00', b'\x00\x00e\x8f\x00\x00\x00\x00',
b'\x00\x00e\x8f\x1f@ )',
b'\x00\x00e\x92\x00\x00\x00\x00', b'\x00\x00e\x92\x00\x00\x00\x00',
b'\x00\x00e\xa4\x00\x00\x00\x00', b'\x00\x00e\xa4\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xca!ap\x07',
b'\xca!`p\x07',
b'\xca!`0\x07', b'\xca!`0\x07',
b'\xcc"f0\x07', b'\xca!`p\x07',
b'\xcc!fp\x07', b'\xca!ap\x07',
b'\xcc!`p\x07',
b'\xca!f@\x07', b'\xca!f@\x07',
b'\xca!fp\x07', b'\xca!fp\x07',
b'\xf3"f@\x07', b'\xcc!`p\x07',
b'\xcc!fp\x07',
b'\xcc"f0\x07',
b'\xe6!`@\x07',
b'\xe6!fp\x07', b'\xe6!fp\x07',
b'\xf3"fp\x07',
b'\xe6"f0\x07', b'\xe6"f0\x07',
b'\xe6"fp\x07', b'\xe6"fp\x07',
b'\xe6!`@\x07', b'\xf3"f@\x07',
b'\xf3"fp\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xe6\xf5\x04\x00\x00', b'\xe6\xf5\x04\x00\x00',
b'\xe6\xf5$\x00\x00', b'\xe6\xf5$\x00\x00',
b'\xe6\xf5D0\x00',
b'\xe7\xf5\x04\x00\x00', b'\xe7\xf5\x04\x00\x00',
b'\xe7\xf6B0\x00',
b'\xe7\xf5D0\x00', b'\xe7\xf5D0\x00',
b'\xf1\x00\xd7\x10@', b'\xe7\xf6B0\x00',
b'\xe6\xf5D0\x00', b'\xe9\xf5"\x00\x00',
b'\xe9\xf6F0\x00',
b'\xe9\xf5B0\x00', b'\xe9\xf5B0\x00',
b'\xe9\xf6B0\x00', b'\xe9\xf6B0\x00',
b'\xe9\xf5"\x00\x00', b'\xe9\xf6F0\x00',
b'\xf1\x00\xd7\x10@',
], ],
}, },
CAR.CROSSTREK_HYBRID: { CAR.CROSSTREK_HYBRID: {
@ -223,8 +223,8 @@ FW_VERSIONS = {
b'\xa2 !e\x01', b'\xa2 !e\x01',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'\x9a\xc2\x01\x00',
b'\n\xc2\x01\x00', b'\n\xc2\x01\x00',
b'\x9a\xc2\x01\x00',
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00el\x1f@ #', b'\x00\x00el\x1f@ #',
@ -238,44 +238,44 @@ FW_VERSIONS = {
CAR.FORESTER: { CAR.FORESTER: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\xa3 \x18\x14\x00', b'\xa3 \x18\x14\x00',
b'\xa3 \x14\x00', b'\xa3 \x18&\x00',
b'\xa3 \x19\x14\x00', b'\xa3 \x19\x14\x00',
b'\xa3 \x19&\x00',
b'\xa3 \x14\x00',
b'\xa3 \x14\x01', b'\xa3 \x14\x01',
b'\xf1\x00\xbb\r\x05', b'\xf1\x00\xbb\r\x05',
b'\xa3 \x18&\x00',
b'\xa3 \x19&\x00',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'\x8d\xc0\x04\x00',
b'\x8d\xc0\x00\x00', b'\x8d\xc0\x00\x00',
b'\x8d\xc0\x04\x00',
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00e!\x00\x00\x00\x00',
b'\x00\x00e!\x1f@ \x11', b'\x00\x00e!\x1f@ \x11',
b'\x00\x00e\x97\x1f@ 0', b'\x00\x00e^\x00\x00\x00\x00',
b'\x00\x00e^\x1f@ !',
b'\x00\x00e`\x1f@ ', b'\x00\x00e`\x1f@ ',
b'\xf1\x00\xac\x02\x00',
b'\x00\x00e!\x00\x00\x00\x00',
b'\x00\x00e\x97\x00\x00\x00\x00', b'\x00\x00e\x97\x00\x00\x00\x00',
b'\x00\x00e^\x1f@ !', b'\x00\x00e\x97\x1f@ 0',
b'\x00\x00e^\x00\x00\x00\x00', b'\xf1\x00\xac\x02\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xb6"`A\x07', b'\xb6"`A\x07',
b'\xcf"`0\x07', b'\xb6\xa2`A\x07',
b'\xcb"`@\x07', b'\xcb"`@\x07',
b'\xcb"`p\x07', b'\xcb"`p\x07',
b'\xf1\x00\xa2\x10\n', b'\xcf"`0\x07',
b'\xcf"`p\x07', b'\xcf"`p\x07',
b'\xb6\xa2`A\x07', b'\xf1\x00\xa2\x10\n',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\x1a\xe6B1\x00',
b'\x1a\xe6F1\x00',
b'\x1a\xf6B0\x00', b'\x1a\xf6B0\x00',
b'\x1a\xf6F`\x00',
b'\x1a\xf6b`\x00',
b'\x1a\xf6B`\x00', b'\x1a\xf6B`\x00',
b'\x1a\xf6F`\x00',
b'\x1a\xf6b0\x00', b'\x1a\xf6b0\x00',
b'\x1a\xe6B1\x00', b'\x1a\xf6b`\x00',
b'\x1a\xe6F1\x00',
], ],
}, },
CAR.FORESTER_HYBRID: { CAR.FORESTER_HYBRID: {
@ -297,134 +297,134 @@ FW_VERSIONS = {
}, },
CAR.FORESTER_PREGLOBAL: { CAR.FORESTER_PREGLOBAL: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'm\x97\x14@',
b'}\x97\x14@', b'}\x97\x14@',
b'\xf1\x00\xbb\x0c\x04', b'\xf1\x00\xbb\x0c\x04',
b'm\x97\x14@',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'}\xc0\x10\x00',
b'm\xc0\x10\x00', b'm\xc0\x10\x00',
b'}\xc0\x10\x00',
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00d5\x1f@ \t', b'\x00\x00c\xe9\x00\x00\x00\x00',
b'\x00\x00c\xe9\x1f@ \x03', b'\x00\x00c\xe9\x1f@ \x03',
b'\x00\x00d5\x1f@ \t',
b'\x00\x00d\xd3\x1f@ \t', b'\x00\x00d\xd3\x1f@ \t',
b'\x00\x00c\xe9\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xba"@p\x07', b'\xa7"@p\x07',
b'\xa7)\xa0q\x07', b'\xa7)\xa0q\x07',
b'\xf1\x82\xa7)\xa0q\x07',
b'\xba"@@\x07', b'\xba"@@\x07',
b'\xa7"@p\x07', b'\xba"@p\x07',
b'\xf1\x82\xa7)\xa0q\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xdc\xf2``\x00',
b'\xdc\xf2@`\x00',
b'\xda\xfd\xe0\x80\x00',
b'\xdc\xf2`\x81\x00',
b'\xdc\xf2`\x80\x00',
b'\x1a\xf6F`\x00', b'\x1a\xf6F`\x00',
b'\xda\xf2`\x80\x00', b'\xda\xf2`\x80\x00',
b'\xda\xfd\xe0\x80\x00',
b'\xdc\xf2@`\x00',
b'\xdc\xf2``\x00',
b'\xdc\xf2`\x80\x00',
b'\xdc\xf2`\x81\x00',
], ],
}, },
CAR.LEGACY_PREGLOBAL: { CAR.LEGACY_PREGLOBAL: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'k\x97D\x00',
b'[\xba\xc4\x03',
b'{\x97D\x00',
b'[\x97D\x00', b'[\x97D\x00',
b'[\xba\xc4\x03',
b'k\x97D\x00',
b'k\x9aD\x00', b'k\x9aD\x00',
b'{\x97D\x00',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'[\xb0\x00\x01',
b'K\xb0\x00\x01', b'K\xb0\x00\x01',
b'[\xb0\x00\x01',
b'k\xb0\x00\x00', b'k\xb0\x00\x00',
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00c\xb7\x1f@\x10\x16',
b'\x00\x00c\x94\x1f@\x10\x08', b'\x00\x00c\x94\x1f@\x10\x08',
b'\x00\x00c\xb7\x1f@\x10\x16',
b'\x00\x00c\xec\x1f@ \x04', b'\x00\x00c\xec\x1f@ \x04',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xab*@r\x07',
b'\xa0+@p\x07',
b'\xb4"@0\x07',
b'\xa0"@q\x07', b'\xa0"@q\x07',
b'\xa0+@p\x07',
b'\xab*@r\x07',
b'\xab+@p\x07', b'\xab+@p\x07',
b'\xb4"@0\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xbe\xf2\x00p\x00',
b'\xbf\xfb\xc0\x80\x00',
b'\xbd\xf2\x00`\x00', b'\xbd\xf2\x00`\x00',
b'\xbf\xf2\x00\x80\x00', b'\xbe\xf2\x00p\x00',
b'\xbe\xfb\xc0p\x00', b'\xbe\xfb\xc0p\x00',
b'\xbf\xf2\x00\x80\x00',
b'\xbf\xfb\xc0\x80\x00',
], ],
}, },
CAR.OUTBACK_PREGLOBAL: { CAR.OUTBACK_PREGLOBAL: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'{\x9a\xac\x00',
b'k\x97\xac\x00',
b'[\xf7\xbc\x03',
b'[\xf7\xac\x03',
b'{\x97\xac\x00',
b'k\x9a\xac\x00',
b'[\xba\xac\x03', b'[\xba\xac\x03',
b'[\xf7\xac\x00', b'[\xf7\xac\x00',
b'[\xf7\xac\x03',
b'[\xf7\xbc\x03',
b'k\x97\xac\x00',
b'k\x9a\xac\x00',
b'{\x97\xac\x00',
b'{\x9a\xac\x00',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'k\xb0\x00\x00',
b'[\xb0\x00\x00',
b'K\xb0\x00\x02',
b'K\xb0\x00\x00', b'K\xb0\x00\x00',
b'K\xb0\x00\x02',
b'[\xb0\x00\x00',
b'k\xb0\x00\x00',
b'{\xb0\x00\x01', b'{\xb0\x00\x01',
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00c\xec\x1f@ \x04', b'\x00\x00c\x90\x1f@\x10\x0e',
b'\x00\x00c\xd1\x1f@\x10\x17',
b'\xf1\x00\xf0\xe0\x0e',
b'\x00\x00c\x94\x00\x00\x00\x00', b'\x00\x00c\x94\x00\x00\x00\x00',
b'\x00\x00c\x94\x1f@\x10\x08', b'\x00\x00c\x94\x1f@\x10\x08',
b'\x00\x00c\xb7\x1f@\x10\x16', b'\x00\x00c\xb7\x1f@\x10\x16',
b'\x00\x00c\x90\x1f@\x10\x0e', b'\x00\x00c\xd1\x1f@\x10\x17',
b'\x00\x00c\xec\x1f@ \x04',
b'\x00\x00c\xec7@\x04', b'\x00\x00c\xec7@\x04',
b'\xf1\x00\xf0\xe0\x0e',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xb4+@p\x07', b'\xa0"@\x80\x07',
b'\xab"@@\x07',
b'\xa0bAq\x07',
b'\xa0*@q\x07', b'\xa0*@q\x07',
b'\xa0*@u\x07',
b'\xa0+@@\x07',
b'\xa0bAq\x07',
b'\xab"@@\x07',
b'\xab"@s\x07',
b'\xab*@@\x07', b'\xab*@@\x07',
b'\xab+@@\x07',
b'\xb4"@0\x07', b'\xb4"@0\x07',
b'\xb4"@p\x07', b'\xb4"@p\x07',
b'\xab"@s\x07',
b'\xab+@@\x07',
b'\xb4"@r\x07', b'\xb4"@r\x07',
b'\xa0+@@\x07', b'\xb4+@p\x07',
b'\xa0"@\x80\x07',
b'\xa0*@u\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xbd\xf2@`\x00',
b'\xbd\xf2@\x81\x00',
b'\xbd\xfb\xe0\x80\x00', b'\xbd\xfb\xe0\x80\x00',
b'\xbe\xf2@p\x00',
b'\xbe\xf2@\x80\x00', b'\xbe\xf2@\x80\x00',
b'\xbe\xfb\xe0p\x00',
b'\xbf\xe2@\x80\x00', b'\xbf\xe2@\x80\x00',
b'\xbf\xf2@\x80\x00', b'\xbf\xf2@\x80\x00',
b'\xbe\xf2@p\x00',
b'\xbd\xf2@`\x00',
b'\xbd\xf2@\x81\x00',
b'\xbe\xfb\xe0p\x00',
b'\xbf\xfb\xe0b\x00', b'\xbf\xfb\xe0b\x00',
], ],
}, },
CAR.OUTBACK_PREGLOBAL_2018: { CAR.OUTBACK_PREGLOBAL_2018: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\x8b\x97\xac\x00', b'\x8b\x97\xac\x00',
b'\x8b\x9a\xac\x00',
b'\x9b\x97\xac\x00',
b'\x8b\x97\xbc\x00', b'\x8b\x97\xbc\x00',
b'\x8b\x99\xac\x00', b'\x8b\x99\xac\x00',
b'\x9b\x9a\xac\x00', b'\x8b\x9a\xac\x00',
b'\x9b\x97\xac\x00',
b'\x9b\x97\xbe\x10', b'\x9b\x97\xbe\x10',
b'\x9b\x9a\xac\x00',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'{\xb0\x00\x00', b'{\xb0\x00\x00',
@ -432,93 +432,93 @@ FW_VERSIONS = {
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00df\x1f@ \n', b'\x00\x00df\x1f@ \n',
b'\x00\x00d\xfe\x1f@ \x15',
b'\x00\x00d\x95\x00\x00\x00\x00', b'\x00\x00d\x95\x00\x00\x00\x00',
b'\x00\x00d\x95\x1f@ \x0f', b'\x00\x00d\x95\x1f@ \x0f',
b'\x00\x00d\xfe\x00\x00\x00\x00', b'\x00\x00d\xfe\x00\x00\x00\x00',
b'\x00\x00d\xfe\x1f@ \x15',
b'\x00\x00e\x19\x1f@ \x15', b'\x00\x00e\x19\x1f@ \x15',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xb5"@P\x07',
b'\xb5"@p\x07', b'\xb5"@p\x07',
b'\xb5+@@\x07', b'\xb5+@@\x07',
b'\xb5"@P\x07',
b'\xc4"@0\x07',
b'\xb5b@1\x07', b'\xb5b@1\x07',
b'\xb5q\xe0@\x07', b'\xb5q\xe0@\x07',
b'\xc4"@0\x07',
b'\xc4+@0\x07', b'\xc4+@0\x07',
b'\xc4b@p\x07', b'\xc4b@p\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xbc\xf2@\x81\x00',
b'\xbc\xfb\xe0\x80\x00',
b'\xbc\xf2@\x80\x00',
b'\xbb\xf2@`\x00', b'\xbb\xf2@`\x00',
b'\xbb\xfb\xe0`\x00',
b'\xbc\xaf\xe0`\x00',
b'\xbc\xe2@\x80\x00', b'\xbc\xe2@\x80\x00',
b'\xbc\xf2@\x80\x00',
b'\xbc\xf2@\x81\x00',
b'\xbc\xfb\xe0`\x00', b'\xbc\xfb\xe0`\x00',
b'\xbc\xaf\xe0`\x00', b'\xbc\xfb\xe0\x80\x00',
b'\xbb\xfb\xe0`\x00',
], ],
}, },
CAR.OUTBACK: { CAR.OUTBACK: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\xa1 \x06\x02',
b'\xa1 \x06\x00',
b'\xa1 \x06\x01', b'\xa1 \x06\x01',
b'\xa1 \x07\x00', b'\xa1 \x07\x00',
b'\xa1 \x08\x01',
b'\xa1 \x06\x00',
b'\xa1 "\t\x01',
b'\xa1 \x08\x02',
b'\xa1 \x06\x02',
b'\xa1 \x07\x02', b'\xa1 \x07\x02',
b'\xa1 \x08\x00', b'\xa1 \x08\x00',
b'\xa1 \x08\x01',
b'\xa1 \x08\x02',
b'\xa1 "\t\x00', b'\xa1 "\t\x00',
b'\xa1 "\t\x01',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'\x1b\xc0\x10\x00',
b'\x9b\xc0\x10\x00', b'\x9b\xc0\x10\x00',
b'\x9b\xc0 \x00', b'\x9b\xc0 \x00',
b'\x1b\xc0\x10\x00',
], ],
(Ecu.fwdCamera, 0x787, None): [ (Ecu.fwdCamera, 0x787, None): [
b'\x00\x00eJ\x00\x00\x00\x00\x00\x00',
b'\x00\x00eJ\x00\x1f@ \x19\x00', b'\x00\x00eJ\x00\x1f@ \x19\x00',
b'\x00\x00e\x80\x00\x1f@ \x19\x00', b'\x00\x00e\x80\x00\x1f@ \x19\x00',
b'\x00\x00e\x9a\x00\x00\x00\x00\x00\x00', b'\x00\x00e\x9a\x00\x00\x00\x00\x00\x00',
b'\x00\x00e\x9a\x00\x1f@ 1\x00', b'\x00\x00e\x9a\x00\x1f@ 1\x00',
b'\x00\x00eJ\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xbc,\xa0q\x07',
b'\xbc"`@\x07', b'\xbc"`@\x07',
b'\xbc"`q\x07',
b'\xbc,\xa0q\x07',
b'\xbc,\xa0u\x07',
b'\xde"`0\x07', b'\xde"`0\x07',
b'\xf1\x82\xbc,\xa0q\x07', b'\xde,\xa0@\x07',
b'\xf1\x82\xe3,\xa0@\x07',
b'\xe2"`0\x07', b'\xe2"`0\x07',
b'\xe2"`p\x07', b'\xe2"`p\x07',
b'\xf1\x82\xe2,\xa0@\x07',
b'\xbc"`q\x07',
b'\xe3,\xa0@\x07', b'\xe3,\xa0@\x07',
b'\xbc,\xa0u\x07', b'\xf1\x82\xbc,\xa0q\x07',
b'\xde,\xa0@\x07', b'\xf1\x82\xe2,\xa0@\x07',
b'\xf1\x82\xe3,\xa0@\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xa5\xfe\xf7@\x00',
b'\xa5\xf6D@\x00', b'\xa5\xf6D@\x00',
b'\xa5\xfe\xf6@\x00', b'\xa5\xfe\xf6@\x00',
b'\xa5\xfe\xf7@\x00',
b'\xa5\xfe\xf8@\x00',
b'\xa7\x8e\xf40\x00', b'\xa7\x8e\xf40\x00',
b'\xf1\x82\xa7\xf6D@\x00',
b'\xa7\xf6D@\x00', b'\xa7\xf6D@\x00',
b'\xa7\xfe\xf4@\x00', b'\xa7\xfe\xf4@\x00',
b'\xa5\xfe\xf8@\x00', b'\xf1\x82\xa7\xf6D@\x00',
], ],
}, },
CAR.FORESTER_2022: { CAR.FORESTER_2022: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\xa3 !x\x00',
b'\xa3 !v\x00', b'\xa3 !v\x00',
b'\xa3 !x\x00',
b'\xa3 "v\x00', b'\xa3 "v\x00',
b'\xa3 "x\x00', b'\xa3 "x\x00',
], ],
(Ecu.eps, 0x746, None): [ (Ecu.eps, 0x746, None): [
b'-\xc0%0',
b'-\xc0\x040', b'-\xc0\x040',
b'-\xc0%0',
b'=\xc0%\x02', b'=\xc0%\x02',
b'=\xc04\x02', b'=\xc04\x02',
], ],
@ -527,10 +527,10 @@ FW_VERSIONS = {
b'\x04!\x08\x01.\x07!\x08\x022', b'\x04!\x08\x01.\x07!\x08\x022',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xd5"a0\x07',
b'\xd5"`0\x07', b'\xd5"`0\x07',
b'\xf1"aq\x07', b'\xd5"a0\x07',
b'\xf1"`q\x07', b'\xf1"`q\x07',
b'\xf1"aq\x07',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\x1d\x86B0\x00', b'\x1d\x86B0\x00',

@ -31,13 +31,13 @@ FW_VERSIONS = {
}, },
CAR.AVALON_2019: { CAR.AVALON_2019: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'F152607110\x00\x00\x00\x00\x00\x00',
b'F152607140\x00\x00\x00\x00\x00\x00', b'F152607140\x00\x00\x00\x00\x00\x00',
b'F152607171\x00\x00\x00\x00\x00\x00', b'F152607171\x00\x00\x00\x00\x00\x00',
b'F152607110\x00\x00\x00\x00\x00\x00',
b'F152607180\x00\x00\x00\x00\x00\x00', b'F152607180\x00\x00\x00\x00\x00\x00',
b'F152641040\x00\x00\x00\x00\x00\x00', b'F152641040\x00\x00\x00\x00\x00\x00',
b'F152641061\x00\x00\x00\x00\x00\x00',
b'F152641050\x00\x00\x00\x00\x00\x00', b'F152641050\x00\x00\x00\x00\x00\x00',
b'F152641061\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.dsu, 0x791, None): [ (Ecu.dsu, 0x791, None): [
b'881510703200\x00\x00\x00\x00', b'881510703200\x00\x00\x00\x00',
@ -45,10 +45,10 @@ FW_VERSIONS = {
b'881514107100\x00\x00\x00\x00', b'881514107100\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'8965B41080\x00\x00\x00\x00\x00\x00',
b'8965B07010\x00\x00\x00\x00\x00\x00', b'8965B07010\x00\x00\x00\x00\x00\x00',
b'8965B41090\x00\x00\x00\x00\x00\x00',
b'8965B41070\x00\x00\x00\x00\x00\x00', b'8965B41070\x00\x00\x00\x00\x00\x00',
b'8965B41080\x00\x00\x00\x00\x00\x00',
b'8965B41090\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x700, None): [ (Ecu.engine, 0x700, None): [
b'\x01896630725200\x00\x00\x00\x00', b'\x01896630725200\x00\x00\x00\x00',
@ -56,8 +56,8 @@ FW_VERSIONS = {
b'\x01896630735100\x00\x00\x00\x00', b'\x01896630735100\x00\x00\x00\x00',
b'\x01896630738000\x00\x00\x00\x00', b'\x01896630738000\x00\x00\x00\x00',
b'\x02896630724000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', b'\x02896630724000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00',
b'\x02896630737000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00',
b'\x02896630728000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', b'\x02896630728000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00',
b'\x02896630737000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'8821F4702300\x00\x00\x00\x00', b'8821F4702300\x00\x00\x00\x00',
@ -77,17 +77,17 @@ FW_VERSIONS = {
b'8965B41110\x00\x00\x00\x00\x00\x00', b'8965B41110\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x700, None): [ (Ecu.engine, 0x700, None): [
b'\x018966306Q6000\x00\x00\x00\x00',
b'\x01896630742000\x00\x00\x00\x00', b'\x01896630742000\x00\x00\x00\x00',
b'\x01896630743000\x00\x00\x00\x00', b'\x01896630743000\x00\x00\x00\x00',
b'\x018966306Q6000\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'\x018821F6201200\x00\x00\x00\x00', b'\x018821F6201200\x00\x00\x00\x00',
b'\x018821F6201300\x00\x00\x00\x00', b'\x018821F6201300\x00\x00\x00\x00',
], ],
(Ecu.fwdCamera, 0x750, 0x6d): [ (Ecu.fwdCamera, 0x750, 0x6d): [
b'\x028646F4104100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00',
b'\x028646F4104100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', b'\x028646F4104100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
b'\x028646F4104100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00',
], ],
}, },
CAR.CAMRY: { CAR.CAMRY: {
@ -95,12 +95,15 @@ FW_VERSIONS = {
b'\x018966306L3100\x00\x00\x00\x00', b'\x018966306L3100\x00\x00\x00\x00',
b'\x018966306L4200\x00\x00\x00\x00', b'\x018966306L4200\x00\x00\x00\x00',
b'\x018966306L5200\x00\x00\x00\x00', b'\x018966306L5200\x00\x00\x00\x00',
b'\x018966306L9000\x00\x00\x00\x00',
b'\x018966306P8000\x00\x00\x00\x00', b'\x018966306P8000\x00\x00\x00\x00',
b'\x018966306Q3100\x00\x00\x00\x00', b'\x018966306Q3100\x00\x00\x00\x00',
b'\x018966306Q4000\x00\x00\x00\x00', b'\x018966306Q4000\x00\x00\x00\x00',
b'\x018966306Q4100\x00\x00\x00\x00', b'\x018966306Q4100\x00\x00\x00\x00',
b'\x018966306Q4200\x00\x00\x00\x00', b'\x018966306Q4200\x00\x00\x00\x00',
b'\x018966333Q9200\x00\x00\x00\x00', b'\x018966306Q6000\x00\x00\x00\x00',
b'\x018966333N1100\x00\x00\x00\x00',
b'\x018966333N4300\x00\x00\x00\x00',
b'\x018966333P3100\x00\x00\x00\x00', b'\x018966333P3100\x00\x00\x00\x00',
b'\x018966333P3200\x00\x00\x00\x00', b'\x018966333P3200\x00\x00\x00\x00',
b'\x018966333P4200\x00\x00\x00\x00', b'\x018966333P4200\x00\x00\x00\x00',
@ -113,14 +116,11 @@ FW_VERSIONS = {
b'\x018966333Q6200\x00\x00\x00\x00', b'\x018966333Q6200\x00\x00\x00\x00',
b'\x018966333Q6300\x00\x00\x00\x00', b'\x018966333Q6300\x00\x00\x00\x00',
b'\x018966333Q6500\x00\x00\x00\x00', b'\x018966333Q6500\x00\x00\x00\x00',
b'\x018966333Q9200\x00\x00\x00\x00',
b'\x018966333W6000\x00\x00\x00\x00', b'\x018966333W6000\x00\x00\x00\x00',
b'\x018966306Q6000\x00\x00\x00\x00',
b'\x018966333N1100\x00\x00\x00\x00',
b'\x018966333N4300\x00\x00\x00\x00',
b'\x018966333X0000\x00\x00\x00\x00', b'\x018966333X0000\x00\x00\x00\x00',
b'\x018966333X4000\x00\x00\x00\x00', b'\x018966333X4000\x00\x00\x00\x00',
b'\x01896633T16000\x00\x00\x00\x00', b'\x01896633T16000\x00\x00\x00\x00',
b'\x018966306L9000\x00\x00\x00\x00',
b'\x028966306B2100\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', b'\x028966306B2100\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00',
b'\x028966306B2300\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', b'\x028966306B2300\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00',
b'\x028966306B2500\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', b'\x028966306B2500\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00',
@ -144,17 +144,17 @@ FW_VERSIONS = {
b'8821F0601300 ', b'8821F0601300 ',
b'8821F0602000 ', b'8821F0602000 ',
b'8821F0603300 ', b'8821F0603300 ',
b'8821F0603400 ',
b'8821F0604000 ',
b'8821F0604100 ', b'8821F0604100 ',
b'8821F0604200 ',
b'8821F0605200 ', b'8821F0605200 ',
b'8821F0606200 ',
b'8821F0607200 ', b'8821F0607200 ',
b'8821F0608000 ', b'8821F0608000 ',
b'8821F0608200 ', b'8821F0608200 ',
b'8821F0609100 ',
b'8821F0603400 ',
b'8821F0604000 ',
b'8821F0604200 ',
b'8821F0606200 ',
b'8821F0609000 ', b'8821F0609000 ',
b'8821F0609100 ',
], ],
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'F152606210\x00\x00\x00\x00\x00\x00', b'F152606210\x00\x00\x00\x00\x00\x00',
@ -162,55 +162,55 @@ FW_VERSIONS = {
b'F152606270\x00\x00\x00\x00\x00\x00', b'F152606270\x00\x00\x00\x00\x00\x00',
b'F152606290\x00\x00\x00\x00\x00\x00', b'F152606290\x00\x00\x00\x00\x00\x00',
b'F152606410\x00\x00\x00\x00\x00\x00', b'F152606410\x00\x00\x00\x00\x00\x00',
b'F152633540\x00\x00\x00\x00\x00\x00',
b'F152633A10\x00\x00\x00\x00\x00\x00',
b'F152633A20\x00\x00\x00\x00\x00\x00',
b'F152633214\x00\x00\x00\x00\x00\x00', b'F152633214\x00\x00\x00\x00\x00\x00',
b'F152633540\x00\x00\x00\x00\x00\x00',
b'F152633660\x00\x00\x00\x00\x00\x00', b'F152633660\x00\x00\x00\x00\x00\x00',
b'F152633712\x00\x00\x00\x00\x00\x00', b'F152633712\x00\x00\x00\x00\x00\x00',
b'F152633713\x00\x00\x00\x00\x00\x00', b'F152633713\x00\x00\x00\x00\x00\x00',
b'F152633A10\x00\x00\x00\x00\x00\x00',
b'F152633A20\x00\x00\x00\x00\x00\x00',
b'F152633B51\x00\x00\x00\x00\x00\x00', b'F152633B51\x00\x00\x00\x00\x00\x00',
b'F152633B60\x00\x00\x00\x00\x00\x00', b'F152633B60\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'8965B33540\x00\x00\x00\x00\x00\x00', b'8965B33540\x00\x00\x00\x00\x00\x00',
b'8965B33542\x00\x00\x00\x00\x00\x00', b'8965B33542\x00\x00\x00\x00\x00\x00',
b'8965B33580\x00\x00\x00\x00\x00\x00',
b'8965B33581\x00\x00\x00\x00\x00\x00',
b'8965B33621\x00\x00\x00\x00\x00\x00',
b'8965B33550\x00\x00\x00\x00\x00\x00', b'8965B33550\x00\x00\x00\x00\x00\x00',
b'8965B33551\x00\x00\x00\x00\x00\x00', b'8965B33551\x00\x00\x00\x00\x00\x00',
b'8965B33580\x00\x00\x00\x00\x00\x00',
b'8965B33581\x00\x00\x00\x00\x00\x00',
b'8965B33611\x00\x00\x00\x00\x00\x00', b'8965B33611\x00\x00\x00\x00\x00\x00',
b'8965B33621\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'8821F0601200 ', b'8821F0601200 ',
b'8821F0601300 ', b'8821F0601300 ',
b'8821F0602000 ', b'8821F0602000 ',
b'8821F0603300 ', b'8821F0603300 ',
b'8821F0603400 ',
b'8821F0604000 ',
b'8821F0604100 ', b'8821F0604100 ',
b'8821F0604200 ',
b'8821F0605200 ', b'8821F0605200 ',
b'8821F0606200 ',
b'8821F0607200 ', b'8821F0607200 ',
b'8821F0608000 ', b'8821F0608000 ',
b'8821F0608200 ', b'8821F0608200 ',
b'8821F0609100 ',
b'8821F0603400 ',
b'8821F0604000 ',
b'8821F0604200 ',
b'8821F0606200 ',
b'8821F0609000 ', b'8821F0609000 ',
b'8821F0609100 ',
], ],
(Ecu.fwdCamera, 0x750, 0x6d): [ (Ecu.fwdCamera, 0x750, 0x6d): [
b'8646F0601200 ', b'8646F0601200 ',
b'8646F0601300 ', b'8646F0601300 ',
b'8646F0601400 ', b'8646F0601400 ',
b'8646F0603400 ', b'8646F0603400 ',
b'8646F0603500 ',
b'8646F0604100 ', b'8646F0604100 ',
b'8646F0605000 ', b'8646F0605000 ',
b'8646F0606000 ', b'8646F0606000 ',
b'8646F0606100 ', b'8646F0606100 ',
b'8646F0607100 ',
b'8646F0603500 ',
b'8646F0607000 ', b'8646F0607000 ',
b'8646F0607100 ',
], ],
}, },
CAR.CAMRY_TSS2: { CAR.CAMRY_TSS2: {
@ -224,22 +224,22 @@ FW_VERSIONS = {
b'\x01F152606390\x00\x00\x00\x00\x00\x00', b'\x01F152606390\x00\x00\x00\x00\x00\x00',
b'\x01F152606400\x00\x00\x00\x00\x00\x00', b'\x01F152606400\x00\x00\x00\x00\x00\x00',
b'\x01F152606431\x00\x00\x00\x00\x00\x00', b'\x01F152606431\x00\x00\x00\x00\x00\x00',
b'F152633310\x00\x00\x00\x00\x00\x00',
b'F152633D00\x00\x00\x00\x00\x00\x00', b'F152633D00\x00\x00\x00\x00\x00\x00',
b'F152633D60\x00\x00\x00\x00\x00\x00', b'F152633D60\x00\x00\x00\x00\x00\x00',
b'F152633310\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x700, None): [ (Ecu.engine, 0x700, None): [
b'\x018966306Q5000\x00\x00\x00\x00', b'\x018966306Q5000\x00\x00\x00\x00',
b'\x018966306Q6000\x00\x00\x00\x00',
b'\x018966306Q7000\x00\x00\x00\x00',
b'\x018966306Q9000\x00\x00\x00\x00', b'\x018966306Q9000\x00\x00\x00\x00',
b'\x018966306R3000\x00\x00\x00\x00', b'\x018966306R3000\x00\x00\x00\x00',
b'\x018966306R8000\x00\x00\x00\x00', b'\x018966306R8000\x00\x00\x00\x00',
b'\x018966306T0000\x00\x00\x00\x00',
b'\x018966306T3100\x00\x00\x00\x00', b'\x018966306T3100\x00\x00\x00\x00',
b'\x018966306T3200\x00\x00\x00\x00', b'\x018966306T3200\x00\x00\x00\x00',
b'\x018966306T4000\x00\x00\x00\x00', b'\x018966306T4000\x00\x00\x00\x00',
b'\x018966306T4100\x00\x00\x00\x00', b'\x018966306T4100\x00\x00\x00\x00',
b'\x018966306Q6000\x00\x00\x00\x00',
b'\x018966306Q7000\x00\x00\x00\x00',
b'\x018966306T0000\x00\x00\x00\x00',
b'\x018966306V1000\x00\x00\x00\x00', b'\x018966306V1000\x00\x00\x00\x00',
b'\x01896633T20000\x00\x00\x00\x00', b'\x01896633T20000\x00\x00\x00\x00',
], ],
@ -252,65 +252,65 @@ FW_VERSIONS = {
b'\x028646F0602100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', b'\x028646F0602100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00',
b'\x028646F0602200\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', b'\x028646F0602200\x00\x00\x00\x008646G5301200\x00\x00\x00\x00',
b'\x028646F0602300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', b'\x028646F0602300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
b'\x028646F3305200\x00\x00\x00\x008646G5301200\x00\x00\x00\x00',
b'\x028646F3305200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', b'\x028646F3305200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
b'\x028646F3305200\x00\x00\x00\x008646G5301200\x00\x00\x00\x00',
b'\x028646F3305300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
b'\x028646F3305300\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', b'\x028646F3305300\x00\x00\x00\x008646G5301200\x00\x00\x00\x00',
b'\x028646F3305500\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', b'\x028646F3305500\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
b'\x028646F3305300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
], ],
}, },
CAR.CHR: { CAR.CHR: {
(Ecu.engine, 0x700, None): [ (Ecu.engine, 0x700, None): [
b'\x01896631021100\x00\x00\x00\x00',
b'\x01896631017100\x00\x00\x00\x00', b'\x01896631017100\x00\x00\x00\x00',
b'\x01896631017200\x00\x00\x00\x00', b'\x01896631017200\x00\x00\x00\x00',
b'\x01896631021100\x00\x00\x00\x00',
b'\x0189663F413100\x00\x00\x00\x00', b'\x0189663F413100\x00\x00\x00\x00',
b'\x0189663F414100\x00\x00\x00\x00', b'\x0189663F414100\x00\x00\x00\x00',
b'\x0289663F405100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x0189663F438000\x00\x00\x00\x00',
b'\x02896631013200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x02896631013200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
b'\x0289663F405000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x0289663F405000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
b'\x0289663F405100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
b'\x0289663F418000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x0289663F418000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
b'\x0289663F423000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x0289663F423000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
b'\x0289663F431000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x0289663F431000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
b'\x0189663F438000\x00\x00\x00\x00',
], ],
(Ecu.dsu, 0x791, None): [ (Ecu.dsu, 0x791, None): [
b'8821F0W01000 ', b'8821F0W01000 ',
b'8821F0W01100 ', b'8821F0W01100 ',
b'8821FF401600 ', b'8821FF401600 ',
b'8821FF402300 ',
b'8821FF402400 ',
b'8821FF404000 ', b'8821FF404000 ',
b'8821FF404100 ', b'8821FF404100 ',
b'8821FF405000 ',
b'8821FF405100 ', b'8821FF405100 ',
b'8821FF406000 ', b'8821FF406000 ',
b'8821FF407100 ', b'8821FF407100 ',
b'8821FF402300 ',
b'8821FF402400 ',
b'8821FF405000 ',
], ],
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'F152610020\x00\x00\x00\x00\x00\x00',
b'F152610153\x00\x00\x00\x00\x00\x00',
b'F152610210\x00\x00\x00\x00\x00\x00',
b'F1526F4034\x00\x00\x00\x00\x00\x00',
b'F1526F4044\x00\x00\x00\x00\x00\x00',
b'F1526F4073\x00\x00\x00\x00\x00\x00',
b'F1526F4121\x00\x00\x00\x00\x00\x00',
b'F1526F4122\x00\x00\x00\x00\x00\x00',
b'F152610012\x00\x00\x00\x00\x00\x00', b'F152610012\x00\x00\x00\x00\x00\x00',
b'F152610013\x00\x00\x00\x00\x00\x00', b'F152610013\x00\x00\x00\x00\x00\x00',
b'F152610014\x00\x00\x00\x00\x00\x00', b'F152610014\x00\x00\x00\x00\x00\x00',
b'F152610020\x00\x00\x00\x00\x00\x00',
b'F152610040\x00\x00\x00\x00\x00\x00', b'F152610040\x00\x00\x00\x00\x00\x00',
b'F152610153\x00\x00\x00\x00\x00\x00',
b'F152610190\x00\x00\x00\x00\x00\x00', b'F152610190\x00\x00\x00\x00\x00\x00',
b'F152610200\x00\x00\x00\x00\x00\x00', b'F152610200\x00\x00\x00\x00\x00\x00',
b'F152610210\x00\x00\x00\x00\x00\x00',
b'F152610220\x00\x00\x00\x00\x00\x00', b'F152610220\x00\x00\x00\x00\x00\x00',
b'F152610230\x00\x00\x00\x00\x00\x00', b'F152610230\x00\x00\x00\x00\x00\x00',
b'F1526F4034\x00\x00\x00\x00\x00\x00',
b'F1526F4044\x00\x00\x00\x00\x00\x00',
b'F1526F4073\x00\x00\x00\x00\x00\x00',
b'F1526F4121\x00\x00\x00\x00\x00\x00',
b'F1526F4122\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'8965B10011\x00\x00\x00\x00\x00\x00', b'8965B10011\x00\x00\x00\x00\x00\x00',
b'8965B10040\x00\x00\x00\x00\x00\x00',
b'8965B10070\x00\x00\x00\x00\x00\x00',
b'8965B10020\x00\x00\x00\x00\x00\x00', b'8965B10020\x00\x00\x00\x00\x00\x00',
b'8965B10040\x00\x00\x00\x00\x00\x00',
b'8965B10050\x00\x00\x00\x00\x00\x00', b'8965B10050\x00\x00\x00\x00\x00\x00',
b'8965B10070\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\x0331024000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', b'\x0331024000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00',
@ -323,42 +323,42 @@ FW_VERSIONS = {
], ],
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'8821F0W01000 ', b'8821F0W01000 ',
b'8821F0W01100 ',
b'8821FF401600 ', b'8821FF401600 ',
b'8821FF402300 ',
b'8821FF402400 ',
b'8821FF404000 ', b'8821FF404000 ',
b'8821FF404100 ', b'8821FF404100 ',
b'8821FF405000 ',
b'8821FF405100 ', b'8821FF405100 ',
b'8821FF406000 ', b'8821FF406000 ',
b'8821FF407100 ', b'8821FF407100 ',
b'8821F0W01100 ',
b'8821FF402300 ',
b'8821FF402400 ',
b'8821FF405000 ',
], ],
(Ecu.fwdCamera, 0x750, 0x6d): [ (Ecu.fwdCamera, 0x750, 0x6d): [
b'8646FF401700 ', b'8646FF401700 ',
b'8646FF401800 ', b'8646FF401800 ',
b'8646FF402100 ',
b'8646FF404000 ', b'8646FF404000 ',
b'8646FF406000 ', b'8646FF406000 ',
b'8646FF407000 ', b'8646FF407000 ',
b'8646FF402100 ',
b'8646FF407100 ', b'8646FF407100 ',
], ],
}, },
CAR.CHR_TSS2: { CAR.CHR_TSS2: {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'F152610041\x00\x00\x00\x00\x00\x00',
b'F152610260\x00\x00\x00\x00\x00\x00', b'F152610260\x00\x00\x00\x00\x00\x00',
b'F1526F4270\x00\x00\x00\x00\x00\x00', b'F1526F4270\x00\x00\x00\x00\x00\x00',
b'F152610041\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'8965B10091\x00\x00\x00\x00\x00\x00', b'8965B10091\x00\x00\x00\x00\x00\x00',
b'8965B10110\x00\x00\x00\x00\x00\x00',
b'8965B10092\x00\x00\x00\x00\x00\x00', b'8965B10092\x00\x00\x00\x00\x00\x00',
b'8965B10110\x00\x00\x00\x00\x00\x00',
b'8965B10111\x00\x00\x00\x00\x00\x00', b'8965B10111\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x700, None): [ (Ecu.engine, 0x700, None): [
b'\x0189663F459000\x00\x00\x00\x00',
b'\x0189663F438000\x00\x00\x00\x00', b'\x0189663F438000\x00\x00\x00\x00',
b'\x0189663F459000\x00\x00\x00\x00',
b'\x02896631025000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x02896631025000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
b'\x0289663F453000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x0289663F453000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
], ],
@ -418,9 +418,11 @@ FW_VERSIONS = {
b'\x01896630ZG5100\x00\x00\x00\x00', b'\x01896630ZG5100\x00\x00\x00\x00',
b'\x01896630ZG5200\x00\x00\x00\x00', b'\x01896630ZG5200\x00\x00\x00\x00',
b'\x01896630ZG5300\x00\x00\x00\x00', b'\x01896630ZG5300\x00\x00\x00\x00',
b'\x01896630ZJ1000\x00\x00\x00\x00',
b'\x01896630ZP1000\x00\x00\x00\x00', b'\x01896630ZP1000\x00\x00\x00\x00',
b'\x01896630ZP2000\x00\x00\x00\x00', b'\x01896630ZP2000\x00\x00\x00\x00',
b'\x01896630ZQ5000\x00\x00\x00\x00', b'\x01896630ZQ5000\x00\x00\x00\x00',
b'\x01896630ZU8000\x00\x00\x00\x00',
b'\x01896630ZU9000\x00\x00\x00\x00', b'\x01896630ZU9000\x00\x00\x00\x00',
b'\x01896630ZX4000\x00\x00\x00\x00', b'\x01896630ZX4000\x00\x00\x00\x00',
b'\x018966312L8000\x00\x00\x00\x00', b'\x018966312L8000\x00\x00\x00\x00',
@ -442,16 +444,14 @@ FW_VERSIONS = {
b'\x018966312S7000\x00\x00\x00\x00', b'\x018966312S7000\x00\x00\x00\x00',
b'\x018966312W3000\x00\x00\x00\x00', b'\x018966312W3000\x00\x00\x00\x00',
b'\x018966312W9000\x00\x00\x00\x00', b'\x018966312W9000\x00\x00\x00\x00',
b'\x01896637644000\x00\x00\x00\x00',
b'\x01896630ZJ1000\x00\x00\x00\x00',
b'\x01896630ZU8000\x00\x00\x00\x00',
b'\x01896637621000\x00\x00\x00\x00', b'\x01896637621000\x00\x00\x00\x00',
b'\x01896637623000\x00\x00\x00\x00', b'\x01896637623000\x00\x00\x00\x00',
b'\x01896637624000\x00\x00\x00\x00', b'\x01896637624000\x00\x00\x00\x00',
b'\x01896637626000\x00\x00\x00\x00', b'\x01896637626000\x00\x00\x00\x00',
b'\x01896637639000\x00\x00\x00\x00', b'\x01896637639000\x00\x00\x00\x00',
b'\x01896637648000\x00\x00\x00\x00',
b'\x01896637643000\x00\x00\x00\x00', b'\x01896637643000\x00\x00\x00\x00',
b'\x01896637644000\x00\x00\x00\x00',
b'\x01896637648000\x00\x00\x00\x00',
b'\x02896630A07000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x02896630A07000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
b'\x02896630A21000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x02896630A21000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
b'\x02896630ZJ5000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', b'\x02896630ZJ5000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00',
@ -476,6 +476,8 @@ FW_VERSIONS = {
b'\x0230A11000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x0230A11000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x0230ZN4000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x0230ZN4000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x0230ZN5000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x0230ZN5000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02312K4000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02312U5000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x03312K7000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', b'\x03312K7000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00',
b'\x03312M3000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', b'\x03312M3000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00',
b'\x03312N6000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', b'\x03312N6000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00',
@ -486,37 +488,38 @@ FW_VERSIONS = {
b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00',
b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00',
b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00',
b'\x02312K4000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02312U5000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'\x018965B12350\x00\x00\x00\x00\x00\x00', b'\x018965B12350\x00\x00\x00\x00\x00\x00',
b'\x018965B12470\x00\x00\x00\x00\x00\x00', b'\x018965B12470\x00\x00\x00\x00\x00\x00',
b'\x018965B12490\x00\x00\x00\x00\x00\x00', b'\x018965B12490\x00\x00\x00\x00\x00\x00',
b'\x018965B12500\x00\x00\x00\x00\x00\x00', b'\x018965B12500\x00\x00\x00\x00\x00\x00',
b'\x018965B12510\x00\x00\x00\x00\x00\x00',
b'\x018965B12520\x00\x00\x00\x00\x00\x00', b'\x018965B12520\x00\x00\x00\x00\x00\x00',
b'\x018965B12530\x00\x00\x00\x00\x00\x00', b'\x018965B12530\x00\x00\x00\x00\x00\x00',
b'\x018965B1255000\x00\x00\x00\x00', b'\x018965B1255000\x00\x00\x00\x00',
b'8965B12361\x00\x00\x00\x00\x00\x00',
b'8965B16011\x00\x00\x00\x00\x00\x00',
b'8965B76012\x00\x00\x00\x00\x00\x00',
b'\x018965B12510\x00\x00\x00\x00\x00\x00',
b'\x018965B1256000\x00\x00\x00\x00', b'\x018965B1256000\x00\x00\x00\x00',
b'8965B12361\x00\x00\x00\x00\x00\x00',
b'8965B12451\x00\x00\x00\x00\x00\x00', b'8965B12451\x00\x00\x00\x00\x00\x00',
b'8965B16011\x00\x00\x00\x00\x00\x00',
b'8965B16101\x00\x00\x00\x00\x00\x00', b'8965B16101\x00\x00\x00\x00\x00\x00',
b'8965B16170\x00\x00\x00\x00\x00\x00', b'8965B16170\x00\x00\x00\x00\x00\x00',
b'8965B76012\x00\x00\x00\x00\x00\x00',
b'8965B76050\x00\x00\x00\x00\x00\x00', b'8965B76050\x00\x00\x00\x00\x00\x00',
b'8965B76091\x00\x00\x00\x00\x00\x00', b'8965B76091\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\x01F152602280\x00\x00\x00\x00\x00\x00', b'\x01F152602280\x00\x00\x00\x00\x00\x00',
b'\x01F152602470\x00\x00\x00\x00\x00\x00',
b'\x01F152602560\x00\x00\x00\x00\x00\x00', b'\x01F152602560\x00\x00\x00\x00\x00\x00',
b'\x01F152602590\x00\x00\x00\x00\x00\x00', b'\x01F152602590\x00\x00\x00\x00\x00\x00',
b'\x01F152602650\x00\x00\x00\x00\x00\x00', b'\x01F152602650\x00\x00\x00\x00\x00\x00',
b'\x01F15260A010\x00\x00\x00\x00\x00\x00', b'\x01F15260A010\x00\x00\x00\x00\x00\x00',
b'\x01F15260A050\x00\x00\x00\x00\x00\x00', b'\x01F15260A050\x00\x00\x00\x00\x00\x00',
b'\x01F15260A070\x00\x00\x00\x00\x00\x00',
b'\x01F152612641\x00\x00\x00\x00\x00\x00', b'\x01F152612641\x00\x00\x00\x00\x00\x00',
b'\x01F152612651\x00\x00\x00\x00\x00\x00', b'\x01F152612651\x00\x00\x00\x00\x00\x00',
b'\x01F152612862\x00\x00\x00\x00\x00\x00',
b'\x01F152612B10\x00\x00\x00\x00\x00\x00', b'\x01F152612B10\x00\x00\x00\x00\x00\x00',
b'\x01F152612B51\x00\x00\x00\x00\x00\x00', b'\x01F152612B51\x00\x00\x00\x00\x00\x00',
b'\x01F152612B60\x00\x00\x00\x00\x00\x00', b'\x01F152612B60\x00\x00\x00\x00\x00\x00',
@ -526,12 +529,9 @@ FW_VERSIONS = {
b'\x01F152612B71\x00\x00\x00\x00\x00\x00', b'\x01F152612B71\x00\x00\x00\x00\x00\x00',
b'\x01F152612B81\x00\x00\x00\x00\x00\x00', b'\x01F152612B81\x00\x00\x00\x00\x00\x00',
b'\x01F152612B90\x00\x00\x00\x00\x00\x00', b'\x01F152612B90\x00\x00\x00\x00\x00\x00',
b'\x01F152612C00\x00\x00\x00\x00\x00\x00',
b'\x01F152612862\x00\x00\x00\x00\x00\x00',
b'\x01F152612B91\x00\x00\x00\x00\x00\x00', b'\x01F152612B91\x00\x00\x00\x00\x00\x00',
b'\x01F15260A070\x00\x00\x00\x00\x00\x00', b'\x01F152612C00\x00\x00\x00\x00\x00\x00',
b'\x01F152676250\x00\x00\x00\x00\x00\x00', b'\x01F152676250\x00\x00\x00\x00\x00\x00',
b'\x01F152602470\x00\x00\x00\x00\x00\x00',
b'F152612590\x00\x00\x00\x00\x00\x00', b'F152612590\x00\x00\x00\x00\x00\x00',
b'F152612691\x00\x00\x00\x00\x00\x00', b'F152612691\x00\x00\x00\x00\x00\x00',
b'F152612692\x00\x00\x00\x00\x00\x00', b'F152612692\x00\x00\x00\x00\x00\x00',
@ -547,8 +547,8 @@ FW_VERSIONS = {
b'F152612A10\x00\x00\x00\x00\x00\x00', b'F152612A10\x00\x00\x00\x00\x00\x00',
b'F152612D00\x00\x00\x00\x00\x00\x00', b'F152612D00\x00\x00\x00\x00\x00\x00',
b'F152616011\x00\x00\x00\x00\x00\x00', b'F152616011\x00\x00\x00\x00\x00\x00',
b'F152616060\x00\x00\x00\x00\x00\x00',
b'F152616030\x00\x00\x00\x00\x00\x00', b'F152616030\x00\x00\x00\x00\x00\x00',
b'F152616060\x00\x00\x00\x00\x00\x00',
b'F152642540\x00\x00\x00\x00\x00\x00', b'F152642540\x00\x00\x00\x00\x00\x00',
b'F152676293\x00\x00\x00\x00\x00\x00', b'F152676293\x00\x00\x00\x00\x00\x00',
b'F152676303\x00\x00\x00\x00\x00\x00', b'F152676303\x00\x00\x00\x00\x00\x00',
@ -572,8 +572,8 @@ FW_VERSIONS = {
b'\x028646F1202100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', b'\x028646F1202100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00',
b'\x028646F1202200\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', b'\x028646F1202200\x00\x00\x00\x008646G2601500\x00\x00\x00\x00',
b'\x028646F1601100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', b'\x028646F1601100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00',
b'\x028646F1601300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00',
b'\x028646F1601200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', b'\x028646F1601200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00',
b'\x028646F1601300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00',
b'\x028646F4203400\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', b'\x028646F4203400\x00\x00\x00\x008646G2601200\x00\x00\x00\x00',
b'\x028646F76020C0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', b'\x028646F76020C0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00',
b'\x028646F7603100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', b'\x028646F7603100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00',
@ -657,10 +657,10 @@ FW_VERSIONS = {
], ],
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\x01F15260E051\x00\x00\x00\x00\x00\x00', b'\x01F15260E051\x00\x00\x00\x00\x00\x00',
b'\x01F15260E05300\x00\x00\x00\x00',
b'\x01F15260E061\x00\x00\x00\x00\x00\x00', b'\x01F15260E061\x00\x00\x00\x00\x00\x00',
b'\x01F15260E110\x00\x00\x00\x00\x00\x00', b'\x01F15260E110\x00\x00\x00\x00\x00\x00',
b'\x01F15260E170\x00\x00\x00\x00\x00\x00', b'\x01F15260E170\x00\x00\x00\x00\x00\x00',
b'\x01F15260E05300\x00\x00\x00\x00',
b'\x01F15264872300\x00\x00\x00\x00', b'\x01F15264872300\x00\x00\x00\x00',
b'\x01F15264872400\x00\x00\x00\x00', b'\x01F15264872400\x00\x00\x00\x00',
b'\x01F15264872500\x00\x00\x00\x00', b'\x01F15264872500\x00\x00\x00\x00',
@ -680,6 +680,8 @@ FW_VERSIONS = {
b'\x01896630E64100\x00\x00\x00\x00', b'\x01896630E64100\x00\x00\x00\x00',
b'\x01896630E64200\x00\x00\x00\x00', b'\x01896630E64200\x00\x00\x00\x00',
b'\x01896630E64400\x00\x00\x00\x00', b'\x01896630E64400\x00\x00\x00\x00',
b'\x01896630E67000\x00\x00\x00\x00',
b'\x01896630EA1000\x00\x00\x00\x00',
b'\x01896630EB1000\x00\x00\x00\x00', b'\x01896630EB1000\x00\x00\x00\x00',
b'\x01896630EB1100\x00\x00\x00\x00', b'\x01896630EB1100\x00\x00\x00\x00',
b'\x01896630EB1200\x00\x00\x00\x00', b'\x01896630EB1200\x00\x00\x00\x00',
@ -691,16 +693,14 @@ FW_VERSIONS = {
b'\x01896630ED9100\x00\x00\x00\x00', b'\x01896630ED9100\x00\x00\x00\x00',
b'\x01896630EE1000\x00\x00\x00\x00', b'\x01896630EE1000\x00\x00\x00\x00',
b'\x01896630EE1100\x00\x00\x00\x00', b'\x01896630EE1100\x00\x00\x00\x00',
b'\x01896630EG3000\x00\x00\x00\x00',
b'\x01896630EG5000\x00\x00\x00\x00',
b'\x01896630E67000\x00\x00\x00\x00',
b'\x01896630EA1000\x00\x00\x00\x00',
b'\x01896630EE4000\x00\x00\x00\x00', b'\x01896630EE4000\x00\x00\x00\x00',
b'\x01896630EE4100\x00\x00\x00\x00', b'\x01896630EE4100\x00\x00\x00\x00',
b'\x01896630EE5000\x00\x00\x00\x00', b'\x01896630EE5000\x00\x00\x00\x00',
b'\x01896630EE6000\x00\x00\x00\x00', b'\x01896630EE6000\x00\x00\x00\x00',
b'\x01896630EE7000\x00\x00\x00\x00', b'\x01896630EE7000\x00\x00\x00\x00',
b'\x01896630EF8000\x00\x00\x00\x00', b'\x01896630EF8000\x00\x00\x00\x00',
b'\x01896630EG3000\x00\x00\x00\x00',
b'\x01896630EG5000\x00\x00\x00\x00',
b'\x02896630E66000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', b'\x02896630E66000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
b'\x02896630E66100\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', b'\x02896630E66100\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
b'\x02896630EB3000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', b'\x02896630EB3000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
@ -713,8 +713,8 @@ FW_VERSIONS = {
], ],
(Ecu.fwdCamera, 0x750, 0x6d): [ (Ecu.fwdCamera, 0x750, 0x6d): [
b'\x028646F0E02100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', b'\x028646F0E02100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00',
b'\x028646F4803000\x00\x00\x00\x008646G5301200\x00\x00\x00\x00',
b'\x028646F4803000\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', b'\x028646F4803000\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
b'\x028646F4803000\x00\x00\x00\x008646G5301200\x00\x00\x00\x00',
b'\x028646F4803200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', b'\x028646F4803200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
], ],
}, },
@ -754,8 +754,8 @@ FW_VERSIONS = {
b'8965B53311\x00\x00\x00\x00\x00\x00', b'8965B53311\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'8821F4702300\x00\x00\x00\x00',
b'8821F4702100\x00\x00\x00\x00', b'8821F4702100\x00\x00\x00\x00',
b'8821F4702300\x00\x00\x00\x00',
], ],
(Ecu.fwdCamera, 0x750, 0x6d): [ (Ecu.fwdCamera, 0x750, 0x6d): [
b'8646F5301101\x00\x00\x00\x00', b'8646F5301101\x00\x00\x00\x00',
@ -916,8 +916,8 @@ FW_VERSIONS = {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'F15260R102\x00\x00\x00\x00\x00\x00', b'F15260R102\x00\x00\x00\x00\x00\x00',
b'F15260R103\x00\x00\x00\x00\x00\x00', b'F15260R103\x00\x00\x00\x00\x00\x00',
b'F152642493\x00\x00\x00\x00\x00\x00',
b'F152642492\x00\x00\x00\x00\x00\x00', b'F152642492\x00\x00\x00\x00\x00\x00',
b'F152642493\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.dsu, 0x791, None): [ (Ecu.dsu, 0x791, None): [
b'881514201200\x00\x00\x00\x00', b'881514201200\x00\x00\x00\x00',
@ -979,6 +979,7 @@ FW_VERSIONS = {
b'\x01896630R58000\x00\x00\x00\x00', b'\x01896630R58000\x00\x00\x00\x00',
b'\x01896630R58100\x00\x00\x00\x00', b'\x01896630R58100\x00\x00\x00\x00',
b'\x018966342E2000\x00\x00\x00\x00', b'\x018966342E2000\x00\x00\x00\x00',
b'\x018966342M5000\x00\x00\x00\x00',
b'\x018966342M8000\x00\x00\x00\x00', b'\x018966342M8000\x00\x00\x00\x00',
b'\x018966342S9000\x00\x00\x00\x00', b'\x018966342S9000\x00\x00\x00\x00',
b'\x018966342T1000\x00\x00\x00\x00', b'\x018966342T1000\x00\x00\x00\x00',
@ -991,13 +992,20 @@ FW_VERSIONS = {
b'\x018966342V3000\x00\x00\x00\x00', b'\x018966342V3000\x00\x00\x00\x00',
b'\x018966342V3100\x00\x00\x00\x00', b'\x018966342V3100\x00\x00\x00\x00',
b'\x018966342V3200\x00\x00\x00\x00', b'\x018966342V3200\x00\x00\x00\x00',
b'\x018966342W5000\x00\x00\x00\x00',
b'\x018966342W7000\x00\x00\x00\x00',
b'\x018966342W8000\x00\x00\x00\x00',
b'\x018966342X5000\x00\x00\x00\x00',
b'\x018966342X6000\x00\x00\x00\x00',
b'\x01896634A05000\x00\x00\x00\x00', b'\x01896634A05000\x00\x00\x00\x00',
b'\x01896634A15000\x00\x00\x00\x00',
b'\x01896634A19000\x00\x00\x00\x00', b'\x01896634A19000\x00\x00\x00\x00',
b'\x01896634A19100\x00\x00\x00\x00', b'\x01896634A19100\x00\x00\x00\x00',
b'\x01896634A20000\x00\x00\x00\x00', b'\x01896634A20000\x00\x00\x00\x00',
b'\x01896634A20100\x00\x00\x00\x00', b'\x01896634A20100\x00\x00\x00\x00',
b'\x01896634A22000\x00\x00\x00\x00', b'\x01896634A22000\x00\x00\x00\x00',
b'\x01896634A22100\x00\x00\x00\x00', b'\x01896634A22100\x00\x00\x00\x00',
b'\x01896634A25000\x00\x00\x00\x00',
b'\x01896634A30000\x00\x00\x00\x00', b'\x01896634A30000\x00\x00\x00\x00',
b'\x01896634A44000\x00\x00\x00\x00', b'\x01896634A44000\x00\x00\x00\x00',
b'\x01896634A45000\x00\x00\x00\x00', b'\x01896634A45000\x00\x00\x00\x00',
@ -1005,35 +1013,28 @@ FW_VERSIONS = {
b'\x028966342M7000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', b'\x028966342M7000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00',
b'\x028966342T0000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', b'\x028966342T0000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00',
b'\x028966342V1000\x00\x00\x00\x00897CF1202001\x00\x00\x00\x00', b'\x028966342V1000\x00\x00\x00\x00897CF1202001\x00\x00\x00\x00',
b'\x028966342W4001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00',
b'\x028966342Y8000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', b'\x028966342Y8000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00',
b'\x02896634A18000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00',
b'\x02896634A18100\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00',
b'\x02896634A43000\x00\x00\x00\x00897CF4201001\x00\x00\x00\x00',
b'\x02896634A47000\x00\x00\x00\x00897CF4201001\x00\x00\x00\x00',
b'\x028966342Z8000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', b'\x028966342Z8000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00',
b'\x01896634A15000\x00\x00\x00\x00',
b'\x018966342M5000\x00\x00\x00\x00',
b'\x018966342W8000\x00\x00\x00\x00',
b'\x018966342X5000\x00\x00\x00\x00',
b'\x018966342X6000\x00\x00\x00\x00',
b'\x01896634A25000\x00\x00\x00\x00',
b'\x018966342W5000\x00\x00\x00\x00',
b'\x018966342W7000\x00\x00\x00\x00',
b'\x028966342W4001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00',
b'\x02896634A13000\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'\x02896634A13000\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02896634A13001\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', b'\x02896634A13001\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
b'\x02896634A13101\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', b'\x02896634A13101\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
b'\x02896634A14001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', b'\x02896634A14001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00',
b'\x02896634A14001\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
b'\x02896634A14101\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00',
b'\x02896634A18000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00',
b'\x02896634A18100\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00',
b'\x02896634A23000\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', b'\x02896634A23000\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02896634A23001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', b'\x02896634A23001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00',
b'\x02896634A23101\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', b'\x02896634A23101\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00',
b'\x02896634A14001\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', b'\x02896634A43000\x00\x00\x00\x00897CF4201001\x00\x00\x00\x00',
b'\x02896634A14101\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', b'\x02896634A47000\x00\x00\x00\x00897CF4201001\x00\x00\x00\x00',
], ],
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\x01F15260R210\x00\x00\x00\x00\x00\x00', b'\x01F15260R210\x00\x00\x00\x00\x00\x00',
b'\x01F15260R220\x00\x00\x00\x00\x00\x00', b'\x01F15260R220\x00\x00\x00\x00\x00\x00',
b'\x01F15260R290\x00\x00\x00\x00\x00\x00', b'\x01F15260R290\x00\x00\x00\x00\x00\x00',
b'\x01F15260R292\x00\x00\x00\x00\x00\x00',
b'\x01F15260R300\x00\x00\x00\x00\x00\x00', b'\x01F15260R300\x00\x00\x00\x00\x00\x00',
b'\x01F15260R302\x00\x00\x00\x00\x00\x00', b'\x01F15260R302\x00\x00\x00\x00\x00\x00',
b'\x01F152642551\x00\x00\x00\x00\x00\x00', b'\x01F152642551\x00\x00\x00\x00\x00\x00',
@ -1045,28 +1046,27 @@ FW_VERSIONS = {
b'\x01F152642711\x00\x00\x00\x00\x00\x00', b'\x01F152642711\x00\x00\x00\x00\x00\x00',
b'\x01F152642750\x00\x00\x00\x00\x00\x00', b'\x01F152642750\x00\x00\x00\x00\x00\x00',
b'\x01F152642751\x00\x00\x00\x00\x00\x00', b'\x01F152642751\x00\x00\x00\x00\x00\x00',
b'\x01F15260R292\x00\x00\x00\x00\x00\x00',
b'F152642291\x00\x00\x00\x00\x00\x00',
b'F152642290\x00\x00\x00\x00\x00\x00', b'F152642290\x00\x00\x00\x00\x00\x00',
b'F152642291\x00\x00\x00\x00\x00\x00',
b'F152642322\x00\x00\x00\x00\x00\x00', b'F152642322\x00\x00\x00\x00\x00\x00',
b'F152642330\x00\x00\x00\x00\x00\x00', b'F152642330\x00\x00\x00\x00\x00\x00',
b'F152642331\x00\x00\x00\x00\x00\x00', b'F152642331\x00\x00\x00\x00\x00\x00',
b'F152642531\x00\x00\x00\x00\x00\x00',
b'F152642532\x00\x00\x00\x00\x00\x00',
b'F152642520\x00\x00\x00\x00\x00\x00', b'F152642520\x00\x00\x00\x00\x00\x00',
b'F152642521\x00\x00\x00\x00\x00\x00', b'F152642521\x00\x00\x00\x00\x00\x00',
b'F152642531\x00\x00\x00\x00\x00\x00',
b'F152642532\x00\x00\x00\x00\x00\x00',
b'F152642540\x00\x00\x00\x00\x00\x00', b'F152642540\x00\x00\x00\x00\x00\x00',
b'F152642541\x00\x00\x00\x00\x00\x00', b'F152642541\x00\x00\x00\x00\x00\x00',
b'F152642542\x00\x00\x00\x00\x00\x00', b'F152642542\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'\x028965B0R01200\x00\x00\x00\x008965B0R02200\x00\x00\x00\x00',
b'\x028965B0R01300\x00\x00\x00\x008965B0R02300\x00\x00\x00\x00',
b'\x028965B0R01400\x00\x00\x00\x008965B0R02400\x00\x00\x00\x00',
b'8965B42170\x00\x00\x00\x00\x00\x00', b'8965B42170\x00\x00\x00\x00\x00\x00',
b'8965B42171\x00\x00\x00\x00\x00\x00', b'8965B42171\x00\x00\x00\x00\x00\x00',
b'8965B42180\x00\x00\x00\x00\x00\x00', b'8965B42180\x00\x00\x00\x00\x00\x00',
b'8965B42181\x00\x00\x00\x00\x00\x00', b'8965B42181\x00\x00\x00\x00\x00\x00',
b'\x028965B0R01200\x00\x00\x00\x008965B0R02200\x00\x00\x00\x00',
b'\x028965B0R01300\x00\x00\x00\x008965B0R02300\x00\x00\x00\x00',
b'\x028965B0R01400\x00\x00\x00\x008965B0R02400\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'\x018821F3301100\x00\x00\x00\x00', b'\x018821F3301100\x00\x00\x00\x00',
@ -1088,22 +1088,16 @@ FW_VERSIONS = {
b'\x01F15260R350\x00\x00\x00\x00\x00\x00', b'\x01F15260R350\x00\x00\x00\x00\x00\x00',
b'\x01F15260R361\x00\x00\x00\x00\x00\x00', b'\x01F15260R361\x00\x00\x00\x00\x00\x00',
b'\x01F15264283100\x00\x00\x00\x00', b'\x01F15264283100\x00\x00\x00\x00',
b'\x01F15264286200\x00\x00\x00\x00',
b'\x01F15264286100\x00\x00\x00\x00',
b'\x01F15264283200\x00\x00\x00\x00', b'\x01F15264283200\x00\x00\x00\x00',
b'\x01F15264286100\x00\x00\x00\x00',
b'\x01F15264286200\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'\x028965B0R01500\x00\x00\x00\x008965B0R02500\x00\x00\x00\x00', b'\x028965B0R01500\x00\x00\x00\x008965B0R02500\x00\x00\x00\x00',
b'8965B42182\x00\x00\x00\x00\x00\x00',
b'8965B42172\x00\x00\x00\x00\x00\x00', b'8965B42172\x00\x00\x00\x00\x00\x00',
b'8965B42182\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x700, None): [ (Ecu.engine, 0x700, None): [
b'\x01896634AA0000\x00\x00\x00\x00',
b'\x01896634AA0100\x00\x00\x00\x00',
b'\x01896634AA1000\x00\x00\x00\x00',
b'\x01896634A88000\x00\x00\x00\x00',
b'\x01896634A89000\x00\x00\x00\x00',
b'\x01896634A89100\x00\x00\x00\x00',
b'\x01896634A02001\x00\x00\x00\x00', b'\x01896634A02001\x00\x00\x00\x00',
b'\x01896634A03000\x00\x00\x00\x00', b'\x01896634A03000\x00\x00\x00\x00',
b'\x01896634A08000\x00\x00\x00\x00', b'\x01896634A08000\x00\x00\x00\x00',
@ -1111,6 +1105,12 @@ FW_VERSIONS = {
b'\x01896634A62000\x00\x00\x00\x00', b'\x01896634A62000\x00\x00\x00\x00',
b'\x01896634A62100\x00\x00\x00\x00', b'\x01896634A62100\x00\x00\x00\x00',
b'\x01896634A63000\x00\x00\x00\x00', b'\x01896634A63000\x00\x00\x00\x00',
b'\x01896634A88000\x00\x00\x00\x00',
b'\x01896634A89000\x00\x00\x00\x00',
b'\x01896634A89100\x00\x00\x00\x00',
b'\x01896634AA0000\x00\x00\x00\x00',
b'\x01896634AA0100\x00\x00\x00\x00',
b'\x01896634AA1000\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'\x018821F0R01100\x00\x00\x00\x00', b'\x018821F0R01100\x00\x00\x00\x00',
@ -1132,10 +1132,10 @@ FW_VERSIONS = {
], ],
(Ecu.engine, 0x700, None): [ (Ecu.engine, 0x700, None): [
b'\x01896634A88100\x00\x00\x00\x00', b'\x01896634A88100\x00\x00\x00\x00',
b'\x01896634AJ2000\x00\x00\x00\x00',
b'\x01896634A89100\x00\x00\x00\x00', b'\x01896634A89100\x00\x00\x00\x00',
b'\x01896634AE1001\x00\x00\x00\x00', b'\x01896634AE1001\x00\x00\x00\x00',
b'\x01896634AF0000\x00\x00\x00\x00', b'\x01896634AF0000\x00\x00\x00\x00',
b'\x01896634AJ2000\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'\x018821F0R03100\x00\x00\x00\x00', b'\x018821F0R03100\x00\x00\x00\x00',
@ -1205,14 +1205,14 @@ FW_VERSIONS = {
b'\x018966333T5100\x00\x00\x00\x00', b'\x018966333T5100\x00\x00\x00\x00',
b'\x018966333X6000\x00\x00\x00\x00', b'\x018966333X6000\x00\x00\x00\x00',
b'\x01896633T07000\x00\x00\x00\x00', b'\x01896633T07000\x00\x00\x00\x00',
b'\x01896633T38000\x00\x00\x00\x00',
b'\x01896633T58000\x00\x00\x00\x00',
b'\x028966333S8000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', b'\x028966333S8000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00',
b'\x028966333S8000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', b'\x028966333S8000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00',
b'\x028966333T0100\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', b'\x028966333T0100\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00',
b'\x028966333V4000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', b'\x028966333V4000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00',
b'\x028966333W1000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', b'\x028966333W1000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00',
b'\x02896633T09000\x00\x00\x00\x00897CF3307001\x00\x00\x00\x00', b'\x02896633T09000\x00\x00\x00\x00897CF3307001\x00\x00\x00\x00',
b'\x01896633T38000\x00\x00\x00\x00',
b'\x01896633T58000\x00\x00\x00\x00',
], ],
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\x01F152606281\x00\x00\x00\x00\x00\x00', b'\x01F152606281\x00\x00\x00\x00\x00\x00',
@ -1234,20 +1234,20 @@ FW_VERSIONS = {
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'\x018821F3301100\x00\x00\x00\x00', b'\x018821F3301100\x00\x00\x00\x00',
b'\x018821F3301200\x00\x00\x00\x00', b'\x018821F3301200\x00\x00\x00\x00',
b'\x018821F3301300\x00\x00\x00\x00',
b'\x018821F3301400\x00\x00\x00\x00', b'\x018821F3301400\x00\x00\x00\x00',
b'\x018821F6201300\x00\x00\x00\x00', b'\x018821F6201300\x00\x00\x00\x00',
b'\x018821F3301300\x00\x00\x00\x00',
b'\x018821F6201400\x00\x00\x00\x00', b'\x018821F6201400\x00\x00\x00\x00',
], ],
(Ecu.fwdCamera, 0x750, 0x6d): [ (Ecu.fwdCamera, 0x750, 0x6d): [
b'\x028646F0610000\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
b'\x028646F33030D0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', b'\x028646F33030D0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00',
b'\x028646F3303100\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00',
b'\x028646F3303200\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', b'\x028646F3303200\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00',
b'\x028646F3304100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', b'\x028646F3304100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00',
b'\x028646F3304200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00',
b'\x028646F3304300\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', b'\x028646F3304300\x00\x00\x00\x008646G2601500\x00\x00\x00\x00',
b'\x028646F3309100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', b'\x028646F3309100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00',
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',
], ],
}, },
CAR.LEXUS_ES: { CAR.LEXUS_ES: {
@ -1337,8 +1337,8 @@ FW_VERSIONS = {
(Ecu.dsu, 0x791, None): [ (Ecu.dsu, 0x791, None): [
b'881517803100\x00\x00\x00\x00', b'881517803100\x00\x00\x00\x00',
b'881517803300\x00\x00\x00\x00', b'881517803300\x00\x00\x00\x00',
b'881517804300\x00\x00\x00\x00',
b'881517804100\x00\x00\x00\x00', b'881517804100\x00\x00\x00\x00',
b'881517804300\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'8965B78060\x00\x00\x00\x00\x00\x00', b'8965B78060\x00\x00\x00\x00\x00\x00',
@ -1356,13 +1356,13 @@ FW_VERSIONS = {
}, },
CAR.LEXUS_NX_TSS2: { CAR.LEXUS_NX_TSS2: {
(Ecu.engine, 0x700, None): [ (Ecu.engine, 0x700, None): [
b'\x018966378B2000\x00\x00\x00\x00',
b'\x018966378B2100\x00\x00\x00\x00', b'\x018966378B2100\x00\x00\x00\x00',
b'\x018966378B3000\x00\x00\x00\x00', b'\x018966378B3000\x00\x00\x00\x00',
b'\x018966378B3100\x00\x00\x00\x00',
b'\x018966378B4100\x00\x00\x00\x00', b'\x018966378B4100\x00\x00\x00\x00',
b'\x018966378G2000\x00\x00\x00\x00', b'\x018966378G2000\x00\x00\x00\x00',
b'\x018966378G3000\x00\x00\x00\x00', b'\x018966378G3000\x00\x00\x00\x00',
b'\x018966378B2000\x00\x00\x00\x00',
b'\x018966378B3100\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\x0237887000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x0237887000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00',
@ -1378,9 +1378,9 @@ FW_VERSIONS = {
b'8965B78120\x00\x00\x00\x00\x00\x00', b'8965B78120\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.fwdRadar, 0x750, 0xf): [ (Ecu.fwdRadar, 0x750, 0xf): [
b'\x018821F3301400\x00\x00\x00\x00',
b'\x018821F3301200\x00\x00\x00\x00', b'\x018821F3301200\x00\x00\x00\x00',
b'\x018821F3301300\x00\x00\x00\x00', b'\x018821F3301300\x00\x00\x00\x00',
b'\x018821F3301400\x00\x00\x00\x00',
], ],
(Ecu.fwdCamera, 0x750, 0x6d): [ (Ecu.fwdCamera, 0x750, 0x6d): [
b'\x028646F78030A0\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', b'\x028646F78030A0\x00\x00\x00\x008646G2601200\x00\x00\x00\x00',
@ -1441,11 +1441,11 @@ FW_VERSIONS = {
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'F152648472\x00\x00\x00\x00\x00\x00', b'F152648472\x00\x00\x00\x00\x00\x00',
b'F152648473\x00\x00\x00\x00\x00\x00', b'F152648473\x00\x00\x00\x00\x00\x00',
b'F152648474\x00\x00\x00\x00\x00\x00',
b'F152648492\x00\x00\x00\x00\x00\x00', b'F152648492\x00\x00\x00\x00\x00\x00',
b'F152648493\x00\x00\x00\x00\x00\x00', b'F152648493\x00\x00\x00\x00\x00\x00',
b'F152648474\x00\x00\x00\x00\x00\x00',
b'F152648630\x00\x00\x00\x00\x00\x00',
b'F152648494\x00\x00\x00\x00\x00\x00', b'F152648494\x00\x00\x00\x00\x00\x00',
b'F152648630\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.dsu, 0x791, None): [ (Ecu.dsu, 0x791, None): [
b'881514810300\x00\x00\x00\x00', b'881514810300\x00\x00\x00\x00',
@ -1526,39 +1526,39 @@ FW_VERSIONS = {
b'\x01896630EC9100\x00\x00\x00\x00', b'\x01896630EC9100\x00\x00\x00\x00',
b'\x01896630ED0000\x00\x00\x00\x00', b'\x01896630ED0000\x00\x00\x00\x00',
b'\x01896630ED0100\x00\x00\x00\x00', b'\x01896630ED0100\x00\x00\x00\x00',
b'\x01896630ED5000\x00\x00\x00\x00',
b'\x01896630ED6000\x00\x00\x00\x00', b'\x01896630ED6000\x00\x00\x00\x00',
b'\x018966348R9200\x00\x00\x00\x00',
b'\x018966348T8000\x00\x00\x00\x00', b'\x018966348T8000\x00\x00\x00\x00',
b'\x018966348W5100\x00\x00\x00\x00', b'\x018966348W5100\x00\x00\x00\x00',
b'\x018966348W9000\x00\x00\x00\x00', b'\x018966348W9000\x00\x00\x00\x00',
b'\x018966348X0000\x00\x00\x00\x00',
b'\x01896634D12000\x00\x00\x00\x00', b'\x01896634D12000\x00\x00\x00\x00',
b'\x01896634D12100\x00\x00\x00\x00', b'\x01896634D12100\x00\x00\x00\x00',
b'\x01896634D43000\x00\x00\x00\x00', b'\x01896634D43000\x00\x00\x00\x00',
b'\x01896634D44000\x00\x00\x00\x00', b'\x01896634D44000\x00\x00\x00\x00',
b'\x018966348X0000\x00\x00\x00\x00',
b'\x01896630ED5000\x00\x00\x00\x00',
b'\x018966348R9200\x00\x00\x00\x00',
], ],
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\x02348U2000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02348X4000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x02348X4000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02348X5000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x02348X5000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02348X8000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x02348X8000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02348Y3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x02348Y3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x0234D14000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x0234D14000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x0234D16000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x0234D16000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x02348U2000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.abs, 0x7b0, None): [ (Ecu.abs, 0x7b0, None): [
b'\x01F15260E031\x00\x00\x00\x00\x00\x00', b'\x01F15260E031\x00\x00\x00\x00\x00\x00',
b'\x01F15260E041\x00\x00\x00\x00\x00\x00', b'\x01F15260E041\x00\x00\x00\x00\x00\x00',
b'\x01F152648781\x00\x00\x00\x00\x00\x00', b'\x01F152648781\x00\x00\x00\x00\x00\x00',
b'\x01F152648801\x00\x00\x00\x00\x00\x00', b'\x01F152648801\x00\x00\x00\x00\x00\x00',
b'F152648493\x00\x00\x00\x00\x00\x00',
b'F152648811\x00\x00\x00\x00\x00\x00',
b'F152648831\x00\x00\x00\x00\x00\x00', b'F152648831\x00\x00\x00\x00\x00\x00',
b'F152648891\x00\x00\x00\x00\x00\x00', b'F152648891\x00\x00\x00\x00\x00\x00',
b'F152648C80\x00\x00\x00\x00\x00\x00',
b'F152648D00\x00\x00\x00\x00\x00\x00', b'F152648D00\x00\x00\x00\x00\x00\x00',
b'F152648D60\x00\x00\x00\x00\x00\x00', b'F152648D60\x00\x00\x00\x00\x00\x00',
b'F152648811\x00\x00\x00\x00\x00\x00',
b'F152648C80\x00\x00\x00\x00\x00\x00',
b'F152648493\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'8965B48261\x00\x00\x00\x00\x00\x00', b'8965B48261\x00\x00\x00\x00\x00\x00',
@ -1628,8 +1628,8 @@ FW_VERSIONS = {
CAR.ALPHARD_TSS2: { CAR.ALPHARD_TSS2: {
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\x0235870000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x0235870000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x0235883000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x0235879000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', b'\x0235879000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00',
b'\x0235883000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00',
], ],
(Ecu.eps, 0x7a1, None): [ (Ecu.eps, 0x7a1, None): [
b'8965B58040\x00\x00\x00\x00\x00\x00', b'8965B58040\x00\x00\x00\x00\x00\x00',

@ -124,13 +124,14 @@ FW_VERSIONS = {
CAR.GOLF_MK7: { CAR.GOLF_MK7: {
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xf1\x8704E906016A \xf1\x897697', b'\xf1\x8704E906016A \xf1\x897697',
b'\xf1\x8704E906016N \xf1\x899105',
b'\xf1\x8704E906016AD\xf1\x895758', b'\xf1\x8704E906016AD\xf1\x895758',
b'\xf1\x8704E906016CE\xf1\x899096', b'\xf1\x8704E906016CE\xf1\x899096',
b'\xf1\x8704E906016CH\xf1\x899226', b'\xf1\x8704E906016CH\xf1\x899226',
b'\xf1\x8704E906016N \xf1\x899105',
b'\xf1\x8704E906023AG\xf1\x891726', b'\xf1\x8704E906023AG\xf1\x891726',
b'\xf1\x8704E906023BN\xf1\x894518', b'\xf1\x8704E906023BN\xf1\x894518',
b'\xf1\x8704E906024K \xf1\x896811', b'\xf1\x8704E906024K \xf1\x896811',
b'\xf1\x8704E906024K \xf1\x899970',
b'\xf1\x8704E906027GR\xf1\x892394', b'\xf1\x8704E906027GR\xf1\x892394',
b'\xf1\x8704E906027HD\xf1\x892603', b'\xf1\x8704E906027HD\xf1\x892603',
b'\xf1\x8704E906027HD\xf1\x893742', b'\xf1\x8704E906027HD\xf1\x893742',
@ -172,7 +173,6 @@ FW_VERSIONS = {
b'\xf1\x878V0906264L \xf1\x890002', b'\xf1\x878V0906264L \xf1\x890002',
b'\xf1\x878V0906264M \xf1\x890001', b'\xf1\x878V0906264M \xf1\x890001',
b'\xf1\x878V09C0BB01 \xf1\x890001', b'\xf1\x878V09C0BB01 \xf1\x890001',
b'\xf1\x8704E906024K \xf1\x899970',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xf1\x8709G927749AP\xf1\x892943', b'\xf1\x8709G927749AP\xf1\x892943',
@ -232,18 +232,18 @@ FW_VERSIONS = {
b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142404A2252229333463100', b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142404A2252229333463100',
b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142405A2251229333463100', b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142405A2251229333463100',
b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142405A2252229333463100', b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142405A2252229333463100',
b'\xf1\x875Q0959655CA\xf1\x890403\xf1\x82\x1314160011123300314240012250229333463100',
b'\xf1\x875Q0959655C \xf1\x890361\xf1\x82\x111413001112120004110415121610169112', b'\xf1\x875Q0959655C \xf1\x890361\xf1\x82\x111413001112120004110415121610169112',
b'\xf1\x875Q0959655CA\xf1\x890403\xf1\x82\x1314160011123300314240012250229333463100',
b'\xf1\x875Q0959655D \xf1\x890388\xf1\x82\x111413001113120006110417121A101A9113', b'\xf1\x875Q0959655D \xf1\x890388\xf1\x82\x111413001113120006110417121A101A9113',
b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13271112111312--071104171825102591131211', b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13271112111312--071104171825102591131211',
b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13271212111312--071104171838103891131211', b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13271212111312--071104171838103891131211',
b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13341512112212--071104172328102891131211',
b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13272512111312--07110417182C102C91131211', b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13272512111312--07110417182C102C91131211',
b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13341512112212--071104172328102891131211',
b'\xf1\x875Q0959655M \xf1\x890361\xf1\x82\x111413001112120041114115121611169112', b'\xf1\x875Q0959655M \xf1\x890361\xf1\x82\x111413001112120041114115121611169112',
b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011211200061104171717101791132111',
b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011211200621143171717111791132111', b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011211200621143171717111791132111',
b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200061104171724102491132111', b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200061104171724102491132111',
b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200621143171724112491132111', b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200621143171724112491132111',
b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011211200061104171717101791132111',
b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200631143171724122491132111', b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200631143171724122491132111',
b'\xf1\x875Q0959655T \xf1\x890825\xf1\x82\x13271200111312--071104171837103791132111', b'\xf1\x875Q0959655T \xf1\x890825\xf1\x82\x13271200111312--071104171837103791132111',
b'\xf1\x875Q0959655T \xf1\x890830\xf1\x82\x13271100111312--071104171826102691131211', b'\xf1\x875Q0959655T \xf1\x890830\xf1\x82\x13271100111312--071104171826102691131211',
@ -268,9 +268,9 @@ FW_VERSIONS = {
b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A00442A1', b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A00442A1',
b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A00642A1', b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A00642A1',
b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A07B05A1', b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A07B05A1',
b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0521A00502A0',
b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0521A00602A0', b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0521A00602A0',
b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0522A00402A0', b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0522A00402A0',
b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0521A00502A0',
b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0511A00403A0', b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0511A00403A0',
b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516A00604A1', b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516A00604A1',
b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A00404A1', b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A00404A1',
@ -281,14 +281,14 @@ FW_VERSIONS = {
b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A00507A1', b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A00507A1',
b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A07B04A1', b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A07B04A1',
b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A20B03A1', b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A20B03A1',
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A2000400',
b'\xf1\x875QD909144B \xf1\x891072\xf1\x82\x0521A00507A1', b'\xf1\x875QD909144B \xf1\x891072\xf1\x82\x0521A00507A1',
b'\xf1\x875QM909144A \xf1\x891072\xf1\x82\x0521A20B03A1', b'\xf1\x875QM909144A \xf1\x891072\xf1\x82\x0521A20B03A1',
b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A00442A1', b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A00442A1',
b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A16A1', b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A16A1',
b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A18A1',
b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A17A1', b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A17A1',
b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A18A1',
b'\xf1\x875QN909144B \xf1\x895082\xf1\x82\x0571A01A18A1', b'\xf1\x875QN909144B \xf1\x895082\xf1\x82\x0571A01A18A1',
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A2000400',
], ],
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x875Q0907567G \xf1\x890390\xf1\x82\x0101', b'\xf1\x875Q0907567G \xf1\x890390\xf1\x82\x0101',
@ -313,9 +313,9 @@ FW_VERSIONS = {
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xf1\x8704E906024AK\xf1\x899937', b'\xf1\x8704E906024AK\xf1\x899937',
b'\xf1\x8704E906024AS\xf1\x899912', b'\xf1\x8704E906024AS\xf1\x899912',
b'\xf1\x8704E906024B \xf1\x895594',
b'\xf1\x8704E906024BC\xf1\x899971', b'\xf1\x8704E906024BC\xf1\x899971',
b'\xf1\x8704E906024BG\xf1\x891057', b'\xf1\x8704E906024BG\xf1\x891057',
b'\xf1\x8704E906024B \xf1\x895594',
b'\xf1\x8704E906024C \xf1\x899970', b'\xf1\x8704E906024C \xf1\x899970',
b'\xf1\x8704E906024L \xf1\x895595', b'\xf1\x8704E906024L \xf1\x895595',
b'\xf1\x8704E906024L \xf1\x899970', b'\xf1\x8704E906024L \xf1\x899970',
@ -338,8 +338,8 @@ FW_VERSIONS = {
b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1314171231313500314643011650169333463100', b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1314171231313500314643011650169333463100',
b'\xf1\x875Q0959655BR\xf1\x890403\xf1\x82\x1311170031313300314240011150119333433100', b'\xf1\x875Q0959655BR\xf1\x890403\xf1\x82\x1311170031313300314240011150119333433100',
b'\xf1\x875Q0959655BR\xf1\x890403\xf1\x82\x1319170031313300314240011550159333463100', b'\xf1\x875Q0959655BR\xf1\x890403\xf1\x82\x1319170031313300314240011550159333463100',
b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1314171231313500314643021650169333613100',
b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1314171231313500314642021650169333613100', b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1314171231313500314642021650169333613100',
b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1314171231313500314643021650169333613100',
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A10A11A1', b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A10A11A1',
@ -365,24 +365,24 @@ FW_VERSIONS = {
b'\xf1\x8704L906026FP\xf1\x892012', b'\xf1\x8704L906026FP\xf1\x892012',
b'\xf1\x8704L906026GA\xf1\x892013', b'\xf1\x8704L906026GA\xf1\x892013',
b'\xf1\x8704L906026KD\xf1\x894798', b'\xf1\x8704L906026KD\xf1\x894798',
b'\xf1\x873G0906259B \xf1\x890002',
b'\xf1\x873G0906259 \xf1\x890004', b'\xf1\x873G0906259 \xf1\x890004',
b'\xf1\x873G0906259B \xf1\x890002',
b'\xf1\x873G0906264 \xf1\x890004', b'\xf1\x873G0906264 \xf1\x890004',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xf1\x870CW300042H \xf1\x891601',
b'\xf1\x870CW300042H \xf1\x891607',
b'\xf1\x870CW300043H \xf1\x891601', b'\xf1\x870CW300043H \xf1\x891601',
b'\xf1\x870CW300048R \xf1\x890610', b'\xf1\x870CW300048R \xf1\x890610',
b'\xf1\x870D9300013A \xf1\x894905', b'\xf1\x870D9300013A \xf1\x894905',
b'\xf1\x870D9300014L \xf1\x895002', b'\xf1\x870D9300014L \xf1\x895002',
b'\xf1\x870D9300018C \xf1\x895297',
b'\xf1\x870D9300041A \xf1\x894801', b'\xf1\x870D9300041A \xf1\x894801',
b'\xf1\x870D9300042H \xf1\x894901',
b'\xf1\x870DD300045T \xf1\x891601', b'\xf1\x870DD300045T \xf1\x891601',
b'\xf1\x870DD300046H \xf1\x891601', b'\xf1\x870DD300046H \xf1\x891601',
b'\xf1\x870DL300011H \xf1\x895201', b'\xf1\x870DL300011H \xf1\x895201',
b'\xf1\x870CW300042H \xf1\x891601',
b'\xf1\x870CW300042H \xf1\x891607',
b'\xf1\x870GC300042H \xf1\x891404', b'\xf1\x870GC300042H \xf1\x891404',
b'\xf1\x870D9300018C \xf1\x895297',
b'\xf1\x870D9300042H \xf1\x894901',
b'\xf1\x870GC300043 \xf1\x892301', b'\xf1\x870GC300043 \xf1\x892301',
], ],
(Ecu.srs, 0x715, None): [ (Ecu.srs, 0x715, None): [
@ -390,14 +390,14 @@ FW_VERSIONS = {
b'\xf1\x873Q0959655AF\xf1\x890195\xf1\x82\r56140056130012026612120211', b'\xf1\x873Q0959655AF\xf1\x890195\xf1\x82\r56140056130012026612120211',
b'\xf1\x873Q0959655AN\xf1\x890305\xf1\x82\r58160058140013036914110311', b'\xf1\x873Q0959655AN\xf1\x890305\xf1\x82\r58160058140013036914110311',
b'\xf1\x873Q0959655AN\xf1\x890306\xf1\x82\r58160058140013036914110311', b'\xf1\x873Q0959655AN\xf1\x890306\xf1\x82\r58160058140013036914110311',
b'\xf1\x873Q0959655BA\xf1\x890195\xf1\x82\r56140056130012416612124111',
b'\xf1\x873Q0959655BA\xf1\x890195\xf1\x82\r56140056130012516612125111', b'\xf1\x873Q0959655BA\xf1\x890195\xf1\x82\r56140056130012516612125111',
b'\xf1\x873Q0959655BB\xf1\x890195\xf1\x82\r56140056130012026612120211', b'\xf1\x873Q0959655BB\xf1\x890195\xf1\x82\r56140056130012026612120211',
b'\xf1\x873Q0959655BJ\xf1\x890703\xf1\x82\x0e5915005914001305701311052900',
b'\xf1\x873Q0959655BG\xf1\x890712\xf1\x82\x0e5915005914001305701311052900', b'\xf1\x873Q0959655BG\xf1\x890712\xf1\x82\x0e5915005914001305701311052900',
b'\xf1\x873Q0959655BJ\xf1\x890703\xf1\x82\x0e5915005914001305701311052900',
b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e5915005914001344701311442900', b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e5915005914001344701311442900',
b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e5915005914001354701311542900', b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e5915005914001354701311542900',
b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e5915005914001305701311052900', b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e5915005914001305701311052900',
b'\xf1\x873Q0959655BA\xf1\x890195\xf1\x82\r56140056130012416612124111',
b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011111200631145171716121691132111', b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011111200631145171716121691132111',
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
@ -409,19 +409,19 @@ FW_VERSIONS = {
b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526B0060905', b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526B0060905',
b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521B00606A1', b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521B00606A1',
b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516B00501A1', b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516B00501A1',
b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521B00603A1',
b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521B00703A1', b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521B00703A1',
b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563B0000600', b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563B0000600',
b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521B00603A1',
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567B0020600', b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567B0020600',
], ],
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x873Q0907572A \xf1\x890126', b'\xf1\x873Q0907572A \xf1\x890126',
b'\xf1\x873Q0907572A \xf1\x890130', b'\xf1\x873Q0907572A \xf1\x890130',
b'\xf1\x873Q0907572B \xf1\x890192', b'\xf1\x873Q0907572B \xf1\x890192',
b'\xf1\x873Q0907572B \xf1\x890194',
b'\xf1\x873Q0907572C \xf1\x890195', b'\xf1\x873Q0907572C \xf1\x890195',
b'\xf1\x873Q0907572C \xf1\x890196', b'\xf1\x873Q0907572C \xf1\x890196',
b'\xf1\x875Q0907572P \xf1\x890682', b'\xf1\x875Q0907572P \xf1\x890682',
b'\xf1\x873Q0907572B \xf1\x890194',
b'\xf1\x875Q0907572R \xf1\x890771', b'\xf1\x875Q0907572R \xf1\x890771',
], ],
}, },
@ -530,6 +530,7 @@ FW_VERSIONS = {
CAR.TIGUAN_MK2: { CAR.TIGUAN_MK2: {
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xf1\x8703N906026D \xf1\x893680', b'\xf1\x8703N906026D \xf1\x893680',
b'\xf1\x8704E906024AP\xf1\x891461',
b'\xf1\x8704E906027NB\xf1\x899504', b'\xf1\x8704E906027NB\xf1\x899504',
b'\xf1\x8704L906026EJ\xf1\x893661', b'\xf1\x8704L906026EJ\xf1\x893661',
b'\xf1\x8704L906027G \xf1\x899893', b'\xf1\x8704L906027G \xf1\x899893',
@ -539,13 +540,12 @@ FW_VERSIONS = {
b'\xf1\x875NA907115E \xf1\x890003', b'\xf1\x875NA907115E \xf1\x890003',
b'\xf1\x875NA907115E \xf1\x890005', b'\xf1\x875NA907115E \xf1\x890005',
b'\xf1\x875NA907115J \xf1\x890002', b'\xf1\x875NA907115J \xf1\x890002',
b'\xf1\x8783A907115 \xf1\x890007',
b'\xf1\x8783A907115B \xf1\x890005', b'\xf1\x8783A907115B \xf1\x890005',
b'\xf1\x8783A907115F \xf1\x890002', b'\xf1\x8783A907115F \xf1\x890002',
b'\xf1\x8783A907115G \xf1\x890001', b'\xf1\x8783A907115G \xf1\x890001',
b'\xf1\x8783A907115K \xf1\x890001', b'\xf1\x8783A907115K \xf1\x890001',
b'\xf1\x8783A907115K \xf1\x890002', b'\xf1\x8783A907115K \xf1\x890002',
b'\xf1\x8704E906024AP\xf1\x891461',
b'\xf1\x8783A907115 \xf1\x890007',
b'\xf1\x8783A907115Q \xf1\x890001', b'\xf1\x8783A907115Q \xf1\x890001',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
@ -557,6 +557,7 @@ FW_VERSIONS = {
b'\xf1\x8709G927158GN\xf1\x893938', b'\xf1\x8709G927158GN\xf1\x893938',
b'\xf1\x8709G927158HB\xf1\x894069', b'\xf1\x8709G927158HB\xf1\x894069',
b'\xf1\x870D9300043 \xf1\x895202', b'\xf1\x870D9300043 \xf1\x895202',
b'\xf1\x870DD300046K \xf1\x892302',
b'\xf1\x870DL300011N \xf1\x892001', b'\xf1\x870DL300011N \xf1\x892001',
b'\xf1\x870DL300011N \xf1\x892012', b'\xf1\x870DL300011N \xf1\x892012',
b'\xf1\x870DL300012M \xf1\x892107', b'\xf1\x870DL300012M \xf1\x892107',
@ -565,40 +566,39 @@ FW_VERSIONS = {
b'\xf1\x870DL300013G \xf1\x892119', b'\xf1\x870DL300013G \xf1\x892119',
b'\xf1\x870DL300013G \xf1\x892120', b'\xf1\x870DL300013G \xf1\x892120',
b'\xf1\x870DL300014C \xf1\x893703', b'\xf1\x870DL300014C \xf1\x893703',
b'\xf1\x870DD300046K \xf1\x892302',
b'\xf1\x870GC300013P \xf1\x892401', b'\xf1\x870GC300013P \xf1\x892401',
b'\xf1\x870GC300046Q \xf1\x892802', b'\xf1\x870GC300046Q \xf1\x892802',
], ],
(Ecu.srs, 0x715, None): [ (Ecu.srs, 0x715, None): [
b'\xf1\x875Q0959655AG\xf1\x890338\xf1\x82\x1316143231313500314617011730179333423100',
b'\xf1\x875Q0959655AR\xf1\x890317\xf1\x82\x1331310031333334313132573732379333313100', b'\xf1\x875Q0959655AR\xf1\x890317\xf1\x82\x1331310031333334313132573732379333313100',
b'\xf1\x875Q0959655BJ\xf1\x890336\xf1\x82\x1312110031333300314232583732379333423100', b'\xf1\x875Q0959655BJ\xf1\x890336\xf1\x82\x1312110031333300314232583732379333423100',
b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x1331310031333334313132013730379333423100', b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x1331310031333334313132013730379333423100',
b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1316143231313500314641011750179333423100', b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1316143231313500314641011750179333423100',
b'\xf1\x875Q0959655BS\xf1\x890403\xf1\x82\x1312110031333300314240013750379333423100', b'\xf1\x875Q0959655BS\xf1\x890403\xf1\x82\x1312110031333300314240013750379333423100',
b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1312110031333300314240583752379333423100', b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1312110031333300314240583752379333423100',
b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333336313140013950399333423100',
b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333334313140013750379333423100', b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333334313140013750379333423100',
b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333334313140573752379333423100', b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333334313140573752379333423100',
b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333336313140013950399333423100',
b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1316143231313500314647021750179333613100', b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1316143231313500314647021750179333613100',
b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x1331310031333300314240024050409333613100',
b'\xf1\x875Q0959655CD\xf1\x890421\xf1\x82\x13123112313333003145406F6154619333613100', b'\xf1\x875Q0959655CD\xf1\x890421\xf1\x82\x13123112313333003145406F6154619333613100',
b'\xf1\x875Q0959655AG\xf1\x890338\xf1\x82\x1316143231313500314617011730179333423100', b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x1331310031333300314240024050409333613100',
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820529A6060603', b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820529A6060603',
b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527A6050705', b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527A6050705',
b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A60604A1', b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A60604A1',
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A6000600', b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A6000600',
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A6017A00',
b'\xf1\x875QF909144A \xf1\x895581\xf1\x82\x0571A60834A1', b'\xf1\x875QF909144A \xf1\x895581\xf1\x82\x0571A60834A1',
b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571A60634A1', b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571A60634A1',
b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571A62A32A1', b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571A62A32A1',
b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A60604A1',
b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A60604A1',
b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A60804A1',
b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x002RA60A2ROM', b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x002RA60A2ROM',
b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x002SA6092SOM', b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x002SA6092SOM',
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A6017A00', b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A60604A1',
b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A60804A1', b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A60804A1',
b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A60604A1',
b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A60804A1',
], ],
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x872Q0907572AA\xf1\x890396', b'\xf1\x872Q0907572AA\xf1\x890396',
@ -628,8 +628,8 @@ FW_VERSIONS = {
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A8090400', b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A8090400',
], ],
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x873Q0907572C \xf1\x890195',
b'\xf1\x872Q0907572AA\xf1\x890396', b'\xf1\x872Q0907572AA\xf1\x890396',
b'\xf1\x873Q0907572C \xf1\x890195',
], ],
}, },
CAR.TRANSPORTER_T61: { CAR.TRANSPORTER_T61: {
@ -642,8 +642,8 @@ FW_VERSIONS = {
b'\xf1\x8705L906023MR\xf1\x892582', b'\xf1\x8705L906023MR\xf1\x892582',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xf1\x870BT300012G \xf1\x893102',
b'\xf1\x870BT300012E \xf1\x893105', b'\xf1\x870BT300012E \xf1\x893105',
b'\xf1\x870BT300012G \xf1\x893102',
b'\xf1\x870BT300046R \xf1\x893102', b'\xf1\x870BT300046R \xf1\x893102',
b'\xf1\x870DV300012B \xf1\x893701', b'\xf1\x870DV300012B \xf1\x893701',
b'\xf1\x870DV300012B \xf1\x893702', b'\xf1\x870DV300012B \xf1\x893702',
@ -656,12 +656,12 @@ FW_VERSIONS = {
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
b'\xf1\x877LA909144F \xf1\x897150\xf1\x82\x0532380518A2', b'\xf1\x877LA909144F \xf1\x897150\xf1\x82\x0532380518A2',
b'\xf1\x877LA909144G \xf1\x897160\xf1\x82\x05333A5519A2',
b'\xf1\x877LA909144F \xf1\x897150\xf1\x82\x05323A5519A2', b'\xf1\x877LA909144F \xf1\x897150\xf1\x82\x05323A5519A2',
b'\xf1\x877LA909144G \xf1\x897160\xf1\x82\x05333A5519A2',
], ],
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x872Q0907572R \xf1\x890372',
b'\xf1\x872Q0907572AA\xf1\x890396', b'\xf1\x872Q0907572AA\xf1\x890396',
b'\xf1\x872Q0907572R \xf1\x890372',
], ],
}, },
CAR.TROC_MK1: { CAR.TROC_MK1: {
@ -671,25 +671,25 @@ FW_VERSIONS = {
b'\xf1\x8705E906018P \xf1\x896020', b'\xf1\x8705E906018P \xf1\x896020',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xf1\x870CW300041S \xf1\x891615',
b'\xf1\x870CW300050J \xf1\x891911', b'\xf1\x870CW300050J \xf1\x891911',
b'\xf1\x870CW300051M \xf1\x891925', b'\xf1\x870CW300051M \xf1\x891925',
b'\xf1\x870CW300051M \xf1\x891928', b'\xf1\x870CW300051M \xf1\x891928',
b'\xf1\x870CW300041S \xf1\x891615',
], ],
(Ecu.srs, 0x715, None): [ (Ecu.srs, 0x715, None): [
b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1111001111001105111111052900',
b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1311110012333300314240681152119333463100', b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1311110012333300314240681152119333463100',
b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x13111100123333003142404M1152119333613100',
b'\xf1\x875Q0959655CF\xf1\x890421\xf1\x82\x1311110012333300314240021150119333613100', b'\xf1\x875Q0959655CF\xf1\x890421\xf1\x82\x1311110012333300314240021150119333613100',
b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1111001111001105111111052900', b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x13111100123333003142404M1152119333613100',
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521060403A1',
b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521060405A1', b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521060405A1',
b'\xf1\x875WA907144M \xf1\x891051\xf1\x82\x001T06081T7N', b'\xf1\x875WA907144M \xf1\x891051\xf1\x82\x001T06081T7N',
b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521060403A1',
], ],
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x872Q0907572T \xf1\x890383',
b'\xf1\x872Q0907572M \xf1\x890233', b'\xf1\x872Q0907572M \xf1\x890233',
b'\xf1\x872Q0907572T \xf1\x890383',
], ],
}, },
CAR.AUDI_A3_MK3: { CAR.AUDI_A3_MK3: {
@ -718,8 +718,8 @@ FW_VERSIONS = {
b'\xf1\x870CW300048 \xf1\x895201', b'\xf1\x870CW300048 \xf1\x895201',
b'\xf1\x870D9300012 \xf1\x894912', b'\xf1\x870D9300012 \xf1\x894912',
b'\xf1\x870D9300012 \xf1\x894931', b'\xf1\x870D9300012 \xf1\x894931',
b'\xf1\x870D9300012L \xf1\x894521',
b'\xf1\x870D9300012K \xf1\x894513', b'\xf1\x870D9300012K \xf1\x894513',
b'\xf1\x870D9300012L \xf1\x894521',
b'\xf1\x870D9300013B \xf1\x894902', b'\xf1\x870D9300013B \xf1\x894902',
b'\xf1\x870D9300013B \xf1\x894931', b'\xf1\x870D9300013B \xf1\x894931',
b'\xf1\x870D9300041N \xf1\x894512', b'\xf1\x870D9300041N \xf1\x894512',
@ -740,8 +740,8 @@ FW_VERSIONS = {
b'\xf1\x875Q0959655AM\xf1\x890318\xf1\x82\x1311111111111112311411011531159321212100', b'\xf1\x875Q0959655AM\xf1\x890318\xf1\x82\x1311111111111112311411011531159321212100',
b'\xf1\x875Q0959655AR\xf1\x890315\xf1\x82\x1311110011131115311211012331239321212100', b'\xf1\x875Q0959655AR\xf1\x890315\xf1\x82\x1311110011131115311211012331239321212100',
b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x1311110011131100311111011731179321342100', b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x1311110011131100311111011731179321342100',
b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13111112111111--241115141112221291163221',
b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13111112111111--171115141112221291163221', b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13111112111111--171115141112221291163221',
b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13111112111111--241115141112221291163221',
b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13111112111111--241115141112221291163221', b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13111112111111--241115141112221291163221',
b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13121111111111--341117141212231291163221', b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13121111111111--341117141212231291163221',
b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13121111111211--261117141112231291163221', b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13121111111211--261117141112231291163221',
@ -767,8 +767,8 @@ FW_VERSIONS = {
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x875Q0907567M \xf1\x890398\xf1\x82\x0101', b'\xf1\x875Q0907567M \xf1\x890398\xf1\x82\x0101',
b'\xf1\x875Q0907567N \xf1\x890400\xf1\x82\x0101', b'\xf1\x875Q0907567N \xf1\x890400\xf1\x82\x0101',
b'\xf1\x875Q0907572F \xf1\x890400\xf1\x82\x0101',
b'\xf1\x875Q0907572D \xf1\x890304\xf1\x82\x0101', b'\xf1\x875Q0907572D \xf1\x890304\xf1\x82\x0101',
b'\xf1\x875Q0907572F \xf1\x890400\xf1\x82\x0101',
b'\xf1\x875Q0907572G \xf1\x890571', b'\xf1\x875Q0907572G \xf1\x890571',
b'\xf1\x875Q0907572H \xf1\x890620', b'\xf1\x875Q0907572H \xf1\x890620',
b'\xf1\x875Q0907572P \xf1\x890682', b'\xf1\x875Q0907572P \xf1\x890682',
@ -811,10 +811,10 @@ FW_VERSIONS = {
], ],
(Ecu.srs, 0x715, None): [ (Ecu.srs, 0x715, None): [
b'\xf1\x875Q0959655BF\xf1\x890403\xf1\x82\x1321211111211200311121232152219321422111', b'\xf1\x875Q0959655BF\xf1\x890403\xf1\x82\x1321211111211200311121232152219321422111',
b'\xf1\x875Q0959655BQ\xf1\x890421\xf1\x82\x132121111121120031112124218A219321532111',
b'\xf1\x875Q0959655BQ\xf1\x890421\xf1\x82\x132121111121120031112124218C219321532111', b'\xf1\x875Q0959655BQ\xf1\x890421\xf1\x82\x132121111121120031112124218C219321532111',
b'\xf1\x875Q0959655CC\xf1\x890421\xf1\x82\x131111111111120031111224118A119321532111', b'\xf1\x875Q0959655CC\xf1\x890421\xf1\x82\x131111111111120031111224118A119321532111',
b'\xf1\x875Q0959655CC\xf1\x890421\xf1\x82\x131111111111120031111237116A119321532111', b'\xf1\x875Q0959655CC\xf1\x890421\xf1\x82\x131111111111120031111237116A119321532111',
b'\xf1\x875Q0959655BQ\xf1\x890421\xf1\x82\x132121111121120031112124218A219321532111',
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567G6000300', b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567G6000300',
@ -918,12 +918,12 @@ FW_VERSIONS = {
b'\xf1\x872Q0959655BJ\xf1\x890412\xf1\x82\x132223042111042121040404042B251215391423', b'\xf1\x872Q0959655BJ\xf1\x890412\xf1\x82\x132223042111042121040404042B251215391423',
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
b'\xf1\x872Q1909144M \xf1\x896041',
b'\xf1\x872Q1909144AB\xf1\x896050', b'\xf1\x872Q1909144AB\xf1\x896050',
b'\xf1\x872Q1909144M \xf1\x896041',
], ],
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x872Q0907572T \xf1\x890383',
b'\xf1\x872Q0907572AA\xf1\x890396', b'\xf1\x872Q0907572AA\xf1\x890396',
b'\xf1\x872Q0907572T \xf1\x890383',
], ],
}, },
CAR.SKODA_KAROQ_MK1: { CAR.SKODA_KAROQ_MK1: {
@ -939,10 +939,10 @@ FW_VERSIONS = {
b'\xf1\x870GC300014L \xf1\x892802', b'\xf1\x870GC300014L \xf1\x892802',
], ],
(Ecu.srs, 0x715, None): [ (Ecu.srs, 0x715, None): [
b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1312110012120011111100010200--2521210749',
b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1213001211001101131112012100', b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1213001211001101131112012100',
b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1213001211001101131122012100', b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1213001211001101131122012100',
b'\xf1\x873Q0959655DE\xf1\x890731\xf1\x82\x0e1213001211001101131121012J00', b'\xf1\x873Q0959655DE\xf1\x890731\xf1\x82\x0e1213001211001101131121012J00',
b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1312110012120011111100010200--2521210749',
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563T6090500', b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563T6090500',
@ -959,20 +959,21 @@ FW_VERSIONS = {
CAR.SKODA_KODIAQ_MK1: { CAR.SKODA_KODIAQ_MK1: {
(Ecu.engine, 0x7e0, None): [ (Ecu.engine, 0x7e0, None): [
b'\xf1\x8704E906027DD\xf1\x893123', b'\xf1\x8704E906027DD\xf1\x893123',
b'\xf1\x8704E906027NB\xf1\x899504', b'\xf1\x8704E906027LD\xf1\x893433',
b'\xf1\x8704E906027NB\xf1\x896517', b'\xf1\x8704E906027NB\xf1\x896517',
b'\xf1\x8704E906027NB\xf1\x899504',
b'\xf1\x8704L906026DE\xf1\x895418', b'\xf1\x8704L906026DE\xf1\x895418',
b'\xf1\x8704L906026EJ\xf1\x893661', b'\xf1\x8704L906026EJ\xf1\x893661',
b'\xf1\x8704L906026HT\xf1\x893617', b'\xf1\x8704L906026HT\xf1\x893617',
b'\xf1\x8783A907115E \xf1\x890001',
b'\xf1\x8705E906018DJ\xf1\x890915', b'\xf1\x8705E906018DJ\xf1\x890915',
b'\xf1\x8705E906018DJ\xf1\x891903', b'\xf1\x8705E906018DJ\xf1\x891903',
b'\xf1\x875NA906259E \xf1\x890003',
b'\xf1\x875NA907115E \xf1\x890003', b'\xf1\x875NA907115E \xf1\x890003',
b'\xf1\x875NA907115E \xf1\x890005', b'\xf1\x875NA907115E \xf1\x890005',
b'\xf1\x875NA906259E \xf1\x890003', b'\xf1\x8783A907115E \xf1\x890001',
b'\xf1\x8704E906027LD\xf1\x893433',
], ],
(Ecu.transmission, 0x7e1, None): [ (Ecu.transmission, 0x7e1, None): [
b'\xf1\x870D9300014S \xf1\x895201',
b'\xf1\x870D9300043 \xf1\x895202', b'\xf1\x870D9300043 \xf1\x895202',
b'\xf1\x870DL300011N \xf1\x892014', b'\xf1\x870DL300011N \xf1\x892014',
b'\xf1\x870DL300012M \xf1\x892107', b'\xf1\x870DL300012M \xf1\x892107',
@ -981,17 +982,16 @@ FW_VERSIONS = {
b'\xf1\x870GC300014N \xf1\x892801', b'\xf1\x870GC300014N \xf1\x892801',
b'\xf1\x870GC300019H \xf1\x892806', b'\xf1\x870GC300019H \xf1\x892806',
b'\xf1\x870GC300046Q \xf1\x892802', b'\xf1\x870GC300046Q \xf1\x892802',
b'\xf1\x870D9300014S \xf1\x895201',
], ],
(Ecu.srs, 0x715, None): [ (Ecu.srs, 0x715, None): [
b'\xf1\x873Q0959655AP\xf1\x890306\xf1\x82\r11110011110011421111314211', b'\xf1\x873Q0959655AP\xf1\x890306\xf1\x82\r11110011110011421111314211',
b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1213001211001205212111052100',
b'\xf1\x873Q0959655BJ\xf1\x890703\xf1\x82\x0e1213001211001205212111052100', b'\xf1\x873Q0959655BJ\xf1\x890703\xf1\x82\x0e1213001211001205212111052100',
b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e1213001211001244212111442100', b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e1213001211001244212111442100',
b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e1213001211001205212112052100', b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e1213001211001205212112052100',
b'\xf1\x873Q0959655CQ\xf1\x890720\xf1\x82\x0e1213111211001205212112052111', b'\xf1\x873Q0959655CQ\xf1\x890720\xf1\x82\x0e1213111211001205212112052111',
b'\xf1\x873Q0959655DJ\xf1\x890731\xf1\x82\x0e1513001511001205232113052J00', b'\xf1\x873Q0959655DJ\xf1\x890731\xf1\x82\x0e1513001511001205232113052J00',
b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100010200--1121240749', b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100010200--1121240749',
b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1213001211001205212111052100',
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527T6050405', b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527T6050405',
@ -1002,12 +1002,12 @@ FW_VERSIONS = {
b'\xf1\x875TA907145F \xf1\x891063\xf1\x82\x002LT61A2LOM', b'\xf1\x875TA907145F \xf1\x891063\xf1\x82\x002LT61A2LOM',
], ],
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x872Q0907572Q \xf1\x890342',
b'\xf1\x872Q0907572R \xf1\x890372',
b'\xf1\x872Q0907572T \xf1\x890383',
b'\xf1\x872Q0907572AA\xf1\x890396', b'\xf1\x872Q0907572AA\xf1\x890396',
b'\xf1\x872Q0907572AB\xf1\x890397', b'\xf1\x872Q0907572AB\xf1\x890397',
b'\xf1\x872Q0907572M \xf1\x890233', b'\xf1\x872Q0907572M \xf1\x890233',
b'\xf1\x872Q0907572Q \xf1\x890342',
b'\xf1\x872Q0907572R \xf1\x890372',
b'\xf1\x872Q0907572T \xf1\x890383',
], ],
}, },
CAR.SKODA_OCTAVIA_MK3: { CAR.SKODA_OCTAVIA_MK3: {
@ -1073,12 +1073,12 @@ FW_VERSIONS = {
b'\xf1\x872Q0959655AS\xf1\x890411\xf1\x82\x1311150411110411210404040417151215391413', b'\xf1\x872Q0959655AS\xf1\x890411\xf1\x82\x1311150411110411210404040417151215391413',
], ],
(Ecu.eps, 0x712, None): [ (Ecu.eps, 0x712, None): [
b'\xf1\x872Q1909144M \xf1\x896041',
b'\xf1\x872Q1909144AB\xf1\x896050', b'\xf1\x872Q1909144AB\xf1\x896050',
b'\xf1\x872Q1909144M \xf1\x896041',
], ],
(Ecu.fwdRadar, 0x757, None): [ (Ecu.fwdRadar, 0x757, None): [
b'\xf1\x872Q0907572R \xf1\x890372',
b'\xf1\x872Q0907572AA\xf1\x890396', b'\xf1\x872Q0907572AA\xf1\x890396',
b'\xf1\x872Q0907572R \xf1\x890372',
], ],
}, },
CAR.SKODA_SUPERB_MK3: { CAR.SKODA_SUPERB_MK3: {
@ -1133,10 +1133,10 @@ FW_VERSIONS = {
b'\xf1\x875Q0909143K \xf1\x892033\xf1\x820514UZ070203', b'\xf1\x875Q0909143K \xf1\x892033\xf1\x820514UZ070203',
b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522UZ050303', b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522UZ050303',
b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522UZ070303', b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522UZ070303',
b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526UZ070505',
b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526UZ060505', b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526UZ060505',
b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563UZ060700', b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526UZ070505',
b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563UZ060600', b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563UZ060600',
b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563UZ060700',
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070500', b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070500',
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070600', b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070600',
b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070700', b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070700',

@ -76,6 +76,12 @@ def format_brand_fw_versions(brand, extra_fw_versions: None | dict[str, dict[tup
with open(fingerprints_file, "r") as f: with open(fingerprints_file, "r") as f:
comments = [line for line in f.readlines() if line.startswith("#") and "noqa" not in line] comments = [line for line in f.readlines() if line.startswith("#") and "noqa" not in line]
# sort fw versions
if fw_versions[brand] is not None:
for platform in fw_versions[brand]:
for ecu in fw_versions[brand][platform]:
fw_versions[brand][platform][ecu] = sorted(fw_versions[brand][platform][ecu])
with open(fingerprints_file, "w") as f: with open(fingerprints_file, "w") as f:
f.write(FINGERPRINTS_PY_TEMPLATE.render(brand=brand, comments=comments, ECU_NAME=ECU_NAME, f.write(FINGERPRINTS_PY_TEMPLATE.render(brand=brand, comments=comments, ECU_NAME=ECU_NAME,
FINGERPRINTS=FINGERPRINTS, FW_VERSIONS=fw_versions)) FINGERPRINTS=FINGERPRINTS, FW_VERSIONS=fw_versions))

Loading…
Cancel
Save