Background

Version 0.13.2 verfügbar

  • #release
von Georg Ledermann

Ein neues Update ist da, nachdem es in den letzten Wochen etwas ruhiger war. Es bringt einige Detailverbesserungen und Fehlerbehebungen. Eigentlich sollte es die Version 0.13.1 sein. Ein kurzfristig entdeckter Fehler macht aber ein weiteres Update auf die Version 0.13.2 notwendig.

Hier die wichtigsten Änderungen im Einzelnen:

Differenziertere Status-Anzeige

Ein SENEC-Speicher liefert einen Statuscode mit einem Wert zwischen 0 und 98. Einige Werte repräsentieren den Normalzustand (“Laden”, “Entladen”, “Peak-Shaving: Warten” und einige mehr), die anderen stehen für Probleme jeder Art. Ein Statuscode, der nicht zum Normalbetrieb gehört (z.B. “NPU-Fehler”), wird nun farblich hervorgehoben angezeigt.

Diese Situation ist zu unterscheiden von einer verlorenen Verbindung, wenn also überhaupt kein aktuelle Messung vorliegt. Dies wird nun als “Keine Verbindung” angezeigt (anstelle des bisherigen “FAIL”).

Wenn kein genauer Statuscode bekannt ist (z.B. bei Verwendung des MQTT-Collectors), wird “Verbunden” angezeigt (anstelle des bisherigen “LIVE”).

Status

Darstellung von aktiver Einspeisebegrenzung

Je nach Größe, Alter und Konfiguration der PV-Anlage kann es sein, dass die Einspeisung auf 70% der PV-Leistung begrenzt wird. Wenn ein solcher Zustand erkannt wird (verursacht durch hohe Erzeugung bei gleichzeitig geringem Eigenverbrauch), wird dies nun in der Grafik angezeigt.

Einspeisebegrenzung

Sieht man einen solchen Hinweis ist, ist das eine gute Gelegenheit für Waschmaschine, Geschirrspüler und Co.

Aktualisierungs-Intervall einstellbar

Die Häufigkeit der Messwert-Aktualisierung kann nun über die Umgebungsvariable INFLUX_POLL_INTERVAL eingestellt werden. Der Standardwert ist 5 Sekunden.

Wenn man also die (schon immer vorhandene) Variable SENEC_INTERVAL auf einen höheren Wert als die standardmäßigen 5 Sekunden gesetzt hat, kann man das Dashboard daran anpassen. SENEC_INTERVAL und INFLUX_POLL_INTERVAL sollten den gleichen Wert haben.

Die neue Variable ist auch dann nützlich, wenn bei Verwendung des MQTT-Collector seltener als alle 5 Sekunden Messwerte übertragen werden. Es lässt sich dann vermeiden, dass der Status “Keine Verbindung” angezeigt wird.

Solarprognose für mehrere Dachflächen

Falls du Solarmodule auf mehr als nur einer Dachfläche installiert hast, kann dies bei der Solarprognose berücksichtigt werden. Der Forecast-Collector (ab Version 0.4.0) kann nun entsprechend konfiguriert werden.

Eine genaue Anleitung für die Konfiguration findet sich hier:
https://github.com/orgs/solectrus/discussions/2396

Verbesserte Effizienz bei der Messwertabfrage

Der SENEC-Collector (ab Version 0.10.0) nutzt nun eine persistente Verbindung, um Messwerte vom Speicher abzurufen. Dies bedeutet, dass die Verbindung nach dem Erhalt eines Messwerts nicht getrennt, sondern für die nächste Abfrage offen gehalten wird. Der folgende Messwert wird nach 5 Sekunden über dieselbe bestehende Verbindung abgerufen.

Diese Methode ist signifikant effizienter im Vergleich zur alten Vorgehensweise, bei der für jeden einzelnen Messwert eine neue Verbindung etabliert wurde. Dies ist besonders vorteilhaft bei Verbindungen über https, da der SSL/TLS-Handshake entfällt. Während dies für SOLECTRUS kaum Auswirkungen hat, entlastet es den SENEC-Speicher erheblich.

Laut meinen Messungen dauerte der Abruf eines Messwerts unter Einbeziehung des Verbindungsaufbaus etwa 250 ms. Mit einer persistenten Verbindung reduziert sich die Zeit für den einzelnen Abruf auf lediglich 8 ms, was einer Verbesserung um den Faktor 30 entspricht.

Fehlerbehebungen

Diverse kleinere Problemchen konnten abgestellt werden:

  • Bei Uhrzeitabweichungen zwischen Server und Browser kommt es nicht mehr zu Darstellungsfehlern in den Diagrammen.
  • Die Berechnung der Autarkie erfolgt nun auch dann korrekt, wenn es keinen Verbrauch gibt, was beispielsweise bei Verwendung eines Balkonkraftwerks der Fall sein kann.
  • Bei unterbrochener Verbindung werden jetzt nicht mehr sehr alte Messwerte angezeigt, sondern die Anzeige wechselt nach einer Stunde auf eine leere Darstellung.

Installation des Updates

Wer nicht sowieso mittels WatchTower das Update automatisch erhält, kann es auf einfache Weise manuell über die Kommandozeile (SSH-Login) installieren:

# Im Ordner ausführen, in dem die docker-compose.yml von SOLECTRUS liegt:
docker compose pull
docker compose up -d

oder (bei älteren Versionen von Docker, z.B. auf einem Synology-NAS)

# Im Ordner ausführen, in dem die docker-compose.yml von SOLECTRUS liegt:
docker-compose pull
docker-compose up -d

Diese Befehle aktualisieren übrigens auch die anderen Docker-Container wie z.B. den SENEC-Collector und den Forecast-Collector, falls diese installiert sind.