Skip to content
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

BMW/Mini hcaptcha integration #17445

Merged
merged 9 commits into from
Nov 26, 2024
Merged

BMW/Mini hcaptcha integration #17445

merged 9 commits into from
Nov 26, 2024

Conversation

BrickTop87
Copy link
Contributor

Minimally invasive fix for broken BMW/Mini API #17332
hcaptcha must be generated once using https://bimmer-connected.readthedocs.io/en/latest/captcha/rest_of_world.html and copied to evcc.yaml
Refresh tokens received after first login are persisted in the database and get refreshed every time the token is refreshed.

@andig andig added the vehicles Specific vehicle support label Nov 26, 2024
@andig
Copy link
Member

andig commented Nov 26, 2024

Lgtm. Ok to merge?

@BrickTop87
Copy link
Contributor Author

Yes from my side.

@andig andig merged commit 9754bb9 into evcc-io:master Nov 26, 2024
@mha1
Copy link

mha1 commented Nov 26, 2024

I have successfully built and tested your fix on Raspberry Pi4. Please go ahead with merging. I suggest some script wizard implementing a shell script to automate the captcha generation and transfer to evcc.yaml process.

Testing:

Not having hcatcha defined in evcc.yaml throws a "missing credentials" error as expected.

  1. Generated the captcha using https://bimmer-connected.readthedocs.io/en/latest/captcha/rest_of_world.html
  2. Copied the captcha string to evcc.yaml hcaptcha label
  3. Restarted evcc
  4. Vehicle data is present

Vehicle config:

vehicles:
- name: BMWX1
  type: template
  template: bmw
  title: BMWX1
  user: ***
  password: ***
  hcaptcha: *** captch string here ***
  vin: ***                                                                             
  capacity: 15
  phases: 3
  region: EU

image

@cdyna43
Copy link

cdyna43 commented Nov 26, 2024

I tried

type: template
template: bmw
title: 545e
icon: car
user: c*******
password: 1****
hcaptcha: 0u2P-R--*
name: ev4
phases: 1
capacity: 12
region: EU

and got this:

main ] FATAL 2024/11/26 10:48:17 cannot create vehicle 'ev4': cannot create vehicle type 'template': invalid key: hcaptcha

Do I need to enter my VIN?

Side note: I there a reason why my evcc logs under "add ons" no longer update or only update like every 10 minutes? If not, is there a fix?

@BrickTop87
Copy link
Contributor Author

BrickTop87 commented Nov 26, 2024

Are you sure you ran the newly compiled executable?
The error means that evcc doesn't know the "hcaptcha" label in the vehicle settings, which could indicate you're running the unmodified version without the PR.

Also, when I generate an hcptcha code it always starts with "P1_...". Are you sure you got it right?

@cdyna43
Copy link

cdyna43 commented Nov 26, 2024

Are you sure you ran the newly compiled executable? The error means that evcc doesn't know the "hcaptcha" label in the vehicle settings, which could indicate you're running the unmodified version without the PR.

Of course I did not....I am afraid I need to be told every step.... What do I need to do?

@BrickTop87
Copy link
Contributor Author

Just wait for the next release of evcc and make an update. The fix will be included then.

@cdyna43
Copy link

cdyna43 commented Nov 26, 2024

Just wait for the next release of evcc and make an update. The fix will be included then.

Will do. Thank you!

@mha1
Copy link

mha1 commented Nov 26, 2024

@BrickTop87 sudo evcc -c /etc/evcc.yaml -l debug vehicle fails while evcc itself is working fine (SOC, range showing).

image

@BrickTop87
Copy link
Contributor Author

BrickTop87 commented Nov 26, 2024

I guess the sqlite database your evcc normally uses isn't located at /root/.evcc/evcc.db. It's using that db because you're using sudo. When evcc uses /root/.evcc/evcc.db, it doesn't find the stored token and tries a new login with the hcaptcha from evcc.yaml, which seems to be outdated or already used.

@mha1
Copy link

mha1 commented Nov 26, 2024

I guess the sqlite database your evcc normally uses isn't located at /root/.evcc/evcc.db. It's using that db because you're using sudo. When evcc uses /root/.evcc/evcc.db, it doesn't find the stored token and tries a new login with the hcaptcha from evcc.yaml, which seems to be outdated or already used.

