Seite 1 von 1

Daten aus Bluetooth BMS zur Ladesteuerung einsetzen, ein Beispiel

Verfasst: Di 17. Mär 2026, 18:48
von RobZ
Da die Frage im Black Tea Unterforum aufkam, aber nicht zwingend auf die Batterien der Wildfire begrenzt ist, schreib ich hier mal nieder wie ich das umgesetzt habe. Es soll nur als Beispiel und Inspiration dienen, die Rahmenbedingungen sind wahrscheinlich bei jedem anders und bei mir doch relativ speziell gewesen.

Also, wo fangen wir an? Wie kommen die Daten aus der Batterie?

https://github.com/fl4p/batmon-ha

Wie im Name schon angedeutet ist dies ein HomeAssistant(im folgenden HA genannt) Add-On. Speziell um Daten aus den diversen Bluetooth-fähigen BMSen auszulesen und im HomeAssistant verwendbar zu machen.
Da mein Server mit HA aber im Keller und nicht in der Garage hängt habe ich das als StandAlone-Programm auf meinem Raspberry in der Garage laufen. Die Verbindung über Bluetooth ist etwas wackelig(Rapberry Bluetooth und BMS im Stahlkasten), läuft im Großen und Ganzen aber zufrieden stellend und zuverlässig.
Von dort werden die Daten zum MQTT-Server geschickt, der auch auf dem Server im Keller läuft.

Der MQTT-Server macht nicht viel mehr als die Daten an andere Teilnehmer zu verteilen, in meinem Fall an HA. Auch dort passiert mit den Daten nichts ausser sie vorzuhalten für:

https://evcc.io/

Dort wird dann die eigentliche Arbeit getan und die Energie gemanagt. In meinem Fall der Hausspeicher per Netzwerk und zwei Wallboxen per RS485 an denen unsere Zoe und eben die Wildfire hängt. Die Wildfire ist als HA-Fahrzeug angelegt und der Sensor der den Akkustand vorhält verknüpft. Der Umweg über HA war nötig da evcc beim Start irgendeinen Werte erwartet, über MQTT aber nichts mitbekommt(nicht mal das es den Paameter überhaupt gibt!) solange der Parameter nicht aktualisiert wird. Heißt: kein evcc Start wenn die Batterie sich nicht meldet -> unpraktisch wenn das BMS Zeitintervall bei 2 min steht, der evcc-Timeout aber schon bei 30s zuschlägt. Über HA bekommt evcc zumindest mit das es gerade keinen Wert(aber den Parameter) gibt und startet ohne Mucken.


Theoretisch lässt sich das alles auf einem Raspberry Pi umsetzen da sowohl batmon-ha als auch evcc als HA-AddOn verfügbar sind, in dem Fall braucht es auch keinen gesonderten MQTT Server.
Ich wollte nur meine schon vorhandene Infrastruktur nutzen, daher nehmen die Daten einen schönen Umweg:
Batterie -> batmon-ha(Garagen-Pi) -> MQTT(Keller-Pi) -> HomeAssistant(Keller-Pi) -> evcc(Garagen-Pi)

So, jetzt hab ich kein Bock mehr zu tippen. Bei Fragen fragen! ;)