openpilot icon indicating copy to clipboard operation
openpilot copied to clipboard

VIN: query common addresses

Open sshane opened this issue 3 years ago • 5 comments

Switches from querying the functional addresses (which don't work on some electric/hybrid Hyundai) to querying the rx addresses from the current functional address requests.

General cars:

  • [x] KIA OPTIMA SX 2019 & 2016
  • [x] TOYOTA RAV4 2017
  • [x] Civic 2016-18
  • [x] Civic 2022

Different 29-bit address in logs:

  • [ ] HONDA FIT 2018
  • [ ] HONDA HRV 2019
  • [ ] HONDA CR-V HYBRID 2019
  • [ ] HONDA ODYSSEY CHN 2019
  • [ ] HONDA ODYSSEY 2018
  • [ ] HONDA RIDGELINE 2017
  • [ ] HONDA PILOT 2017
  • [ ] HONDA CR-V 2016
  • [ ] HONDA INSIGHT 2019
  • [x] HONDA ACCORD HYBRID 2018 - c55c923bcc7cd3fa|2022-08-26--18-38-26

Platforms that have responded to multiple queries:

  • [x] RAM 1500 5TH GEN - responds on engine, transmission, and hybrid controller ECUs, even when we weren't getting the engine ECU. Engine will always be common, but hybrids are suspected to have a combined transmission ECU with something else
  • [ ] CHRYSLER PACIFICA 2020
  • [ ] CHRYSLER PACIFICA HYBRID 2019
  • [ ] CHRYSLER PACIFICA HYBRID 2018
  • [ ] JEEP GRAND CHEROKEE 2019
  • [ ] CHRYSLER PACIFICA 2018

Electric Hyundai with bad VINs:

  • [ ] HYUNDAI KONA ELECTRIC 2019
  • [ ] HYUNDAI IONIQ ELECTRIC 2020
  • [x] HYUNDAI IONIQ 5 2022 (ca2ee648cdaf65a6|2022-08-23--19-52-19)
  • [x] KIA EV6 2022
  • [ ] KIA NIRO EV 2020
  • [ ] 2022 Kona Electric in Malaysia does NOT work (before or after). Checked all ECUs and nothing responded to any standard identifier with his chassis number. User's car also doesn't seemingly have an engine ECU or a VMCU.

sshane avatar Jul 12 '22 02:07 sshane

Waiting for https://github.com/commaai/openpilot/pull/25148 to be in master for a least a few days before moving over. Then we'll know for sure we won't lose any VINs we previously could query

sshane avatar Jul 13 '22 08:07 sshane

This solves the VIN issues faced in #25188

Route: 86d00e12925f4df7|2022-07-18--20-24-15

incognitojam avatar Jul 18 '22 19:07 incognitojam

Are you sure? I don't see the vin being returned in the routes on this branch. Oh I see the route in https://github.com/commaai/openpilot/pull/25202 works, cool!

sshane avatar Jul 19 '22 00:07 sshane

I'll write a notebook to find all the rx addrs and add them to this PR, then should be good to merge. One outlier could be some international cars, the user with the camera SCC car still doesn't get a VIN with these changes, but it could be unrelated. I saw some exceptions, so I'll work with him soon to see if it's a simple fix

sshane avatar Aug 12 '22 11:08 sshane

Ran on some data from the release, here's the VIN rx addr openpilot used, and the cars that returned with that RX addr (not checking if VIN was correct):

2024 {'mock', 'GENESIS G70 2018', 'TOYOTA RAV4 2019', 'VOLKSWAGEN POLO 6TH GEN', 'TOYOTA CAMRY 2018', 'HYUNDAI IONIQ PHEV 2020', 'TOYOTA CAMRY 2021', 'TOYOTA AVALON 2022', 'TOYOTA HIGHLANDER HYBRID 2020', 'SUBARU FORESTER 2019', 'TOYOTA COROLLA TSS2 2019', 'LEXUS NX 2020', 'HYUNDAI SANTA FE 2022', 'LEXUS RX 2020', 'KIA NIRO HYBRID 2021', 'TOYOTA AVALON HYBRID 2022', 'HYUNDAI SANTA FE HYBRID 2022', 'TOYOTA COROLLA 2017', 'SUBARU OUTBACK 2018 - 2019', 'TOYOTA HIGHLANDER 2017', 'LEXUS NX HYBRID 2018', 'TOYOTA PRIUS TSS2 2021', 'NISSAN ROGUE 2019', 'TOYOTA AVALON 2016', 'TOYOTA RAV4 2017', 'HYUNDAI SONATA 2020', 'JEEP GRAND CHEROKEE V6 2018', 'SUBARU IMPREZA SPORT 2020', 'SUBARU OUTBACK 6TH GEN', 'CHRYSLER PACIFICA HYBRID 2019', 'TOYOTA CAMRY HYBRID 2021', 'TOYOTA RAV4 HYBRID 2017', 'TOYOTA HIGHLANDER HYBRID 2018', 'SUBARU IMPREZA LIMITED 2019', 'JEEP GRAND CHEROKEE 2019', 'TOYOTA RAV4 2022', 'HYUNDAI VELOSTER 2019', 'AUDI A3 3RD GEN', 'CHRYSLER PACIFICA HYBRID 2018', 'HYUNDAI I30 N LINE 2019 & GT 2018 DCT', 'LEXUS RX 2016', 'TOYOTA C-HR 2018', 'KIA NIRO HYBRID 2019', 'KIA FORTE E 2018 & GT 2021', 'KIA SORENTO GT LINE 2018', 'KIA OPTIMA SX 2019 & 2016', 'TOYOTA COROLLA HYBRID TSS2 2019', 'HYUNDAI SANTA FE PlUG-IN HYBRID 2022', 'HYUNDAI ELANTRA 2021', 'LEXUS ES HYBRID 2018', 'TOYOTA RAV4 HYBRID 2022', 'TOYOTA HIGHLANDER 2020', 'LEXUS IS 2018', 'SUBARU ASCENT LIMITED 2019', 'SEAT ATECA 1ST GEN', 'LEXUS RX HYBRID 2017', 'MAZDA CX-9', 'HYUNDAI KONA HYBRID 2020', 'CHEVROLET BOLT EUV 2022', 'HYUNDAI SONATA HYBRID 2021', 'VOLKSWAGEN ATLAS 1ST GEN', 'LEXUS NX 2018', 'HYUNDAI IONIQ HYBRID 2017-2019', 'VOLKSWAGEN PASSAT 8TH GEN', 'HYUNDAI GENESIS 2015-2016', 'VOLKSWAGEN TIGUAN 2ND GEN', 'HYUNDAI SONATA 2019', 'VOLKSWAGEN JETTA 7TH GEN', 'TOYOTA CAMRY HYBRID 2018', 'TOYOTA AVALON HYBRID 2019', 'CHRYSLER PACIFICA 2020', 'HYUNDAI PALISADE 2020', 'TOYOTA RAV4 HYBRID 2019', 'TESLA AP2 MODEL S', 'CADILLAC ATS Premium Performance 2018', 'CHRYSLER PACIFICA 2018', 'TOYOTA SIENNA 2018', 'RAM 1500 5TH GEN', 'GENESIS G80 2017', 'CHEVROLET SILVERADO 1500 2020', 'HYUNDAI ELANTRA HYBRID 2021', 'KIA STINGER GT2 2018', 'KIA K5 2021', 'VOLKSWAGEN ARTEON 1ST GEN', 'HYUNDAI SANTA FE 2019', 'MAZDA CX-9 2021', 'VOLKSWAGEN TAOS 1ST GEN', 'MAZDA CX-5 2022', 'NISSAN ALTIMA 2020', 'LEXUS ES 2019', 'VOLKSWAGEN GOLF 7TH GEN', 'LEXUS ES HYBRID 2019', 'TOYOTA PRIUS 2017', 'HYUNDAI IONIQ PLUG-IN HYBRID 2019', 'TOYOTA AVALON 2019'}

417001744 {'HONDA PASSPORT 2021', 'mock', 'HONDA ODYSSEY 2018', 'HONDA CIVIC 2022', 'HONDA RIDGELINE 2017', 'HONDA PILOT 2017', 'HONDA CIVIC 2016', 'ACURA RDX 2020', 'HONDA ACCORD 2018', 'HONDA CR-V 2017', 'HONDA CIVIC (BOSCH) 2019'}

2028 {'mock', 'HYUNDAI KONA ELECTRIC 2019', 'HYUNDAI IONIQ ELECTRIC 2020', 'HYUNDAI IONIQ 5 2022', 'KIA EV6 2022', 'KIA NIRO EV 2020'}
check
417001742 {'HONDA FIT 2018', 'mock', 'HONDA HRV 2019', 'HONDA CR-V HYBRID 2019', 'HONDA ODYSSEY CHN 2019', 'HONDA ODYSSEY 2018', 'HONDA RIDGELINE 2017', 'HONDA PILOT 2017', 'HONDA CR-V 2016', 'HONDA INSIGHT 2019', 'HONDA ACCORD HYBRID 2018'}

2025 {'CHRYSLER PACIFICA 2020', 'mock', 'RAM 1500 5TH GEN', 'JEEP GRAND CHEROKEE 2019', 'CHRYSLER PACIFICA 2018'}

2026 {'CHRYSLER PACIFICA HYBRID 2019', 'mock', 'RAM 1500 5TH GEN', 'CHRYSLER PACIFICA HYBRID 2018'

And here's all the responses we've ever gotten from 2028:

2028 {'CVEV-- BMS       ', 'DN8HEV BMS \x00\x00\x00\x00\x00\x00', 'NE3EV- BMS       ', '00000000000000000', 'DEEV__ BMS \x00\x00\x00\x00\x00\x00', 'AEEVPE BMS \x00\x00\x00\x00\x00\x00', 'NEEV-- BMS       ', 'OSEV__ BMS \x00\x00\x00\x00\x00\x00'}

Looks like we definitely need this fix. I'll try to get testers for the cars that didn't respond on the normal engine ecu addresses (11-bit and 29-bit).

sshane avatar Aug 24 '22 04:08 sshane