Polestar-API zu MQTT im Container (openWB-V1-Anbindung möglich)

@alle @Landmatrose @bausi2k @Sipple @krheinwald @Enso @WFS @whe @loebse @yeti @0802 @Leguan @polejs @salkin @Abovuekt @franz @Raddi (habe ich alle erwischt?)

Ein freundlicher „@johnnym1“ (bist Du hier auch?) auf GitHub hat das Problem mit der wieder geänderten Login-Schnittstelle der API vor einer Stunde gefixt. Ich habe den PG merged und getestet, läuft wieder!

Ihr könnt alle mit docker compose pull; docker compose up -d den Container aktualisieren und neu starten. Dann sollte es gehen.

Es empfiehlt sich übrigens, das Repo auf GitHub mit „Watch“ zu beobachten. Dann bekommt man Mails bei Änderungen.

7 „Gefällt mir“

@salkin Ist nur eine Kleinigkeit für Dein Widget:

Ich nutze mittlerweile EVCC und hatte da gestern das Problem auch gefixed :wink:

Ich verfolge aber trotzdem das Projekt hier gerne weiter.

3 „Gefällt mir“

Hi Jochen

Komisch, mein Container scheint völlig normal zu laufen. keinerlei Fehler in irgendwelchen Logs und die Daten decken sich mit der Polestar App.

Gemacht habe ich nichts, also kein autoupdate oder sonstiges.

Auch wenn Du das Protokoll mitlaufen lässt? Er sollte nämlich beim Token-Refresh auf die Nase fallen.

Wie lange ist ein Token gültig?

wait for 270 seconds
ensure_valid_token()
 refresh_access_token()
  access_token  = eyJhbGciOiJSUzI1NiIsImtpZCI6Ino0VDRpU0N...
  refresh_token = Gq6U4JWuzss6I9Cg5pzTvJRw9kRlI1Nmhw9nANsSuf
  expires_in    = 299 seconds
  expiry_time   = 2025-03-25 20:00:37 CET+0100

ok, dann kann es nicht sein, dass es schlicht noch nicht abgelaufen ist, seit die wieder was geändert haben.
Muss ich morgen mal sehen. Aber ja eigentlich egal, wenn es ein Update gibt :slight_smile:

Ich bin ja kein docker Experte, aber muss es nicht docker compose up -d heißen?

2 „Gefällt mir“

Jepp, ist wohl schon ein bissl spät. :grin:

Weil wir grad dabei sind: Was meldet die API bei euch für ne Software Version im Polestar?
Bei mir steht da jetzt P03.04

dito, diese Info scheint nicht wirklich aktuell zu sein bzw. wird nur bei interner Major-Version hochgezogen.
Edit: der „versionTimestamp“ stimmt aber mit dem OTA-Update auf P3.4.4 überein.

@CONSULitAS Jochen: mit der aktuellen Version habe ich zwei Probleme:

  • container/connected bleibt auf „null“, kein on-/offline Status des Containers mehr.
  • der „Base-Topic“, bei mir mein „MeinPolestar2“ wird ignoriert, stattdessen wird in Iobroker „polestar2“ verwendet und entsprechend eine komplett neue Sektion angelegt (weshalb alle Aufzeichnungen und Skripte ins Leere laufen).

grafik

Bei mir passt der Status.

Danke für die Info, deshalb habe ich den container nochmal neu created → jetzt passt der Status bei mir auch; da hatte das System wohl Schluckauf.

Was aber leider bleibt, ist der falsche Name des „base_topic“. Habe nochmal docker-compose.yml und und polestar_2_MQTT.py geprüft, das steht eindeutig „MeinPolestar2“, auch Portainer zeigt dies an - verwendet wird aber „polestar2“. Bei dir ist ja egal, weil du ohnehin „polestar2“ verwendest. Wäre mir eigentlich auch fast egal (die Skripte sind schnell angepasst), aber es führt nur leider zu einer Inkonsistenz in der Datenbank…

danke für den schnellen Fix. hatte mir schon gedacht, daß da wieder was geändert wurde, als heute morgen erst das Wartungsfenster in der App angezeigt wurde und dann die App für ein paar Stunden keine Verbindung mehr aufgebaut hat.

@Landmatrose das ist der „Reset“. Hard reset ist docker system prune --force, aber das kann auch destruktive sein :wink: daher lieber so (auf Linux, sonst die beide Docker Kommandos nacheinander ausführen).

docker compose pull && docker compose up --force-recreate -d
2 „Gefällt mir“

Normalerweise verwende ich Portainer dafür.

Ich habe 'mal die von dir vorgeschlagene Befehlsfolge über das Terminal ausgeführt → ändert leider nichts am falschen „base_topic“…

das ist das Problem am „latest“ tag, es ist ein moving Target. daher müsstest du rausfinden, ob du die aktuelle version des Images hast. Dazu sollte er was downgeloaded haben. Und dann müsstest du sicherstellen, daß auch das aktuelle Image ausgeführt wird, also in Portainer und im docker-compose.yaml
Ist da eine version gepinnt, dann nimmt er nicht die „latest“.

Hast Du vielleicht den breaking change verpasst?

Das Ding heißt jetzt MQTT_BASE_TOPIC: "polestar2" in der docker-compose.yml.

Und dafür einen herzlichen Dank, dass das von dir immer so schnell gefixed wird!! :+1: :+1:

1 „Gefällt mir“

Yepp, das war es - der change ging irgendwie vollkommen an mir vorbei.
Aber Kompliment, das Ganze ist so robust, dass es auch ohne die Anpassung grundsätzlich lief!

@yeti Danke für den Hinweis. Auf den „version“ tag bin ich auch schon reingefallen. Deswegen schreibe ich grundsätzlich „latest“ rein und lade vor dem re-build sicherheitshalber noch einmal die letzte Version (ist mit Hilfe von Portainer nur ein Klick).

1 „Gefällt mir“