Same thing calling it without sudo. And it does get fed /etc/evcc.yaml which contains the token.

@BrickTop87
Copy link
Contributor Author

BrickTop87 commented Nov 26, 2024

Did you renew the hcaptcha in your /etc/evcc.yaml manually just before executing the command?

Just tried, works as expected:

ubuntu@instance-20240407-2111:~/src/evcc$ sudo ./evcc vehicle
[main  ] INFO 2024/11/26 16:08:58 evcc 0.131.7
[main  ] INFO 2024/11/26 16:08:58 using config file: /etc/evcc.yaml
[db    ] INFO 2024/11/26 16:08:58 using sqlite database: /root/.evcc/evcc.db
[bmw   ] DEBUG 2024/11/26 16:08:58 identity.Login - database token found
[bmw   ] TRACE 2024/11/26 16:08:58 POST https://customer.bmwgroup.com/gcdm/oauth/token
[bmw   ] TRACE 2024/11/26 16:08:58 grant_type=refresh_token&redirect_uri=com.bmw.connected%3A%2F%2Foauth&refresh_token=***
--
{"gcid":"***","token_type":"Bearer","access_token":"***","refresh_token":"***","scope":"smacc vehicle_data perseus dlm svds openid profile vsapi remote_services authenticate_user cesim offline_access email fupo","expires_in":3599,"id_token":"..."}
[bmw   ] TRACE 2024/11/26 16:08:58 GET https://cocoapi.bmwgroup.com/eadrax-vcs/v4/vehicles?apptimezone=120&appDateTime=1732633738656
[bmw   ] TRACE 2024/11/26 16:08:58 [{"vin":"***",...}]
[bmw   ] TRACE 2024/11/26 16:08:58 GET https://cocoapi.bmwgroup.com/eadrax-vcs/v4/vehicles/state?apptimezone=120&appDateTime=1732633738890
[bmw   ] TRACE 2024/11/26 16:08:59 {"state":{"isLeftSteering":true,...}}
Soc:           18%
Capacity:      81.0kWh
Charge status: B
Range:         73km
Odometer:      13021km
Limit Soc:     100%
OnIdentified:  Mode:pv
[db    ] TRACE 2024/11/26 16:08:59 INSERT INTO `settings` (`key`,`value`) VALUES ("bmw.to***","{""access_token"":""****"",""token_type"":""Bearer"",""refresh_token"":""***"",""expiry"":""2024-11-26T17:08:57.656140484+01:00"",""expires_in"":3599}") ON CONFLICT (`key`) DO UPDATE SET `value`=`excluded`.`value` 1 <nil>

@mha1
Copy link

mha1 commented Nov 26, 2024

Did you renew the hcaptcha in your /etc/evcc.yaml manually just before executing the command?

No, evcc was running normally in parallel. Does evcc -c /etc/evcc.yaml -l debug vehicle start a separate instance of evcc? But why would it require a new token. Same login credentials as the previously started evcc after token was generated.

@BrickTop87
Copy link
Contributor Author

The hcaptcha is only valid for a single time. Once it's used, it's invalid. So you'd have to renew the hcaptcha manually every time you restart evcc.

