Energie · Photovoltaik · Open Source
Von Guido Zeuner · etwa 9 Minuten Lesezeit
Zeus Charge Control 4.0: PV-Speicher intelligent mit Strompreisen laden
Das Open-Source-Projekt plant günstige Ladefenster für Sonnen-Batteriespeicher. Das überarbeitete Dashboard bringt Batteriestatus, Ladeplanung und manuelle Steuerung auf Desktop und Smartphone zusammen.

Mit einem dynamischen Stromtarif ändern sich die Preise im Tagesverlauf. Zeus Charge Control kann diese Preisfenster für die Ladeplanung eines kompatiblen PV-Speichers berücksichtigen. In Version 4.0 wurde vor allem die Weboberfläche erneuert: Sie zeigt den Speicherzustand, die Preisentwicklung und geplante Ladezeiten gemeinsam an und bietet direkte Steuerungsmöglichkeiten.
Das Projekt richtet sich an technisch versierte Betreiberinnen und Betreiber, die ihre Anlage selbst konfigurieren und überwachen. Die Software ist kein universelles Energiemanagementsystem und nicht als Plug-and-play-Lösung für beliebige Speicher gedacht.
Vor dem Einsatz prüfen
Zeus Charge Control unterstützt derzeit ausschließlich PV-Batteriespeicher mit Sonnen API v2. Das unabhängige Open-Source-Projekt ist kein Produkt der Sonnen GmbH. Konfiguration, laufende Kontrolle und Bewertung der Ladeentscheidungen liegen beim Betreiber der Anlage.
Das Wichtigste in einer Minute
- Version: 4.0.0 mit neuem Dashboard, fünf Themes sowie Desktop- und Mobilansichten.
- Kompatibilität: PV-Batteriespeicher mit Sonnen API v2; andere Speicher und Wechselrichter werden derzeit nicht unterstützt.
- Planung: Strompreise, Ladezustand und konfigurierbare Batterieparameter bestimmen mögliche Ladefenster. Wetterdaten über Open-Meteo sind optional.
- Betrieb: Java 21 oder neuer; entweder das ausführbare JAR oder das vorbereitete ZIP-Paket verwenden.
Was ist Zeus Charge Control?
Zeus Charge Control ist eine Java-Anwendung auf Basis von Spring Boot. Sie verbindet einen kompatiblen Batteriespeicher mit Marktdaten und erstellt daraus Ladepläne. Je nach Konfiguration können die Preise von aWATTar oder Tibber stammen; Wetterdaten lassen sich über Open-Meteo ergänzen.
Die Anwendung kann günstige Zeiträume erkennen, den aktuellen Ladezustand berücksichtigen und geplante Ladevorgänge anpassen. Sie zeigt außerdem Messwerte und Preisverläufe an. Eine Ersparnis ist damit nicht garantiert: Sie hängt unter anderem vom Tarif, der Anlage, den gewählten Einstellungen und den tatsächlichen Preisen ab.
Voraussetzungen auf einen Blick
- PV-Batteriespeicher mit erreichbarer Sonnen API v2
- Zugangsdaten und lokale beziehungsweise erreichbare Adresse der Batterie
- Java 21 oder neuer auf dem Zielsystem
- Ein dynamischer Tarif beziehungsweise eine konfigurierte Quelle für Marktdaten
- Technische Bereitschaft, Einstellungen und laufenden Betrieb selbst zu prüfen
Was ist in Version 4.0 neu?
Version 4.0.0 bringt ein neu gestaltetes Energie-Dashboard. Die Übersichtsseite bündelt wichtige Informationen und Aktionen, statt sie auf getrennte Ansichten zu verteilen.
- Speicherübersicht: Ladezustand, verfügbare Energie, saisonales Ladeziel, Solarproduktion, Hausverbrauch und Batterieleistung.
- Preis und Ladeplan: Preisverlauf, geplante Ladephasen und die fünf günstigsten künftigen Zeiträume, als Diagramm oder Tabelle.
- Bedienelemente: Automatik, Speicher pausieren und Netzladen starten oder beenden. Zum Start des Netzladens ist eine ausdrückliche Bestätigung erforderlich.
- Live-Aktualisierung: Die Werte werden alle zehn Sekunden aktualisiert, ohne die Seite neu zu laden. Bei Verbindungsproblemen zeigt die Oberfläche einen Hinweis und sperrt Steueraktionen bis zur Wiederverbindung.
- Preisanzeige: Wahlweise Börsenpreis netto oder Gesamtpreis mit den konfigurierten Aufschlägen und der Mehrwertsteuer. Diese Umschaltung ändert die Anzeige, nicht die Ladeoptimierung.
- Nachtruhe: Ein einstellbares Zeitfenster kann den Speicher nach dem nächtlichen Laden im Leerlauf halten. Es kann über Mitternacht laufen; Änderungen aus der Oberfläche gelten bis zum Neustart des Servers.
- Fünf Themes: Nord, Midnight, Forest, Solar und Ember. Das Dashboard unterstützt Deutsch und Englisch sowie schmale Smartphone-Ansichten.
Die Themes, die Preisbasis und die aktuelle Tabellen- beziehungsweise Diagrammansicht bleiben im Browser gespeichert. Fehlende Messwerte werden sichtbar als nicht verfügbar angezeigt, statt einen scheinbaren Messwert vorzutäuschen.
Dashboard und Screenshots
Das Dashboard ist für Desktop und Mobilgeräte ausgelegt. Die folgenden Aufnahmen zeigen die Solar-Ansicht mit ausdrücklich markierten Beispieldaten. Sie stammen aus der lokalen Demo und bilden keine echte Batterie ab.


