-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(EU): #514 Genesis EU authentication #638
base: master
Are you sure you want to change the base?
Conversation
This does break other brands as you can see from the failed test build, that calls a real car. This code will need to be aligned to existing if close enough logic, which it appears to be. If drastically different a new class needs to be defined. |
Hi there, any chance that this code and therefore Genesis support will be integrated? |
Someone with a Genesis will need to complete the required changes before it is merged. Currently this code breaks the other brands. |
I have a Genesis to test...but I'm not a developer :-( |
I will try to integrate the code properly |
for more information, see https://pre-commit.ci
I tried to update the existing authentication flow but it always failed to fetch the token. Even comparing HTTP requests I couldn’t figure out why. Instead I’ve created a new flow for Genesis replicating exactly what I logged from my phone app and this seems to work for me. |
sounds great! Are the commands after authentication also working? Like getting the current SOC? |
Yes, I've been using it in Home Assistant since September and everything seems to work with with our electrified GV70 once the authentication is successful. You can test it by manually installing the Kia Uvo integration in Home Assistant (place in custom_components) and change the requirements line in manifest.json to:
|
I'll try to test this ;-) I don't use HA at the moment but I want to integrate this into the evcc project here: evcc-io/evcc#13929 |
This is a fix for #514
I initially tried to adjust the existing auth flow but couldn’t get it to work so started from scratch. I recorded the API and reproduced the HTTP requests in a test script then incorporated it. I am not sure if all steps are required.
Apologies if the code is messy, I don’t fully understand the API or library and used ChatGPT to mash it all together. This code works for Genesis but may have broken the other brands. Hopefully it’s a start and someone with better knowledge and skills can take a look through and tidy it up or suggest changes before merging.