API zum Auslesen der Lade- / Verbrauchsdaten

Interessant. Soweit ich mich erinnere ist die Tibber Integration aber auch offiziell. Ich würde daher davon ausgehen, dass sie vorab informiert wurden und entsprechend reagieren konnten.

Kann ich verneinen. Tibber API ist bei mir zeitgleich ausgestiegen.

Stand 14:01 geht es bei mir noch einwandfrei über die Tibber API …

Nun, die API Abfrage ansich geht, aber in meinem Fall ist der Polestar schlicht nicht mehr vorhanden.

{‚data‘: {‚me‘: {‚homes‘: [{‚electricVehicles‘: [{‚shortName‘: ‚e-up!‘, ‚lastSeen‘: ‚2024-11-07T14:34:03+01:00‘, ‚lastSeenText‘: ‚Last updated: a few seconds ago‘, ‚battery‘: {‚percent‘: 49, ‚isCharging‘: False}}]}]}}}

Nur noch der e-up is zu sehen. Das passierte wie gesagt ziemlich zeitgleich zum Ausstieg der Polestar API. Wäre schon ein großer Zufall, wenn das nichts miteinander zu tun hätte.

Edit:
Tibber hat den Polestar wie gesagt fast zeitgleich zur API Änderung einfach mal komplett aus meinem Account gelöscht.
Jetzt ist er wieder drin, aber Tibber definiert nun den Polestar mit dem Index 0 und den e-up mit 1. Vorher war das genau umgekehrt. Super Sache!

In Home Assistant gibt es für die Polestar API Integration mittlerweile ein Update auf 1.8.0. Im Changelog heißt es: „General OIDC improvements (including support for updated polestar ID login).“

Vor dem Update hatte Home Assistant lediglich keine Verbindung mehr.
Nach dem Update kommen nun aber Fehlermeldungen:

"Setup failed for custom integration polestar_api: Unable to import component: Exception importing custom_components.polestar_api

09:29:17 – (FEHLER) setup.py

Unexpected exception importing component custom_components.polestar_api

09:29:17 – (FEHLER) loader.py"

Hat das noch jemand?

Nein, diese Fehler hatte ich nicht. Allerdings wurde ein neues Gerät angelegt.
Ich habe dann die Integration Polestar-Api entfernt und noch mal neu hinzugefügt.
Dann die Zugangsdaten eingeben und es wurde nur noch ein Gerät gefunden.

So, bei mir geht es auch wieder. Ich hatte Home Assistant Core, OS und HACS noch auf älteren Versionsständen. Irgendwo hat es da gehakt.
Allerdings wird bei mir das Fahrzeugbild jetzt nicht mehr angezeigt (Entität: image.polestar_car_image).

Die Entität musst du aktivieren. Die ist aus irgendwelchen Gründen deaktiviert.
Danach geht es dann auch wieder.

1 „Gefällt mir“

Hat geklappt! Du bist ab sofort mein Home Assistant Experte!

Haha, von Experte bin ich meilenweit entfernt.
Aber die Fehler, die ich gemacht habe, kann ich ja anderen erklären…

2 „Gefällt mir“

Der API Token wird nicht mehr aktualisiert, so dass auch keine aktuellen Daten mehr ausgelesen werden können.
Auf Github hat bereits jemand einen Bug Report eingestellt:

Moin

Gibt es hier jemanden, der das ursprüngliche Problem mit dem Abnicken der Terms & Conditions über die API und die Lösung vollständig durchschaut hat und mir helfen könnte?
Ich bräuchte z.B. mal Beispiele der Kommunikation. Also funktionierende URL’s, Headers, etc.
Ich dachte eigentlich, ich habe das richtig gemacht, bekomme aber immer nur eine Antwort, in der ein Fehler mit der kryptischen Bezeichnung ERR013 steht.

Ich verwende keinen Home Assist, nur ein viel einfacheres Python Script, was bis vor der Änderung astrein funktioniert hat.

Ich wäre auch von dem Refresh-Bug nicht betroffen, weil ich keinen Refresh mache.

Vielen Dank im Voraus.

Du kannst ja gerne meinen Container verwenden, der läuft mit „Tag V0.0.2“ wieder „einfach“.

Aber hier findest Du auch die notwendigen Veränderungen als Delta (bis Polestar_2_MQTT.py runterscrollen):

1 „Gefällt mir“

Danke Jochen, ich schau mir das an.

wie kriege ich den Container denn auf meinen Raspi ?
auf Docker Hub finde ich nichts.

Repository klonen, docker-compose.yml mit deinen Daten anlegen und dann docker compose up -d --build

Da musst Du aber noch einmal ganz genau schauen! :grin:

Nochmals danke!
Durch deinen Code habe ich den Hacker gefunden.
Läuft wieder.

1 „Gefällt mir“

EVCC wieder nutzen
Wer Homeasistant nutzt und die Polestar API installiert hat, kann sich für evcc auch den soc und range aus HM holen.
Folgendes hab ich gemacht:

ein token in HM erstellen http://[YOUR-HA-INSTANCE]:8123/profile/security und abspeichern:

Erstelle über die Schaltfläche „Token erstellen“ ein neues Token, gebe den Namen an (z. B. „evcc-access“) und kopiere das generierte Token in die Zwischenablage (und füge es an einem sicheren Ort ein). Ein Token sieht so aus:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiIzNWVjNzg5M2Y0ZjQ0MzBmYjU saHpawkjNzk-uokxYeaP0GFKPQSeDoP3lCO488

Bitte gebe den Token nirgendwo weiter! [Das obige Token ist nur ein Beispiel!] – alle Vorkommen von [$TOKEN] im folgenden evcc.yml-Beispielabschnitt durch das generierte Token ersetzen._

- type: custom
  name: ev4
  title: Polestar 2
  capacity: 78 # kWh
  soc:
    source: http
    uri: http://$HA_HOST/api/states/sensor.polestar_1634_battery_charge_level
    method: GET #
    jq: .state
    headers:
      - content-type: application/json
      - Authorization: Bearer $TOKEN
  range:
    source: http
    uri: http://$HA_HOST/api/states/sensor.polestar_1634_estimate_range
    method: GET #
    jq: .state
    headers:
      - content-type: application/json
      - Authorization: Bearer $TOKEN

evcc neu starten, automatische Erkennung geht hierbei leider nicht, also auf Polestar in evcc klicken und freuen.

385416455-eae85ecf-d600-4b73-96d6-713928ae3670

1 „Gefällt mir“

Eine Alternative dazu ist die Daten aus HA über MQTT zu publishen und entsprechend in EVCC zu verwenden, wenn man MQTT eh schon nutzt ist das vielleicht der schnellere Weg. So mache ich es zumindest aktuell.

1 „Gefällt mir“