SOC - SAIC/MG Anleitung - Software 2 MQTT + Docker (Synology)
Verfasst: Fr Mär 08, 2024 5:03 pm
Guten Nachmittag:
Unter Software 1.9 konnte ich nach einigem Tüfteln die SOC Abfrage über das SAICISMARTAPI-MQTT GATEWAY erfolgreich einrichten
(viewtopic.php?p=84458#p84458 )
Der Umstieg auf Software 2.1.x brachte mit sich, dass einerseits die ganzen MQTT Topics sich änderten und andererseits das MQTT Gateway die Konfiguration "universeller" gestaltete, indem man ein File (charging-stations.json) für den Docker Container konfigurieren musste. damit musste ich mich neu einlernen und helfen lassen
Anbei eine Anleitung für Noobs um hier hoffentlich schneller ans Ziel zu kommen
@mod : sollte das hier falsch sein, bitte verschieben
Ausgangssituation
OpenWB Series 2 Standard+ Display auf Software >2.1.x
Synology NAS mit DOCKER Container ("Container Manager")
Vorbereitung auf der OpenWB:
1. Auf die Weboberfläche der OpenWB unter Software 2.x einsteigen
2. -->Einstellungen --> Konfiguration --> Ladepunkte --> Ladepunkt konfigurieren (z.b. Internen Series 1/2 ) --> die ID notieren da diese für die erstellung der charging-stations.json benötigt wird (bei mir ID 2)
3. --> Einstellungen --> Konfiguration --> Fahrzeuge --> ein neues Fahrzeug anlegen (bei mir MG5) als SOC Modul "MQTT" auswählen..
3a --> im hellblauen INfoblock zum Soc Modul wird der "Pfad" für das "socTopic" angezeigt --> hier ist die ID hier auch 2
Vorbereitungen Docker Container:
1. Erstelle einen Ordner "SAIC" am NAS zb als Unterordner von DOCKER wo anschließend die charging-stations.json abgelegt wird
2. erstelle ein Textfile mit dem Namen "charging-stations.json" und mit folgendem Inhalt
2a --> die ID'S entsprechend der eigenen OpenWB anpassen und die VIN des eigenen Fahrzeugs eintragen
Der Originalcode kann von Github rauskopiert werden (link am Ende des Postings)
Der erste Block in diesem Textfile beschreibt den Aufbau der Topics für SOFTWARE 2 wobei die Zahl 2 bei den Topics anzupassen ist an die ID's der eigenen Wallbox, der 2. Block wäre für ein weiteres Fahrzeug vorgesehen und kann bei einem einzelnen Fahrzeug einfach belassen werden...
Wurde das .json File vorbereitet, wechselt man in den Container-Manager (bei mir Synology Container Manager -->
1. installiere "Container Manager" auf Synology Nas
2. Wechsle zu "Registrierung" und suche nach "saicismartapi"
3 image downloaden und anschließend auf "Container wechseln
4. "Erstellen" --> Saicismartapi auswählen, Containername vergeben und "weiter"
5. unter "Volume -Einstellungen --> Datei hinzufügen
"/docker/saic/charging-stations.json" --> "/usr/src/app/charging-stations.json"
--> Der linke Teil des Dateipfades entsprechend dem Speicherort am Nas anpassen
6. unter UMGEBUNG folgende Umgebungsvariablen hinzufügen -Case sensitive!!
SAIC_USER --> username asu Saic Ismart app (Mail oder telefonnummer)
SAIC_PHONE_COUNTRY_CODE --> 43 für 0043 sollte als USername eine Telefonnummer verwendet worden sein, ansonsten die ganze Variable weglassen
SAIC_PASSWORD --> Ismart-App Passwort eingeben
MQTT_URI --> tcp://IPderOpenWB:1883
LOG_LEVEL --> INFO
Container starten
--> nun sollte der Container starten und über den ISmart-Account das SOC des Autos abfragen und an den MQTT Server der Open WB weitergeben
--> bei Problemen prüfen, ob die charging-stations.json richtig befüllt und dem Container zugeordnet wurde! (das war mein hauptproblem
sollte es keine Fehlermeldungen geben, sollte der SOC binnen Sekunden aktualisiert werden...
weitere Infoquellen:
https://github.com/SAIC-iSmart-API/saic ... tt-gateway --> Anleitung zum Docker Gateway in detaillierter Ausführung
https://github.com/SAIC-iSmart-API/saic ... issues/167 Lösungshinweise von @tosate --> THX!!!
viewtopic.php?t=3145&start=50
DANKE an @Tosate auf GitHub und @Thomas aus W für eure Hilfestellungen!!
Unter Software 1.9 konnte ich nach einigem Tüfteln die SOC Abfrage über das SAICISMARTAPI-MQTT GATEWAY erfolgreich einrichten
(viewtopic.php?p=84458#p84458 )
Der Umstieg auf Software 2.1.x brachte mit sich, dass einerseits die ganzen MQTT Topics sich änderten und andererseits das MQTT Gateway die Konfiguration "universeller" gestaltete, indem man ein File (charging-stations.json) für den Docker Container konfigurieren musste. damit musste ich mich neu einlernen und helfen lassen
Anbei eine Anleitung für Noobs um hier hoffentlich schneller ans Ziel zu kommen
@mod : sollte das hier falsch sein, bitte verschieben
Ausgangssituation
OpenWB Series 2 Standard+ Display auf Software >2.1.x
Synology NAS mit DOCKER Container ("Container Manager")
Vorbereitung auf der OpenWB:
1. Auf die Weboberfläche der OpenWB unter Software 2.x einsteigen
2. -->Einstellungen --> Konfiguration --> Ladepunkte --> Ladepunkt konfigurieren (z.b. Internen Series 1/2 ) --> die ID notieren da diese für die erstellung der charging-stations.json benötigt wird (bei mir ID 2)
3. --> Einstellungen --> Konfiguration --> Fahrzeuge --> ein neues Fahrzeug anlegen (bei mir MG5) als SOC Modul "MQTT" auswählen..
3a --> im hellblauen INfoblock zum Soc Modul wird der "Pfad" für das "socTopic" angezeigt --> hier ist die ID hier auch 2
Vorbereitungen Docker Container:
1. Erstelle einen Ordner "SAIC" am NAS zb als Unterordner von DOCKER wo anschließend die charging-stations.json abgelegt wird
2. erstelle ein Textfile mit dem Namen "charging-stations.json" und mit folgendem Inhalt
2a --> die ID'S entsprechend der eigenen OpenWB anpassen und die VIN des eigenen Fahrzeugs eintragen
Code: Alles auswählen
[
{
"chargeStateTopic": "openWB/chargepoint/2/get/charge_state",
"chargingValue": "true",
"socTopic": "openWB/set/vehicle/2/get/soc",
"chargerConnectedTopic": "openWB/chargepoint/2/get/plug_state",
"chargerConnectedValue": "true",
"vin": "vin1"
},
{
"chargeStateTopic": "openWB/lp/2/boolChargeStat",
"chargingValue": "1",
"socTopic": "openWB/set/lp/2/%Soc",
"chargerConnectedTopic": "openWB/lp/2/boolPlugStat",
"chargerConnectedValue": "1",
"vin": "vin2"
}
]
Der erste Block in diesem Textfile beschreibt den Aufbau der Topics für SOFTWARE 2 wobei die Zahl 2 bei den Topics anzupassen ist an die ID's der eigenen Wallbox, der 2. Block wäre für ein weiteres Fahrzeug vorgesehen und kann bei einem einzelnen Fahrzeug einfach belassen werden...
Wurde das .json File vorbereitet, wechselt man in den Container-Manager (bei mir Synology Container Manager -->
1. installiere "Container Manager" auf Synology Nas
2. Wechsle zu "Registrierung" und suche nach "saicismartapi"
3 image downloaden und anschließend auf "Container wechseln
4. "Erstellen" --> Saicismartapi auswählen, Containername vergeben und "weiter"
5. unter "Volume -Einstellungen --> Datei hinzufügen
"/docker/saic/charging-stations.json" --> "/usr/src/app/charging-stations.json"
--> Der linke Teil des Dateipfades entsprechend dem Speicherort am Nas anpassen
6. unter UMGEBUNG folgende Umgebungsvariablen hinzufügen -Case sensitive!!
SAIC_USER --> username asu Saic Ismart app (Mail oder telefonnummer)
SAIC_PHONE_COUNTRY_CODE --> 43 für 0043 sollte als USername eine Telefonnummer verwendet worden sein, ansonsten die ganze Variable weglassen
SAIC_PASSWORD --> Ismart-App Passwort eingeben
MQTT_URI --> tcp://IPderOpenWB:1883
LOG_LEVEL --> INFO
Container starten
--> nun sollte der Container starten und über den ISmart-Account das SOC des Autos abfragen und an den MQTT Server der Open WB weitergeben
--> bei Problemen prüfen, ob die charging-stations.json richtig befüllt und dem Container zugeordnet wurde! (das war mein hauptproblem
sollte es keine Fehlermeldungen geben, sollte der SOC binnen Sekunden aktualisiert werden...
weitere Infoquellen:
https://github.com/SAIC-iSmart-API/saic ... tt-gateway --> Anleitung zum Docker Gateway in detaillierter Ausführung
https://github.com/SAIC-iSmart-API/saic ... issues/167 Lösungshinweise von @tosate --> THX!!!
viewtopic.php?t=3145&start=50
DANKE an @Tosate auf GitHub und @Thomas aus W für eure Hilfestellungen!!