OpenDTU-on-Battery vs. mein Balkonsolar-Setup

Findige Entwickler haben die Open-Source-Steuerungslösung für Hoymiles-Microwechselrichter,OpenDTU, um das Management der Einspeisung im Kontext von Batteriespeichern und Solarreglern erweitert: OpenDTU-on-Battery. Da das alles auf konzeptionell einem einzigen ESP32 (mit mind. 8 MB Flash, Stand Mitte 2024) läuft, habe ich mir das mal näher angesehen.

Mein angemeldetes Balkonkraftwerk besteht aus 4x 425Wp bifazialen sowie 4x 500 Wp Modulen, einem 5 kWh Speicher (48 Volt) sowie max. 600 VA-Wechsel­richter­leistung (gemäß gesetzlicher Regelung 1Q2024). Die Module – i. d. R. wegen der Spannungserfordernisse eines 48V-Batteriesystems ein String aus 2 Modulen in Reihe – liegen auf Victron Ladereglern, welche ein Victron SmartNetwork per Bluetooth bilden — was einerseits zu einem Wert »Gesamtleistung im Netzwerk« führt – die Momentanleistung aller Solarladeregler wird aufsummiert – und andererseits zu einem homogenen Handling bzgl. der Ladung der Batterie (Spannung und Lademodus werden angeglichen). Sehr schönes und auch nicht überteuertes System, IMHO.

Mein »Victron SmartNetwork« ist schon einmal der erste Stolperstein für OpenDTU-on-Battery: dieses System kann, zumindest in Version 2025.02.10, zwar direkt einen Solarregler per VE.direct abfragen — aber lokal wird ausschließlich der aktuelle Ertrag des verbundenen Solarreglers verwendet.

Den Wert »Network­Total­Dc­In­put­Po­wer« (der nur im HEX-Modus per VE.direct verfügbar ist) kann OpenDTU-on-Battery allerdings per MQTT publizieren. Long story short, während ich i. d. R. Victron-Geräte per ESP-mini-Billo-Interface MQTT-fähig mache, gibt es erstaunlich wenig (ESP-) Software, die (auch) den VE.direct-HEX-Modus unterstützt — der für mein Setup aber elementar ist, denn ohne die aktuelle Netzwerkgesamtleistung haben Einzelwerte der Solarregler nur einen statistischen Wert. Ergo: ich habe einen 4MB-ESP32-D0WD-V3 mit OpenDTU-on-Battery mittels ADUM1201 Levelshifter an einen MPPT 100|20 per VE.direct gehängt, dieser pusht alle 5 Sekunden den Wert von »NetworkTotalDcInputPower« zum MQTT-Broker …

… und die anderen¹ OpenDTU-on-Battery lesen diesen Wert in Einstellungen ⇒ Solarregler ⇒ Ausgangsleistung Topic (weil sie diesen Wert selbst bei VE.direct-Verbindung zu einem smartvernetzten Laderegler nicht verarbeiten könnten² — ist das wirklich ein so seltener Usecase bei Menschen, die Victron Solarregler und Batteriespeicher einsetzen? Ich denke nicht, Tim …).

¹ »Die anderen OpenDTU-on-Battery«? Ich habe schon Ende 2023/Anfang 2024 OpenDTU-Hardware gekauft, einmal nur mit dem Funkmodul für meine HMS-Geräte, später noch einen mit Funkmodulen für die HM- als auch die HMS/HMT-Serie — ja, kann man selbst zusammenlöten, aber ohne 3D-Drucker müßte ich das Gehäuse mir anderswo ›besorgen‹, also war »make or buy« initial nicht die Frage. Leider kannte ich damals das Projekt ›OpenDTU-on-Battery‹ nicht und so auch nicht deren geplanten Wechsel von 4 MB Flash auf 8 MB Flash als Minimum. So sad, zumal das jeweils Geräte mit Spezialplatinen waren, sodaß ein Austausch des ESP32 zumindest nicht trival ist. Nunja, Lehrgeld. For the time being läuft auch OpenDTU-on-Battery auf dieser 4-MB-Flash-OpenDTU-Hardware, nur auf OTA-Updates muß man verzichten — sprich neuere Firmware muß man händisch flashen: es gibt schlimmeres 😉