But after successfully logging in with user, password and hcaptcha, we get another set of tokens from BMW (access token and refresh token) and store them in the sqlite database evcc.db. When restarting evcc, it looks for these tokens in the db and "logs in" using them. From this point, no captcha is required. Except when you lose the database or too much time has passed (maybe weeks or months, we don't know).

My guess in your case is that evcc normally uses the database /var/lib/evcc/evcc.db. The tokens are stored there. When using /root/.evcc/evcc.db, it can't find the stored tokens.

@mha1
Copy link

mha1 commented Nov 26, 2024

Thanks for taking the time to look into this. You are right /var/lib/evcc/evcc.db exists and has a very recent time stamp. /root/.evcc/evcc.db also exists but is dated 3 days old.

But why doesn't the debug command use /var/lib/evcc/evcc.db if started without sudo?

@BrickTop87
Copy link
Contributor Author

When running as a service, the database path is defined in the unit configuration file as /var/lib/evcc/evcc.db.
When running from the command line, it uses a file in the current user's home path. Not sure why, though.

@andig
Copy link
Member

andig commented Nov 26, 2024

@BrickTop87 mir fällt grad auf dass 9754bb9#diff-043b7389199df70a93120e91d23de8e2670cbc95f0cbe61859be4818444e4cb4R174 Den err von drüber überschreibt, da fehlt also eine Fehlerbehandlung. Dem Code fehlt auch die Formatierung mit gofmt. Deshalb baut gerade kein Nightly. Willst Du es nochmal anschauen?

@BrickTop87
Copy link
Contributor Author

Das mit dem err ist mir heute auch irgendwann aufgefallen.
Aber parallel hat es @naltatis schon gefixt: da4a797
Funktioniert es zusammen mit seinen Änderungen?

@andig
Copy link
Member

andig commented Nov 26, 2024

Sieht so aus 👍🏻

@lingej
Copy link

lingej commented Nov 30, 2024

@andig v0.131.8 ist bei mir installiert, hacaptcha für meinen Mini ist gesetzt und der SoC wird wieder ausgelesen.

Vielen Dank ans ganze Team für die tolle Arbeit.

@pk1057
Copy link

pk1057 commented Nov 30, 2024

Bei mir will es noch nicht so, aber da kann auch BMW schuld dran sein:
[bmw ] DEBUG 2024/11/30 13:59:22 identity.Login - database token found
[bmw ] DEBUG 2024/11/30 13:59:22 identity.Login - database token found
[main ] ERROR 2024/11/30 13:59:32 creating vehicle ev2 failed: cannot create vehicle type 'template': cannot create vehicle type 'bmw': cannot get vehicles: Get "https://cocoapi.bmwgroup.com/eadrax-vcs/v4/vehicles?apptimezone=120&appDateTime=1732971562352": net/http: request canceled (Client.Timeout exceeded while awaiting headers)
[main ] ERROR 2024/11/30 13:59:32 creating vehicle ev1 failed: cannot create vehicle type 'template': cannot create vehicle type 'bmw': cannot get vehicles: Get "https://cocoapi.bmwgroup.com/eadrax-vcs/v4/vehicles?apptimezone=120&appDateTime=1732971562356": net/http: request canceled (Client.Timeout exceeded while awaiting headers)

@cdyna43
Copy link

cdyna43 commented Nov 30, 2024

Bei mir will es noch nicht so, aber da kann auch BMW schuld dran sein: [bmw ] DEBUG 2024/11/30 13:59:22 identity.Login - database token found [bmw ] DEBUG 2024/11/30 13:59:22 identity.Login - database token found [main ] ERROR 2024/11/30 13:59:32 creating vehicle ev2 failed: cannot create vehicle type 'template': cannot create vehicle type 'bmw': cannot get vehicles: Get "https://cocoapi.bmwgroup.com/eadrax-vcs/v4/vehicles?apptimezone=120&appDateTime=1732971562352": net/http: request canceled (Client.Timeout exceeded while awaiting headers) [main ] ERROR 2024/11/30 13:59:32 creating vehicle ev1 failed: cannot create vehicle type 'template': cannot create vehicle type 'bmw': cannot get vehicles: Get "https://cocoapi.bmwgroup.com/eadrax-vcs/v4/vehicles?apptimezone=120&appDateTime=1732971562356": net/http: request canceled (Client.Timeout exceeded while awaiting headers)

Selber Fehler wie bei mir...
Aber bei dir haben wir "database token found"

@Zeff1971
Copy link

Zeff1971 commented Nov 30, 2024

Hi, ich hatte die gleichen (bzw. ähnliche) Fehlermeldungen aber nach einem Passwortreset bei BMW sind nun meine beiden Fahrzeuge wieder online. Bevor es geklappt hat, musste ich auch mehrfach neu starten. Bei ersten Mal hatte ich ein 401-Fehler bekommen.
Viel Erfolg!

@Worog5
Copy link

Worog5 commented Nov 30, 2024

Leider läuft es bei mir nicht so rund wie bei anderen. Ich habe trotz Update auf die 0.131.8 Probleme meinen Mini wieder online zu bekommen.
Folgende Fehlermeldung bekomme ich:
[mini ] DEBUG 2024/11/30 15:36:48 identity.Login - no database token found. Proceeding to login via user, password and captcha. [main ] ERROR 2024/11/30 15:36:49 creating vehicle xxx failed: cannot create vehicle type 'template': cannot create vehicle type 'mini': unexpected status: 429 (Too Many Requests)

Jemand eine Idee?

@flofreund
Copy link

Hallo Zusammen,
ich habe gerade Update gemacht, hat alles gekappt. Vielen Dank
hcaptcha: bei beiden BMWs eingefügt. geht.

@Chepo21
Copy link

Chepo21 commented Nov 30, 2024

Bei mir hat auch geklappt. Danke!

@cdyna43
Copy link

cdyna43 commented Nov 30, 2024

Hi, ich hatte die gleichen (bzw. ähnliche) Fehlermeldungen aber nach einem Passwortreset bei BMW sind nun meine beiden Fahrzeuge wieder online. Bevor es geklappt hat, musste ich auch mehrfach neu starten. Bei ersten Mal hatte ich ein 401-Fehler bekommen. Viel Erfolg!

Mehrfach neu starten und jedes Mal neuen Captcha einfügen oder einfach so?

Hat irgend jemand es unter Home Assistant zum Laufen bekommen? Ich habe es gefühlt 100 Mal versucht, auch mit geändertem Passwort.
Es bleibt bei

"creating vehicle ev4 failed: cannot create vehicle type 'template': cannot create vehicle type 'bmw': Client authentication failed (e.g., login failure, unknown client, no client authentication included or unsupported authentication method): unexpected status: 401 (Unauthorized)"

Nachtrag:
Habe extra noch einmal EVCC unter Windows installiert, um auszuschließen, dass es am Homeassistant liegt. Passwort bei BMW geändert. Neues Captcha.

Neues Ergebnis:
ERROR 2024/11/30 18:26:35 creating vehicle ev4 failed: cannot create vehicle type 'template': cannot create vehicle type 'bmw': cannot get vehicles: Get "https://cocoapi.bmwgroup.com/eadrax-vcs/v4/vehicles?apptimezone=120&appDateTime=1732987595029": read tcp [2a02:8071:d80:4b00:b47a:3dbb:17e4:f3a4]:51936->[2620:1ec:bdf::45]:443: wsarecv: An existing connection was forcibly closed by the remote host.

Nächster Edit:
Als ich mir gerade gesagt hatte, dass das jetzt wirklich der allerletzte Versuch ist - noch einmal neuer Captcha - funktioniert es unter Windows.
Versuch unter HA folgt.

Nächster Edit:
Unter HA weiter der 401-Fehler.

@Marc2480
Copy link

Hallo Zusammen, ich habe gerade Update gemacht, hat alles gekappt. Vielen Dank hcaptcha: bei beiden BMWs eingefügt. geht.

Do you use the same hcaptcha for both cars ?

thx!

@Zeff1971
Copy link

Hallo Zusammen, ich habe gerade Update gemacht, hat alles gekappt. Vielen Dank hcaptcha: bei beiden BMWs eingefügt. geht.

Do you use the same hcaptcha for both cars ?

thx!

Hi, yes both the same. Best regards

@Zeff1971
Copy link

Hi, ich hatte die gleichen (bzw. ähnliche) Fehlermeldungen aber nach einem Passwortreset bei BMW sind nun meine beiden Fahrzeuge wieder online. Bevor es geklappt hat, musste ich auch mehrfach neu starten. Bei ersten Mal hatte ich ein 401-Fehler bekommen. Viel Erfolg!

Mehrfach neu starten und jedes Mal neuen Captcha einfügen oder einfach so?

Hat irgend jemand es unter Home Assistant zum Laufen bekommen? Ich habe es gefühlt 100 Mal versucht, auch mit geändertem Passwort. Es bleibt bei

"creating vehicle ev4 failed: cannot create vehicle type 'template': cannot create vehicle type 'bmw': Client authentication failed (e.g., login failure, unknown client, no client authentication included or unsupported authentication method): unexpected status: 401 (Unauthorized)"

Nachtrag: Habe extra noch einmal EVCC unter Windows installiert, um auszuschließen, dass es am Homeassistant liegt. Passwort bei BMW geändert. Neues Captcha.

Neues Ergebnis: ERROR 2024/11/30 18:26:35 creating vehicle ev4 failed: cannot create vehicle type 'template': cannot create vehicle type 'bmw': cannot get vehicles: Get "https://cocoapi.bmwgroup.com/eadrax-vcs/v4/vehicles?apptimezone=120&appDateTime=1732987595029": read tcp [2a02:8071:d80:4b00:b47a:3dbb:17e4:f3a4]:51936->[2620:1ec:bdf::45]:443: wsarecv: An existing connection was forcibly closed by the remote host.

Nächster Edit: Als ich mir gerade gesagt hatte, dass das jetzt wirklich der allerletzte Versuch ist - noch einmal neuer Captcha - funktioniert es unter Windows. Versuch unter HA folgt.

Nächster Edit: Unter HA weiter der 401-Fehler.

Hi, bei mir war captcha in der Datenbank und dann habe ich mehrfach gestartet ohne etwas zu ändern. Läuft unter Home Assistant. Viel Erfolg.

@m1lk0
Copy link

m1lk0 commented Nov 30, 2024

Funktioniert hier, mit Home Assistant.
Danke - habe auch nochmal das Sponsoring für diesen Fix aktualisiert.

@blenni
Copy link
Contributor

blenni commented Nov 30, 2024

Ich bekomme keinen Fehler 401, sondern 403:
Client authentication failed (e.g., login failure, unknown client, no client authentication included or unsupported authentication method): unexpected status: 403 (Forbidden)

Hat sonst auch noch jemand das Problem?

@cmayr123
Copy link

Ich bekomme keinen Fehler 401, sondern 403: Client authentication failed (e.g., login failure, unknown client, no client authentication included or unsupported authentication method): unexpected status: 403 (Forbidden)

Hat sonst auch noch jemand das Problem?

Hey,
Ja, ich habe das gleiche Problem.
Wenn ich neu starte kommt dann der Fehler "429 (Too Many Requests)"

@privat99
Copy link

Bei mir hat es direkt unter HA funktioniert.
Zuerst habe ich die Version auf 0.131.8 update durchgeführt
evcc beendet
File Editor die evcc.yaml geöffnet
In meinem BMW Eintrag nach den Zugangsdaten hcaptcha: eingefügt
Das hcaptcha erstellt und direkt mit Copy Clipboard kopiert.
Direkt in die Zeile kopiert.
Datei geschlossen und in einem anderen Fenster den evcc Dienst gestartet.

Fahrzeug wurde direkt erkannt.

Ich habe irgendwo gelesen, dass das hcaptcha nur kurze Zeit gültig ist.

Danke an allen die die Losung getestet und umgesetzt haben.

@BrickTop87
Copy link
Contributor Author

@blenni und @cmayr123: Bei euch klingt es als würde BMW wegen zu vielen Zugriffen den Zugang temporär blockieren. Habt ihr sonst noch was parallel am laufen, was auf die BMW Dienste zugreift?
Ich würde mal versuchen, evcc und alle sonstigen Dienste mit BMW-Zugriff für eine halbe Stunde oder Stunde komplett zu stoppen. Auch keine BMW App verwenden. Und dann nur evcc starten mit einem ganz frisch generierten hcaptcha.

@pdonovan
Copy link

pdonovan commented Dec 1, 2024

I had to comment out the loadpoints and chargers section in my evcc.yaml to disable my charger so that EVCC started up quick enough to avoid the hcaptcha token from expiring. Once it had got the token I re-enabled the charger and started the evcc service again.
Is there a way to pass a command line arg to tell evcc where to find the database? Then users can use the evcc -c /etc/evcc.yaml -l debug vehicle method to just quickly get the login done.

@BrickTop87
Copy link
Contributor Author

I didn't realize that there are setups where evcc needs a lot of time to start up.
You should be able to set the database path by calling
export EVCC_DATABASE_DSN=/path/to/db/evcc.db
before calling evcc.

@cdyna43
Copy link

cdyna43 commented Dec 1, 2024

Funktioniert hier, mit Home Assistant. Danke - habe auch nochmal das Sponsoring für diesen Fix aktualisiert.

Bei mir unter Home Assistant immer der 401er Fehler. Identische evcc.yaml hat unter Windows eine Minute vorher funktioniert...

Ist es bei euch eigentlich auch so, dass ihr unter HA beim Starten die Logs nicht seht? Die Logs kommen erst, wenn er entweder verbunden ist oder aber, wenn er wegen FATAL abgebrochen hat - sprich, man sieht immer erst nach 5 bis 10 Minuten, was Sache ist.

Vielleicht sollte ich einfach mal mein EVCC auf dem HA neu installieren...

Edit:
EVCC auf HA de- und neu installiert. Copy/paste aus der evcc-yaml, die unter Windows lief. Ich war etwas erstaunt, dass ich beim Starten meine alten Log gesehen habe - Ist das normal, dass bei der De-Installation gespeichert bleiben ? Nicht dass ich was auch immer für den Fehler verantwortlich ist, nicht deinstalliert habe.

Ergebnis weiterhin:
[bmw ] DEBUG 2024/12/01 08:53:54 identity.Login - no database token found. Proceeding to login via user, password and captcha.
[main ] ERROR 2024/12/01 08:53:54 creating vehicle ev4 failed: cannot create vehicle type 'template': cannot create vehicle type 'bmw': Client authentication failed (e.g., login failure, unknown client, no client authentication included or unsupported authentication method): unexpected status: 401 (Unauthorized)

Bei den Protokollen bekomme ich übrigens bisweilen:
Fehler beim Abrufen der 49686a9f_evcc-Protokolle, network error

Weiterer Nachtrag:
Home Assistant komplett neu aufgesetzt. Nur EVCC und File Explorer. Siehe da, Logs wieder in Echtzeit und nach einigen Versuchen klappt auch die Verbundung zu BMW. Jetzt kann ich meinen Sonntag damit verbringen, meinen HA wieder aufzusetzen...

@Marc2480
Copy link

Marc2480 commented Dec 1, 2024

I struggled a bit to get my existing configuration running with the hcaptcha, adding the car and captcha in the web-configuration would work, but not in the yaml config.

What fixed it for me was use to "evcc migrate" and adding a fresh captcha in the yaml to get the existing configuration running.

@pk1057
Copy link

pk1057 commented Dec 1, 2024

Bei mir geht es inzwischen.
Habe ein Auto auskommentiert für das andere ein hcaptcha geholt und den container neu gestartet dann war die Meldung weg.
Danach den zweiten mit den hcaptcha des ersten wieder rein und es ging .
Ob es nun daran lag oder BMW mal wieder Probleme hatte keine Ahnung.
Ein riesen Lob und Dank an die Entwickler für ihre unermüdliche Arbeit um uns aus diesem Vendor Lock In versuchen zu befreien !!!!!

@aengelhorn
Copy link

Prima, neue Version installiert, hcaptcha generiert und eingefügt. Neu gestartet. Fehler. Noch mal gestartet - ging. Danke an alle Beteiligten für die schnelle (Interims-)Lösung!

@blenni
Copy link
Contributor

blenni commented Dec 1, 2024

Bei mir kommt immer noch der Fehler 403 (auch nach einer Nacht Pause ohne irgendwelche Abfragen)
Mein bimmerconnected funktioniert nach wie vor, ich bleibe erstmal bei meinem Workarround.

Was mir zusätzlich noch aufgefallen ist:
In meinem Standard-Browser bin bzw. bleibe ich eingeloggt.
Wenn ich aber einen anderen Browser nehme, bekomme ich folgenden Fehler (auch für das Konto meiner Frau):

image

Edit: Irgendwie scheint meine IP geblockt zu sein, wenn ich mich am Handy über WLAN an einem anderen Browser anmelde, bekomme ich die gleiche Fehlermeldung. Wenn ich WLAN deaktiviere und es über das Mobilfunknetz mache, komme ich rein.

Vielleicht könnt ihr alle, die Fehler 403 bekommen, euch mal eine neue IP holen.

@cmayr123
Copy link

cmayr123 commented Dec 1, 2024

Vielleicht könnt ihr alle, die Fehler 403 bekommen, euch mal eine neue IP holen.

Danke blenni für den Tipp. Das hat bei mir geholfen.
Mit der alten IP habe ich wieder den Fehler 403 bekommen. Dann das Modem neu gestartet und mit neuer IP nochmal getestet --> Der BMW ist wieder verbunden.

Danke an das tolle Projekt, die schnellen Fixes und die hilfreiche Community! :)

