ich habe die Tage viel gelesen und getestet aber komme irgendwie nicht weiter.
Ich möchte einfach nur den SoC, der beim einstecken von der openWB Pro ermittelt wird, übernehmen und nutzen. Nur das bekomme ich nicht zuverlässig hin. Oder ich mache hier einen Fehler und sehe den Wald vor lauter Bäumen nicht.
Zum Einsatz kommt eine openWB Standalone mit 2.1.6-Alpha.1 vom 18.09.24 und 3x eine openWB Pro mit Charging Stack Version 3.2.1. Der PKW ist ein Skoda Enyaq von 08/24 mit der Software 5.2. Also alles auf dem aktuellsten Stand.
Die openWB Pro kann den SoC zuverlässig auslesen, dieser wird mir über die connect.php immer korrekt angezeigt.
Nur wie bekomme ich die openWB Software dazu diesen SoC auch zu verwenden?
Ich hatte beim Skoda "Manueller SoC" eingestellt und den Punkt "SoC direkt aus Fahrzeug auslesen" auf "Ja" gestellt. Der Hilfe nach, genau das was ich eigentlich will. Aber das funktioniert irgendwie nicht zuverlässig. Wenn ich andere Posts hier im Forum korrekt verstehe ist hier das Problem, dass der SoC scheinbar nur übernommen wird, wenn der SoC im KFZ höher ist, als der zuletzt in der openWB gespeicherte.
Also ich lade bis 95%, ziehe ab und fahre bis auf 65% runter. Stecke dann wieder ran, dann zeigt die GUI nach wie vor 95% an und der Wert wird beim anstecken auch nicht angepasst. Setze ich den Wert vor dem anstecken manuell auf z.B. 55%, dann wird der Wert übernommen. Das habe ich aber nur 2x getestet. Einmal hat es funktioniert und ein mal nicht. Da habe ich aber erstmal nicht weiter analysiert, denn da kam mir dann eine andere Idee.
Warum nicht das MQTT Modul verwenden, hier kann ich genauso sagen, dass beim einstecken der SoC direkt ausgelesen werden soll. Denn ich dachte mir, wenn auch hier das gleiche Problem besteht, dass er den SoC nicht übernimmt, wenn der Ladestand beim abziehen höher war als später beim anstecken, dann lasse ich über ein Script einfach den SoC auf 0 setzen.
Also z.B. mit
mosquitto_sub -h 192.168.77.70 -t 'openWB/chargepoint/6/get/plug_state' -C 1
abfragen ob ein KFZ angeschlossen ist und mit
mosquitto_sub -h 192.168.77.70 -t 'openWB/chargepoint/6/get/soc' -C 1
den aktuellen SoC ermitteln, der in der GUI angezeigt wird. Wenn nun kein PKW angeschlossen und der SoC größer 0, dann mit
mosquitto_pub -h 192.168.77.70 -t 'openWB/set/vehicle/2/get/soc' -m 0
den SoC einfach auf "0" setzen, so dass dieser beim Stecken wieder gesetzt wird.
Aber das funktioniert leider auch nicht, denn beim MQTT Modul wird der SoC beim Stecken nicht übernommen. Er wird korrekt ausgelesen:
Code: Alles auswählen
2024-09-20 20:28:03,028 - {modules.common.configurable_vehicle:58} - {DEBUG:fetch soc_ev2} - Vehicle Update Data VehicleUpdateData(plug_state=True, charge_state=False, imported=224945, battery_capacity=77000, efficiency=90, soc_from_cp=96, timestamp_soc_from_cp=1726856874)
2024-09-20 20:28:03,028 - {modules.common.configurable_vehicle:59} - {DEBUG:fetch soc_ev2} - General Config GeneralVehicleConfig(use_soc_from_cp=True, request_interval_charging=300, request_interval_not_charging=43200, request_only_plugged=True)
2024-09-20 20:28:03,029 - {modules.common.component_context:25} - {DEBUG:fetch soc_ev2} - Update Komponente ['MQTT']
2024-09-20 20:28:03,030 - {modules.common.configurable_vehicle:64} - {DEBUG:fetch soc_ev2} - No soc update necessary.
root@srv44:~mosquitto_sub -h 192.168.77.70 -t 'openWB/chargepoint/6/get/soc' -C 1 1
96
Er wird aber nicht in der GUI angezeigt und auch nicht hier:
root@srv44:~# mosquitto_sub -h 192.168.77.70 -t 'openWB/chargepoint/6/get/connected_vehicle/soc' -C 1
{"fault_str": "Kein Fehler.", "fault_state": 0, "range_charged": 0, "range_unit": "km", "range": 0, "soc": 0, "timestamp": 1726857163.664594}
Also, das war nun viel Text, was mache ich falsch? Wie kann ich die Funktion, die von der openWB Pro angeboten wird in der openWB nutzen?
Ich habe hier am letzten Mittwoch auch schon ein Ticket beim Support auf gemacht, da kam am Freitagnachmittag die Antwort, ob ich vielleicht die Einstellung "SoC direkt aus Fahrzeug auslesen" nicht auf "ja" gesetzt hätte. Dabei bezog sich meine Frage doch genau auf diese Funktion...
Ich habe irgendwie die Hoffnung, dass ich irgendetwas übersehe oder grundsätzlich falsch mache. Denn ich kann mir nicht vorstellen, dass dieses sonst keiner verwendet oder dass es einfach nicht möglich sein sollte. Daher dachte ich mir, stelle die Frage noch mal hier in die Runde, wer nutzt diese Funktion und wie habt ihr das umgesetzt?
Ich hoffe es hat da noch jemand einen Tipp für mich.
Schon mal besten Dank fürs lesen und viele Grüße
Stefan