Release 2.4.0 (build 223)
Firmware binaries:
- firmware_zigbee.bin – ESP32-C5 ZigBee + BLE variant
- firmware_matter.bin – ESP32-C5 Matter + BLE variant
- firmware_esp8266.bin – ESP8266 (OS 3.x)
All releases: https://github.com/opensprinklershop/OpenSprinkler-Firmware/releases
Added
- Monitor-Sichtbarkeit auf der Hauptseite (
show, Ticket 305): Monitore haben nun – analog zu Sensoren – ein persistentesshow-Flag. In der Monitor-Konfiguration (/mc, Parametershow) und in der Ausgabe ("show") mitgeführt; Standard1(sichtbar, abwärtskompatibel). Damit lassen sich einzelne (auch aktive) Monitore aus der überladenen Hauptseiten-Anzeige ausblenden, ohne sie zu deaktivieren. - Pro-Sensor Mindest-Log-Intervall (
li, Ticket 305): Neues Sensorfeldlog_interval(Sekunden,0= aus). Ist es gesetzt, wird pro Sensor höchstens ein Log-Eintrag jeliSekunden geschrieben – auch bei ständigem Wertwechsel. Das begrenzt das Log-Volumen „lauter" Sensoren (z. B. ein Timer, der alle paar Minuten schaltet), die sonst den gemeinsamen, größenbegrenzten Log-Ring fluten. Der Tages-Heartbeat (>86400 s) bleibt unberührt. - HTTP-JSON-Filter: dynamischer Array-Index
[now±N](Ticket 305): Neben festen Indizes ([3]) versteht der Remote-JSON-Filter jetzt den Platzhalter[now],[now+N]bzw.[now-N]. Er löst sich zur aktuellen lokalen Stunde des Tages (0–23) plus Offset auf, sodass stündliche Vorhersage-Arrays (z. B. Open-Meteo) relativ zur aktuellen Stunde adressiert werden können (z. B.hourly|temperature_2m[now+1]). Verfügbar auf ESP8266/ESP32/ESP32-C5 (Streaming-Parser).
Changed
- Robusteres Firmware-Update: Dienste vor dem Flashen anhalten (Ticket 305): Zu Beginn eines OTA-Uploads (STA-Modus, nicht ESP32-C5) wird der MQTT-Client jetzt via
OSMqtt::suspend()angehalten (gibt auf dem ESP8266 ~7 KB Heap frei) und offene UDP-Sockets (NTP/mDNS) werden geschlossen. Zuvor konkurrierten diese Dienste um das WLAN-Funkmodul, wodurch der erste Upload-Versuch auf dem RAM-knappen ESP8266 hängenblieb und erst ein zweiter Anlauf erfolgreich war. Bei Abbruch oder Fehlschlag des Updates werden die Dienste wieder aufgenommen (ein erfolgreiches Update startet ohnehin neu). - W5500-Bring-up-Diagnose hinter
ETH_DIAGgekapselt (ESP32-C5): Die Low-Level-SPI-Diagnose (w5500_spi_diag) wird nur noch kompiliert und ausgeführt, wennETH_DIAGdefiniert ist (standardmäßig aus). Im Normalbetrieb entfällt damit der zusätzliche SPI-Probe-Zugriff voreth.begin(); das feste 100BASE-TX-Full-Duplex-Setup bleibt unverändert aktiv.