@2bbionic
Copy link

2bbionic commented Dec 7, 2024

Ich habe die 0.131.8 gleich runtergeladen und das hcaptcha ini der config eingefügt. Passte soweit auch alles, Fzg (Mini) wurde korrekt ausgelesen - alles gut.
Huete morgen allerdings (gerade eben) wurde das Fahrzeig wieder "offline" angezeigt - ein Test auf der Konsole ebenfalls:
evcc -c /etc/evcc.yaml vehicle [main ] INFO 2024/12/07 12:39:12 evcc 0.131.8 [main ] INFO 2024/12/07 12:39:12 using config file: /etc/evcc.yaml [db ] INFO 2024/12/07 12:39:12 using sqlite database: /root/.evcc/evcc.db [mqtt ] INFO 2024/12/07 12:39:21 connecting evcc-1853972325 at tcp://192.168.100.5:1883 [main ] ERROR 2024/12/07 12:39:22 creating vehicle ElektroMini failed: cannot create vehicle type 'template': cannot create vehicle type 'mini': Client authentication failed (e.g., login failure, unknown client, no client authentication included or unsupported authentication method): unexpected status: 401 (Unauthorized) .Soc: vehicle not available: cannot create vehicle type 'template': cannot create vehicle type 'mini': Client authentication failed (e.g., login failure, unknown client, no client authentication included or unsupported authentication method): unexpected status: 401 (Unauthorized)

