Wenn man ein SoC hätte würde es auch ein paar neue Möglichkeiten in der OpenWB eröffnen.
Habe heute gerade eien open WB mit einem ID3 verbunden… hier kann man dann sowas basteln wie… Sofortladen bis 50% und ab da nur noch pv überschuss mit Phasenumschaltung.
Bei openWB passiert in letzter Zeit nichts mehr an der Software… die basteln vermutlich jeden tag wie wild Boxen zusammen.
Ich glaube die basteln kräftig am 2.0 Release der dann einige große Veränderungen bringt.
Ja, das APK kannst einfach entzippen mit z.B. 7zip.
Aber ich denke, dass das Client Zertifikat nicht im APK ist, das APK wird ja nicht verändert. Das sollte dann in einem app-spezifischen Verzeichnis im System sein. Oder vielleicht wird es auch in einem Zertifikatespeicher gespeichert, da kenne ich mich bei Android zu wenig aus, aber bei Java wird es normal so gemacht, soweit ich weiß.
Stimmt, aber die SOC Module werden von Open WB im Regelfall weder erstellt noch supportet. Polestar hat das wohl kaum auf dem Zettel. Ich hoffe daher, dass jemand aus der Community eines Tages einen Durchbruch hat, so wie wir das bei Browser und USB Medienwiedergabe schon erlebt haben.
So lange behelfe ich mir mit dem manuellen SOC Modul als Krücke. Ist nicht sehr komfortabel, aber geht.
Eine API Anbindung wäre schon sehr cool. Ich verwende (noch) die IO Broker Version mit Adapter für VW und spiele die Daten dann mit MQTT zu NodeRed. Das schöne ist, dass meine Version viel schneller ist, als die komische VW App und deutlich zuverlässiger funktioniert. Ich mache ja auch die ganzen „unnötigen“ Positionsabfragen nicht Man darf das Auto nämlich nur blinken lassen, wenn man in einem Radius von 100m ist…
Hat schon mal jemand den Volvo Adapter aus ioBroker getestet? nachdem das alles auf volvocars.com geht?
Yo, das APK enthält ein paar Zertifikate und auch Private Keys… mal schauen, ob man damit weiterkommt. aber prinzipiell schrillen bei mir erstmal ein paar Alarmglocken, wenn ich Private Keys im Code finde. Heißt noch nicht, daß da ein Sicherheitsproblem besteht… erstmal weiter analysieren.
Warum man was in ein Vault steckt und das Passwort in einem Text-File mitliefert… mmh würde ich jetzt auch nicht unbedingt so machen. Aber … no judging.
Erinnert sich noch wer an den Internet Ausfall Mitte August? Tja der letzte Screenshot enthält die Antwort… scheinbar war ein Zertifikat ausgelaufen…
Unfassbar. Die können es einfach nicht. Vielleicht wäre es gut, das Team mal um ein paar Informatiker als immer nur mit Marketingbachelors von der Dünnbretthochschule zu erweitern.
ich bin immer noch nicht weiter gekommen. Aber es gibt scheinbar erste 3rd Party Integrationen (e.g. für Tibber): Smart charge your Polestar with Tibber | Tibber Support Center
Ein Grund mehr für PS, Ladesteuerung (Start/Stop und als Kirsche Ziel-SoC) in das API und die App zu integrieren.
über Google Assistant (bei mir als App auf iOS) geht die SoC Abfrage auch schon. Ich muss zwar Region auf USA und Sprache auf Englisch ändern, aber dann bekomme ich eine Antwort. (man muss vorher den Polestar als Device hinzufügen).
Aber bekommt man das irgendwie maschinell ausgelesen? Oder braucht man da dann wieder eine App? Eine API bräuchte es, die keine Server-Zertifikate mit Pinning erwartet
Nein, glaube nicht, dass es hier Schnittstellen gibt - für mich bringt es eher die Hoffnung, dass sich was tun könnte, vergleichbar mit der volvo-api.
Wenn ichs richtig versteh, tauscht die Polestar App einen Schlüssel/Zertifikat mit dem Auto aus (bzw bekommt es von da). Bei Volvo und beim Google Assistenten läuft es über die Authentifizierung, die einen Token generiert, der dann zum Auslesen berechtigt.
Ich hab ein Android Phone, ich schau mal, ob ich da was finde.
Leider habe ich keine Kenntnisse, um die App zu modifizieren, bzw den verschlüsselten Datenverkehr auszulesen.
In aader Android App (im Apk-Archive) sind keystores und entsprechende Private Keys & Zertifikate. Es gibt wie oben gepostet, die openid config in .wellknown aber die ist extrem umfangreich. Die Calls dir ich mit dem Fiddler mitgeschnitten habe, bekomme ich leider nicht manuell erfolgreich abgeschickt. Das Backend schickt immer Fehler. Entweder fehlt noch was oder das was ich da abschicke (u.a. irgendwelche tokens/hashes) scheint nicht durch die Validierung zu kommen.
Im Internationalen Forum hat das auch mal wer probiert, ist dann aber auch beim cnep.volvocars.com bzw. cepmob.eu.ericssoncvc.com gescheitert. Ich vermute ohne Doku kommt man da nicht besonders weit… zumindest mit vertretbarem Aufwand.
Wobei das hier aus der openid config eigentlich recht ansprechend ausschaut (scopes wären einzelne Zugriffsrechte):
Das einzige was mir noch einfällt, ist ein Push des SOC während der Fahrt (und beim Abstellen) vom Car Stats Viewer in den manuellen SOC der openWB. Während des Ladens rechnet die openWB den aktuellen SOC ja recht vernünftig hoch.
Moin,
wäre das hier nicht vielleicht eine, wenn auch umständliche, Lösung?
Prinzipiell ja, aber der schickt meines Wissens damit nur den Status, wenn die App aktiv ist.
Ich habe mir mit evcc nun das mit dem SoC folgendermaßen gelöst:
- Ich nutze den CSV (s. Car Stats Viewer | 0.24.x)
- Um die Daten zu empfangen habe ich mir folgendes PHP-Skript auf einem meiner öffentlich zugänglichen Webserver (bei mir z.B. 1&1) installiert: https://mypolestar.de/
- Das Script muss noch etwas umgebogen werden:
Anstatt (Zeile 413):
if($head_array[$ii] =='stateOfCharge')
$show = $superarray[$jj][$head_array[$ii]].' %';
kommt jetzt:
if($head_array[$ii] =='stateOfCharge'){
$show = $superarray[$jj][$head_array[$ii]].' %';
// !!! Anfang: evcc datei erstellen !!!!
$handleSoC = fopen ("soc.last", "w");
fwrite ($handleSoC, $superarray[$jj][$head_array[$ii]]);
fclose ($handleSoC);
// !!! Ende: evcc Datei erstellen !!!!
}
rein. Das erstellt regelmäßig eine ASCII-Datei in der der SoC steht. Natürlich nur, wenn der CSV sendet. Also der Letzte Stand beim Einstöpseln in die Wallbox.
- Config in evcc:
vehicles:
type: custom
title: Polestar 2
name: polestar
capacity: 75
soc:
source: http
uri: [MEINEWEBSITEADRESSE]/soc.last
method: GET
So hat evcc den Startpunkt beim Laden und berechnet sich den Rest selbst.
Trotzdem schade, daß bei einem Connected Car kein Zugriff auf die API möglich ist.