NEWS
Adapter für MG iSmart MG Motors Fahrzeuge
-
Hallo,
ich möchte mir evtl. ein Fahrzeug von MG zulegen, allerdings ist es ein Kaufkriterium das ich den SoC in den IoBroker bekomme.Gibt es eigentlich schon einen Adapter oder eine Möglichkeit im Iobroker den SoC eines MGMotors Fahrzeugs auszulesen bzw. die Daten der MG iSmart App auszulesen?
-
Für Open-Hub scheint es jetzt schomal was zu geben:
https://www.goingelectric.de/forum/viewtopic.php?f=612&t=81635&sid=c4ee539f75f877b7540c1dbb9cf52cd9
-
@nik82 said in Adapter für MG iSmart MG Motors Fahrzeuge:
Hallo,
ich möchte mir evtl. ein Fahrzeug von MG zulegen, allerdings ist es ein Kaufkriterium das ich den SoC in den IoBroker bekomme.Gibt es eigentlich schon einen Adapter oder eine Möglichkeit im Iobroker den SoC eines MGMotors Fahrzeugs auszulesen bzw. die Daten der MG iSmart App auszulesen?
Hallo,
hab einen MG4 Standard und würde (falls denn verfügbar) den BETA-Tester geben.
Frank
-
Ich habe auch einen MG4 geordert, habe daher auch Interesse.
-
Auf github gibt's seit letzter Woche etwas neues, aber leider nix für den iobroker...
https://github.com/ReverseEngineeringDE/SAIC-API-Documentation/releases/tag/v0.0.2 -
Da mein nächster wohl auch ein MG werden wird, habe ich auch mal gesucht. Einen ioBroker-Adapter gibt es noch nicht, aber ein "SAIC to MQTT Gateway".
https://github.com/SAIC-iSmart-API/saic-python-mqtt-gatewayDas kann man als Python Skript laufen lassen oder als Docker Container. Als Docker Fan war die Wahl für mich einfach. Also Image runtergezogen, App-Account angelegt und die Umgebungsvariablen eingetragen. Läuft! Jetzt fehlt natürlich noch das verbundene Auto, aber es sieht schon mal sehr gut aus.
Seid ihr seitdem schon weiter gekommen und habt vielleicht noch andere Ideen?
-
@marc-berg
Hi,
ich habe den SAIC-JAVA-MQTT-GATEWAY installiert und via Mqtt mit ioBroker verbunden.
Es werden sehr viele Datenpunkte angezeigt.
Das Ganze habe ich dann auch noch mit EVCC verbunden und steuere nun die PV Überschußladung damit. Funktioniert soweit ganz gut. -
@c1olli sagte in Adapter für MG iSmart MG Motors Fahrzeuge:
Funktioniert soweit ganz gut.
Das hört sich jetzt nicht gerade begeistert an, aber danke für die Info, dass es grundsätzlich funktioniert. Das Java- und das Python-Gateway sollten ja dasselbe tun.
-
@marc-berg
Nun, es funktioniert wie es soll, wäre aber schön, wenn es z.B. in ioBroker integriert wäre.
Damit die Datenübernahme angestoßen wird, starte ich den Gateway tagsüber per Cron stündlich neu.
Ansonsten wenn es einmal läuft dann läuft es auch. -
@c1olli Bei mir kommt demnächst der MG4 und ich bin daran interessiert diese Daten zwecks Automatisierung in ioBroker zu nutzen. Gibt es irgendwo eine Anleitung um das zu installieren und einzurichten, so dass ich die Datenpunkte in IOBroker habe? Mit Adapter bekomme ich so ziemlich alles hin, nur hier gibt es (noch) keine Adapter
VG
Andreas -
@ag21368
Hier gibt es genügend Lesestoff und Anleitungen.
Im Prinzip musst Du nur den Gateway zum Laufen bringen, dort wird auch die Adresse zum Mqtt Broker abgefragt und die Punkte dann auch automatisch angelegt, wenn die Verbindung steht. -
@c1olli said in Adapter für MG iSmart MG Motors Fahrzeuge:
ich den Gateway tagsüber per Cron stündlich neu.
Hi, ich besitze seit kurzem einen MG 4 Trophy Extended Range. Habe SAIC-JAVA-MQTT-GATEWAY als Docker Container installiert und über MQTT in ioBroker eingebunden. Hat erst mal funktioniert und die Datenpunkte mit Werten gefüllt.
Sie aktualisieren sich aber nicht mehr. Nur Events wie "Motor eingeschaltet" werden gesendet. Deshalb startest du wahrscheinlich das Gateway stündlich neu. Warum genau ist das so und warum nur 1x pro Stunde aktualisieren?
Kannst du bitte die Kommandos posten, wie der Cronjob eingerichtet wird? -
@oranggila
Cronjob einfach nach Anleitung z.B https://raspberry.tips/raspberrypi-einsteiger/cronjob-auf-dem-raspberry-pi-einrichtenBei mir stündlich zwischen 8 und 22 Uhr,
oder ganz anders
https://www.goingelectric.de/forum/viewtopic.php?f=612&t=81635&start=630 -
@c1olli Ich meinte nicht grundsätzlich, wie man Cronjobs einrichtet, sondern wie der Pfad zum Gateway Service im Docker heißt, den man im Crontab eintragen muss.
Zu "ganz anders" meinst du aus dem Beitrag, dass man "force" an das Topic refresh/mode/set sendet? Aber wenn das Gateway nicht aktiv ist, dann lauscht es doch auch nicht auf dieses Topic. Ich versteh die Hintergründe noch nicht ganz. -
-
@c1olli Das funktioniert. Docker Container startet stündlich neu. Trotzdem stoppt die Datenlieferung über MQTT immer wieder. Heute z.B. Laden gestartet 7:30 Uhr und Datenpunkte wurden im ioBroker wunderbar gefüllt bis 11:50. Dann habe ich über die iSMART App reingeschaut, um Werte zu vergleichen und mich von der App wieder abgemeldet. Seit dem kommen keine Daten mehr rein. Bin auch zwischendurch gefahren und lade jetzt wieder. SOC und alle anderen Werte zu drivetrain Topic werden aber nicht mehr aktualisiert , auch nach manuellem Neustart des Containers nicht.
Hab auch mit MQTT Explorer geprüft, da kommt auch nix mehr rein.Im Gateway Log steht:
2023-11-14 15:20:07:438 +0000 [MQTT Call: 784cbbc1-4bb1-43e4-8493-5b606f8c6981] INFO SaicMqttGateway - Got message for topic saic/xx@xxx.de/vehicles/xxxxxxxxx/refresh/mode/set: periodic 2023-11-14 15:20:07:475 +0000 [MQTT Call: 784cbbc1-4bb1-43e4-8493-5b606f8c6981] INFO SaicMqttGateway - Got message for topic saic/xx@xxx.de/vehicles/xxxxxxxxx/refresh/mode/set: periodic Exception in thread "Thread-5" java.lang.NullPointerException at net.heberling.ismart.mqtt.SaicMqttGateway$2.lambda$messageArrived$0(SaicMqttGateway.java:219) at java.base/java.lang.Thread.run(Unknown Source) Exception in thread "Thread-6" java.lang.NullPointerException at net.heberling.ismart.mqtt.SaicMqttGateway$2.lambda$messageArrived$0(SaicMqttGateway.java:219) at java.base/java.lang.Thread.run(Unknown Source) 2023-11-14 15:20:10:006 +0000 [MQTT Call: 784cbbc1-4bb1-43e4-8493-5b606f8c6981] INFO SaicMqttGateway - Got message for topic saic/xx@xxx.de/vehicles/xxxxxxxxx/refresh/mode/set: periodic Exception in thread "Thread-7" java.lang.NullPointerException at net.heberling.ismart.mqtt.SaicMqttGateway$2.lambda$messageArrived$0(SaicMqttGateway.java:219) at java.base/java.lang.Thread.run(Unknown Source) 2023-11-14 15:20:11:712 +0000 [main] INFO SaicMqttGateway - Registered for abnormal messages 2023-11-14 15:20:12:027 +0000 [main] INFO SaicMqttGateway - Registered for moving messages 2023-11-14 15:20:12:310 +0000 [main] INFO SaicMqttGateway - Registered for region messages 2023-11-14 15:20:12:589 +0000 [main] INFO SaicMqttGateway - Registered for engineStart messages 2023-11-14 15:20:12:837 +0000 [main] INFO SaicMqttGateway - Registered for startVehicleStatus messages 2023-11-14 15:20:13:060 +0000 [main] INFO SaicMqttGateway - Registered for offCar messages 2023-11-14 15:20:13:375 +0000 [main] INFO SaicMqttGateway - Registered for speeding messages 2023-11-14 15:20:13:723 +0000 [MQTT Call: 784cbbc1-4bb1-43e4-8493-5b606f8c6981] INFO SaicMqttGateway - Got retained config from topic saic/xx@xxx.de/vehicles/xxxxxxxxx/refresh/period/active: 30 2023-11-14 15:20:13:728 +0000 [MQTT Call: 784cbbc1-4bb1-43e4-8493-5b606f8c6981] INFO SaicMqttGateway - Got retained config from topic saic/xx@xxx.de/vehicles/xxxxxxxxx/refresh/period/inActive: 86400 2023-11-14 15:20:13:734 +0000 [MQTT Call: 784cbbc1-4bb1-43e4-8493-5b606f8c6981] INFO SaicMqttGateway - Got retained config from topic saic/xx@xxx.de/vehicles/xxxxxxxxx/refresh/period/inActiveGrace: 600
-
@oranggila
wenn Du Dich in die App einloggst, bricht die Datenübertragung ab, weil nur ein Nutzer zur Zeit angemeldet sein kann.
Normalerweise sollten dann beim Neustart des Containers wieder Daten kommen. -
@c1olli So hatte ich es auch verstanden. Das Gateway arbeitet ja auch wieder, aber bricht mit Fehler ab bei:
[MQTT Call: 784cbbc1-4bb1-43e4-8493-5b606f8c6981] INFO SaicMqttGateway - Got message for topic saic/xx@xxx.de/vehicles/xxxxxxxxx/refresh/mode/set: periodic Exception in thread "Thread-7" java.lang.NullPointerException at net.heberling.ismart.mqtt.SaicMqttGateway$2.lambda$messageArrived$0(SaicMqttGateway.java:219) at java.base/java.lang.Thread.run(Unknown Source)
Soll ich den Fehler über Github melden oder erst mal im GoingElectric Forum?
-
Ich habe mir die Situation mal angeschaut leider lässt sich kein Adapter für ioBroker erstellen. Da es keine Implementierung von ASN.1 PER für nodeJS gibt.
Man hat zur Zeit nur die Möglichkeit die python tools anzusteuern oder den mqtt im docker laufen zu lassen.
Bzw HomeAssistant zu verwenden. -
Moin,
ich habe das saic-python-mqtt-gateway bei mir als Docker laufen und mit dem MQTT Broker (Server/Broker) verbunden.
Es kommen auch sehr viele Werte rein...soweit so gut.Nun möchte ich aber eigentlich da drüber die Heizung anschalten.
Naiv wie ich bin, dachte ich mir das ich nur unter
mqtt.0.saic........climate.remoteClimateState den Wert auf "front" setze. Nur da tut sich nichts, der bleibt rot.
In der Doku wird von
/climate/remoteClimateState/set
gesprochen. Habe ich aber nicht und kann ich auch nicht anlegen. Irgendwie sehe ich den Wald vor lauter Bäumen nicht.Kann mir jemand sagen wie das geht und u.u. auch mal die Konfig seiner MQTT Instanz dafür zeigen?
Danke