Schade...
Also nochmals das Captcha generiert, eingefügt/geändert, nochmals getestet und alles war wieder OK.:
[main ] INFO 2024/12/07 12:41:49 evcc 0.131.8 [main ] INFO 2024/12/07 12:41:49 using config file: /etc/evcc.yaml [db ] INFO 2024/12/07 12:41:49 using sqlite database: /root/.evcc/evcc.db [mqtt ] INFO 2024/12/07 12:41:55 connecting evcc-1480877747 at tcp://192.168.100.5:1883 Soc: 26% ...
Meine Frage ist jetzt, ob es eventuell noch ein Timeout-Problem mit den in der Datenbank hinterlegten Credentials gibt - oder eventuell ein config-Parameter, den man setzten sollte, damit man nicht in diesen Timeout läuft?

@BrickTop87
Copy link
Contributor Author

Hast du ein Log von dem Zeitpunkt, als es aufgehört hat zu funktionieren? Die hier bringen leider nicht so viel.
Einen Timeout für die Credentials aus der Datenbank habe ich noch nicht beobachtet. Daher ist auch unbekannt, in welcher Größenordnung der sich bewegt. Wäre aber nur relevant, wenn du evcc länger angehalten hättest.

@2bbionic
Copy link

2bbionic commented Dec 7, 2024

Logs habe ich leider keine - jetzt aber den Loglevel mal hochgedreht. Sollte es generell ein Problem geben, würde es ja nicht nur bei mir auftreten - meine letzten Ladevorgänge waren am 2.12. - da hat alles noch funktioniert.

@MFriedi
Copy link

MFriedi commented Dec 9, 2024

Moin,

ich hatte trotz Generierung des Tokens und sofortiger Einspielung sowie Neustart immer wieder den Fehler 401.

Dann habe ich die Zeile mit der VIN herausgenommen - und siehe da: sofort alles super.

Ich habe nur einen BMW im Einsatz, daher war die Zeile ohnehin optional. Vielleicht kann das anderen auch helfen.

DANKE allen für den Einsatz!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
vehicles Specific vehicle support
Projects
None yet
Development

Successfully merging this pull request may close these issues.