commaai / commaai/opendbc

Hyundai: detect lateral API

Open
#1,105 4 comments 0 reactions 0 assignees View on GitHub
car enhancement hyundai
Dominant language
Python
Stars
3.4k
Forks
2.3k
Avg merge
3d 2h
Merged PRs (30d)
38

Description

A lot of newer Hyundai vehicles we have yet to merge are blocked on different lateral control behavior, a mostly complete list is here: https://github.com/commaai/openpilot/discussions/30810

We should find a way to detect when the API is different and how. For the cars above, the main two differences we care about are achieving significantly more or less lateral acceleration when applying the same torque.

To prevent fingerprinting on these new vehicles and giving our users a bad experience, our fuzzy fingerprinting function checks that we've seen the camera part number and build/flash date in the FW. This, however, stops a lot of new cars from fingerprinting when the API has not changed, as we don't know if anything has changed when one of these values gets bumped.

For example, the 2024 EV6 is the same as previous models with a new part number: https://github.com/commaai/openpilot/pull/32524 However the 2024 Kia Sorento Hybrid acheives significantly less lateral acceleration (less than half) and the only thing that was bumped was the date in the FW by a few months (which I suspect is either part build date, FW build date, or flash date).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the vehicle list in discussion 30810 and comparing the 2024 EV6 with the 2024 Kia Sorento Hybrid described in the issue. No files or tests are named; done means detecting when the lateral API differs and how, without blocking vehicles whose firmware metadata changed but behavior did not.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
reverse-engineering
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.