Die Demo-Aufnahmen enthalten simulierte Werte. Sie zeigen weder Zugangsdaten noch den Zustand einer realen Anlage.
So funktioniert die Ladeplanung
Die Planung verbindet Preise mit dem Batteriezustand und den technischen Parametern der Anlage. Vereinfacht läuft ein Planungsschritt so ab:
- Batterie auslesen: Die Anwendung fragt unter anderem den relativen Ladezustand (RSOC) und weitere verfügbare Messwerte über die Sonnen API ab.
- Ziel und Grenzen prüfen: Sie vergleicht den aktuellen Zustand mit dem konfigurierten Ladeziel und berücksichtigt Kapazität und maximale Leistung.
- Preise einlesen: Die ausgewählte Preisquelle liefert die verfügbaren Marktpreisintervalle. Tibber und aWATTar können abhängig von der Konfiguration als Quelle oder Ausweichquelle dienen.
- Zeitfenster auswählen: Preisgrenzen, Zeitvorgaben und Ladebedarf fließen in die Planung ein. Optionale Wetterdaten können helfen, erwartete sonnige Zeiträume einzubeziehen.
- Plan aktualisieren: Die Ladeplanung wird regelmäßig sowie bei relevanten Daten- und Zustandsänderungen neu bewertet. Überholte oder abgelaufene Zeitfenster können dabei entfernt werden.
- Ergebnis kontrollieren: Plan, Preisverlauf und Speicherwerte bleiben im Dashboard sichtbar. Die Betreiberin oder der Betreiber prüft, ob das tatsächliche Verhalten zur Anlage passt.
Was bedeutet RSOC?
RSOC steht für „Relative State of Charge“ und bezeichnet den Ladezustand der Batterie in Prozent. Ein RSOC von 50 Prozent bedeutet, dass der Speicher nach seiner Messung ungefähr halb geladen ist. Zeus nutzt diesen Wert unter anderem, um den Ladebedarf zu beurteilen und einen Ladevorgang am konfigurierten Ziel zu beenden.
Installation und Start
Das Projekt wird als Quellcode auf GitHub bereitgestellt. Für einen eigenen Build sind Java 21 und Maven 3.9 oder neuer erforderlich. Auf dem späteren Zielsystem genügt Java 21 oder neuer.
Ausführbares JAR erstellen
mvn clean package
java -jar target/zeus-charge-control-4.0.0.jar
Das JAR enthält die benötigten Java-Abhängigkeiten, Templates, Browser-Dateien und Sprachdateien. Für den vollständigen Maven-Lifecycle ist weiterhin mvn clean verify verfügbar.
ZIP-Paket für den Betrieb
Das Projekt enthält außerdem ein Packaging-Skript für ein ZIP-Paket mit Startdateien für Windows und Linux/macOS, Konfigurationsvorlage, Lizenzen und Anleitung. Das Paket kann nach dem Build mit scripts/package.ps1 erzeugt werden. Auf dem Zielrechner wird die Beispielkonfiguration kopiert und angepasst; danach startet man die Anwendung mit start.bat beziehungsweise bash start.sh. Maven und Node.js müssen dort nicht installiert sein.
Nach dem Start ist das Dashboard standardmäßig unter http://127.0.0.1:8080/charging-status erreichbar. Die Beispielkonfiguration bindet die Oberfläche zunächst an den lokalen Rechner. Für Zugriff im Heimnetz muss die Netzwerkanbindung bewusst angepasst werden.
Konfiguration und Sonnen-Token
Vor der ersten Nutzung müssen Batterieadresse, API-Token und technische Werte zur eigenen Installation passen. Die Paketvorlage liegt unter config/application.properties.example; eigene Einstellungen können als config/application.properties daneben liegen. Sensible Zugangsdaten gehören weder in ein öffentliches Repository noch in Screenshots oder geteilte Logs.
battery.url=${BATTERY_URL:}
battery.authToken=${BATTERY_AUTH_TOKEN:}
battery.inverter.max.watts=${BATTERY_INVERTER_MAX_WATTS:4600}
battery.max.capacity.wh=${BATTERY_MAX_CAPACITY_WH:10000}
battery.urlist die Adresse der Batterie, die vom Rechner mit Zeus erreichbar sein muss.battery.authTokenenthält den Zugriffstoken für die Sonnen API.battery.inverter.max.wattsbeschreibt die maximale Lade- beziehungsweise Wechselrichterleistung.battery.max.capacity.whgibt die konfigurierte Batteriekapazität in Wattstunden an.
Die Zahlen im Beispiel sind keine Empfehlung für deine Anlage. Prüfe außerdem Marktpreisquelle, gegebenenfalls Tibber-Zugangsdaten, optionale Wetterkoordinaten, Ladeziele und Tarifaufschläge. Wie du den benötigten Token in der Sonnen-Oberfläche findest, erklärt die Anleitung „Wie du ein Access-Token von deiner sonnenBatterie bekommst“.
Konfiguration sorgfältig prüfen
Ein falscher Token, eine nicht erreichbare Adresse oder unpassende Leistungs- und Kapazitätswerte können die Messwerte und Ladeplanung beeinträchtigen. Übernimm die Beispielwerte nicht ungeprüft und vergleiche nach dem Start die Anzeige mit deiner Anlage.
Betrieb, Grenzen und Verantwortung
Das Projekt ist im README als experimentell gekennzeichnet. Die Bedienoberfläche macht Messwerte und Aktionen sichtbarer; sie ersetzt aber weder eine fachliche Prüfung noch die Kontrolle durch den Betreiber. Automatisierte Ladeentscheidungen können technische und wirtschaftliche Folgen haben.
- Prüfe die Anlage nach Änderungen an Konfiguration, Tarif, Software oder Firmware.
- Beobachte zunächst, ob geplante und tatsächliche Ladevorgänge zusammenpassen.
- Die Anwendung bringt keine eigene Benutzeranmeldung mit. Exponiere die Oberfläche deshalb nicht ungeschützt im Internet und öffne den Netzwerkzugriff nur mit passenden Schutzmaßnahmen.
- API-Ausfälle, fehlende Marktdaten, Netzwerkprobleme und fehlerhafte Einstellungen können die Planung beeinflussen.
- Die Software garantiert weder einen störungsfreien Betrieb noch eine Stromkostenersparnis und ist nicht für sicherheitskritische oder netzrelevante Steuerungsaufgaben vorgesehen.
Zeus Charge Control wurde nicht von der Sonnen GmbH entwickelt, wird von ihr nicht bereitgestellt oder unterstützt und ist kein offizielles Sonnen-Produkt. Die Namen der Anbieter und Produkte dienen der technischen Einordnung. Für die Nutzung der jeweiligen Schnittstellen sind auch deren Bedingungen zu beachten.
Häufige Fragen
Welche Batteriespeicher unterstützt Zeus Charge Control?
Derzeit PV-Batteriespeicher mit Sonnen API v2. Andere Batteriespeicher, Wechselrichter oder Energiemanagementsysteme werden nicht automatisch unterstützt.
Welche Strompreise kann die Anwendung abrufen?
Die Anwendung unterstützt aWATTar und Tibber. Welche Quelle verwendet wird und ob eine Ausweichquelle greift, hängt von der Konfiguration ab. Zugangsdaten sind bei Bedarf selbst einzurichten.
Ist Open-Meteo erforderlich?
Nein. Wetterdaten sind optional. Sie können anhand der eingestellten Koordinaten und Wetterparameter in die Planung einfließen.
Kann ich die Oberfläche vom Smartphone aus bedienen?
Ja. Das Dashboard ist für schmale und breite Bildschirme ausgelegt. Die Weboberfläche läuft auf dem Gerät, auf dem Zeus gestartet wurde; für Zugriff von anderen Geräten muss die Netzwerkkonfiguration entsprechend eingerichtet werden.
Ändert die Brutto-/Netto-Umschaltung die Ladeplanung?
Nein. Sie ändert die Preisbasis in den angezeigten Karten, Tabellen, Diagrammen und Bestätigungen. Die Einstellung ist eine Anzeigeoption und steuert den Optimierer nicht um.
Was passiert, wenn die API oder Batterie nicht erreichbar ist?
Die Anwendung zeigt fehlende Werte beziehungsweise Verbindungsprobleme an; Steueraktionen bleiben während der Verbindungsstörung gesperrt. Prüfe trotzdem Netzwerk, URL, Token und Logs, bevor du dich wieder auf die Automatik verlässt.
Projekt und weiterführende Links
- Zeus Charge Control auf GitHub – Quellcode, aktuelle Dokumentation und Projektdateien.
- Access-Token für die sonnenBatterie finden – Anleitung für den API-Zugang.
- Apache License 2.0 – Lizenz des Projekts.
Fazit
Zeus Charge Control 4.0 verbindet dynamische Strompreise, Sonnen-Batteriestatus und Ladeplanung in einer deutlich übersichtlicheren Weboberfläche. Die fünf Themes und die mobilen Ansichten machen das Monitoring flexibler; die Verantwortung für passende Einstellungen und regelmäßige Kontrolle bleibt beim Betreiber.
Wer einen kompatiblen Speicher mit Sonnen API v2 besitzt, technische Konfigurationen sicher prüfen kann und die Anlage aktiv überwacht, findet im Projekt einen interessanten Open-Source-Baustein. Vor dem Einsatz gehören Konfiguration, Zugriffsschutz und die eigenen Erwartungen an die Ladeoptimierung auf den Prüfstand.
Über mich: Ich bin Guido Zeuner – Softwareentwickler, IT-Berater und Wissensvermittler. Auf tiny-tool.de teile ich technische Erfahrungen und praxisnahe Lösungen. Mehr über mich.
Transparenzhinweis
Die Inhalte auf tiny-tool.de werden sorgfältig recherchiert, redaktionell geprüft und regelmäßig aktualisiert. Quellen und Zitate werden möglichst nachvollziehbar angegeben. Dennoch übernehmen wir keine Garantie für Richtigkeit, Vollständigkeit oder Aktualität der bereitgestellten Informationen. Irrtümer sind nicht ausgeschlossen.
Redaktion und Einsatz von KI: Bei der Erstellung von Inhalten können digitale Werkzeuge – darunter auch KI-basierte Assistenzsysteme – unterstützend eingesetzt werden, etwa bei Recherche, Strukturierung, sprachlicher Überarbeitung, Übersetzung, Codeanalyse oder visueller Gestaltung. Veröffentlichte Inhalte werden redaktionell geprüft, bearbeitet und von Guido Zeuner freigegeben. Auswahl, Einordnung und Veröffentlichung liegen beim Menschen. KI-Ausgaben gelten nicht als eigenständige Quellen. KI-Systeme sind keine verantwortlichen Autoren oder Redakteure. Weitere Informationen zu Texten, Bildern, Videos und digitalen Personas findest du auf unserer Seite Transparenz beim Einsatz von Künstlicher Intelligenz.
Reichweitenmessung (VG WORT / METIS): Zur Ermittlung der Reichweite einzelner Texte können Zählmarken der VG WORT eingesetzt werden. Im Rahmen der METIS-Zugriffszählung kann eine Client-ID gebildet und ein sogenanntes „METIS Session Cookie“ gesetzt werden. Die Messung dient der statistischen Ermittlung von Textzugriffen und als Grundlage für mögliche Ausschüttungen der VG WORT. Nach Angaben der VG WORT werden dabei keine personenbezogenen Nutzungsprofile erstellt; die Messung dient nicht der Werbung oder dem Marketing-Tracking. Weitere Informationen findest du in unseren Datenschutzhinweisen.
Bitte beachte: Die Inhalte dienen ausschließlich der allgemeinen Information und stellen keine fachliche Beratung dar, insbesondere keine rechtliche, steuerliche, medizinische, technische oder finanzielle Beratung. Die Nutzung der Inhalte erfolgt auf eigene Verantwortung.
Werbung und Affiliate-Links: Einige Beiträge können werbliche Hinweise oder sogenannte Affiliate-Links enthalten. Diese werden entsprechend gekennzeichnet. Beim Klick entstehen dir keine zusätzlichen Kosten; wir erhalten gegebenenfalls eine kleine Provision.
Markenrechtlicher Hinweis: Alle Markennamen, Logos und Produktbezeichnungen sind Eigentum der jeweiligen Rechteinhaber und werden ausschließlich zur Identifikation und Beschreibung verwendet. Eine Verbindung zu den genannten Unternehmen besteht nur, wenn dies ausdrücklich angegeben wird.
Externe Links: Diese Website enthält Verweise auf externe Websites Dritter. Trotz sorgfältiger Prüfung übernehmen wir keine Verantwortung für deren Inhalte. Bei Bekanntwerden rechtswidriger Inhalte werden entsprechende Links geprüft und gegebenenfalls entfernt.



tiny-tool.de
tiny-tool.de