² Augenscheinlich ist das Problem bekannt und vor ein paar Tagen auch adressiert worden, vgl. PR .

Soweit, so … schön?

Die Werte meiner mME liegen ebenfalls per MQTT vor, sodaß mehrere OpenDTU-on-Battery diese zeitgleich nutzen können.

Und hier lauert das nächste Problem: ich möchte über Wechselrichter 1 die Last auf Phase 1 ausgleichen, durch WR 2 jene auf Phase 2. Ja, der Zähler saldiert, aber meine Rückwirkung aufs Netz darf ja u. a. 600/800 Watt nicht überschreiten, daher lieber die 400-500 Watt Grundlast auf der jeweiligen Phase kontern, statt 900 Watt auf Phase X rückzuspeisen.

OpenDTU-on-Battery at watch
OpenDTU-on-Battery-kon­trol­lier­te Ein­spei­sung auf L2, um Sum­me­nziel 600 Watt Ver­brauch ein­zu­hal­ten.
Einerseits sind mehrere Micro-Mechselrichter an mehreren Phasen bis zur Summe 600/800 Watt legal, andererseits augenscheinlich auch Systeme weit jenseits der 600/800 Watt, sofern ins öffentiche Netz nicht mehr als 800 Watt – vermutlich in meinem Fall 600 Watt – ›rauslecken‹. Allein, das geht mit nur einem OpenDTU-on-Battery nicht, zumindest derzeit nicht.

Was hingegen gut klappt: Einspeisungsziel vorgeben und OpenDTU-on-Battery regelt die Abgabe von Energie über den Wechselrichter (aus der Batterie) anhand dieses Ziels.

Limit-Handling Open­DTU-on-Battery

Und es wird offensichsichtlich auch ein relevanter Punkt bei Hoymiles-Wechselrichtern beachtet: eine Begrenzung, z. B. auf 80%, wirkt sich immer auf die Ertragsseite aus, nicht, wie man erwarten würde, auf die Einspeisungsseite aka Export ins Stromnetz: bei einem 2T-System – z. B. HMS-800-2T mit 2 Trackern – bedeutet ein Limit von 50%, daß es maximal 2x 200W von den 2 MPPTs es zum Ausgang schaffen — das klassische Ost-West-System wäre also auf 2x 400W limitiert, obwohl durch den Sonnenlauf niemals Ost- und West-Module gleichzeitig nennenswert Energie liefern würden. Das ist insofern irritierend, als das typischerweise jeder Tracker 800W schaffen könnte, aber schon normalerweise auf 400W limitiert ist.

Kurzum, Zwischenfazit nach wenigen Tagen: OpenDTU-on-Battery ist eine sinnvolle Evolution von OpenDTU — zumindest, wenn man Victron Solarladeregler und/oder Victron SmartShunts und eine Batterie einsetzt. Hardwarerestriktionen lassen eine ›größere‹ Anlage mit mehreren Solarreglern latent kompliziert werden, einzubinden, aber aber mit einem MQTT-Broker läßt sich auch dies lösen. Und OpenDTU-on-Battery ist eine smarte Lösung baserend auf einem ESP32 — gegenüber dem initialen Ansatz, aus einem Node Red heraus den Hoymiles Wechselrichter zu steueren viel schneller und weniger Gebastel 😉 Am besten gefällt mir an der Hoymiles-Lösung, daß man einfach Geräte aus dem Regal nehmen kann — anders als bei Lumentree, wo nur über einen speziellen Vertriebspartner (teurer) verkaufte Geräte per proprietärem ›Trucki-Stick‹ aus der Ferne steuerbar sind. Und auch die Steuerungskomponente, OpenDTU (-on-Battery), ist Open Source und man kann sich die Hardware nötigenfalls billig selbst zusammenlöten …

Schreibe einen Kommentar