
Seit ein paar Tagen (sorry für die verspätete Einstellung) gibt es ein weiteres Update für RaspberryMatic auf die Version 3.51.6.20200613. Bei dieser Version handelt es sich um ein Major Release, das neben Bugfixes auch noch interessante Verbesserungen mit sich bringt, die sicherlich für viele Nutzer interessant sein könnten.
Changelog
CCU-System Änderungen:
-
Aktualisierung der OCCU Firmware auf Version 3.51.6-5 die folgende kleinere Änderungen mit sich bringt:
-
Integration einer neuen/aktualisierten ReGaHss Logikengine R1.00.0388.0218 (Jun 9 2020) Version mit folgenden Änderungen:
- Repariertes super string (^) escaping um strings ohne notwendiges quoting/escaping zu definieren/nutzen.
- Integrierte Funktionalität um für AstroTimer eine Offset-Zeit (z.B. XX Minuten vor Sonnenaufgang) sowie eine Duration (bis XX Minuten nach Sonnenaufgang) definieren zu können. Nun können für AstroTimer die Funktionen TimeSeconds() und CalDuration() zusammen mit dem SunOffsetType() verwendet werden. Hierbei muss jedoch beachtet werden, dass bei einer negativen Zeit jeweils der SunOffsetType “sotBeforeSunXXXX” verwendet werden muss.
- Bugfix in der @time@ string Konvertierungsroutine die nicht für alle möglichen @time@ string definitionsarten korrekt funktionierte.
- Ersetzen aller interner gettimeofday()/time() Nutzungen gegen clock_gettime() da z.B. gettimeofday() bereits seit POSIX Standard 2008 als “obsolete” definiert wurde. Zusätzlich wird nun an sämtlichen Stellen clock_gettime() mit CLOCK_MONOTONIC verwendet um eine größere Unabhängigkeit von manuellen Zeitänderungen durch den Nutzer oder den NTP Dienst zu gewährleisten.
- Bugfix bei der internen Nutzung potentiell undefinierter string copy operatoren.
- Bugfix für potentielle Abstürze in Situation mit wenig freiem RAM umgesetzt.
-
- Aktualisierung des integrierten mediola NEO SERVER CCU-Addons auf die aktuellste 2.5.3 Version.
- Geringfügige Verbesserung bei der Erkennung des Einsatzes eines RPI-RF-MOD Modules umgesetzt (cf. alexreinert/debmatic@abf4862)
- Unterstützung für die neue HB-RF-USB-2 Adapterplatine von Alexander Reinert hinzugefügt sowie allgemeine Aktualisierung des ‘generic_raw_uart’ seriell Treibers.
WebUI Änderungen:
- Implementierung eines neuen WebUI Patches der es nun erlaubt durch die neueren ReGaHss Versionen in der WebUI eine Offset und Duration Zeit bei AstroTimern einzustellen. Nun kann in der Zeitmodul-Konfiguration bei den Astro (Sonnenaufgang/untergang) Funktionen ein Zeitoffset (XX Minuten vor/nach Sonnenaufgang) sowie eine Duration-Zeit (bis XX Minuten) eingestellt werden damit entsprechende zeitgetriggerte Programme in Abhängigkeit des Sonnenstandes generiert werden können (#221).
- geringfügiger Bugfix in 0037-WebUI-DevConfig-RSSI Patch umgesetzt der ein Problem bei der Nutzung von devconfig.cgi beheben sollte das es nicht erlaubte für alle HmIP Geräte die RSSI Werte ausgeben zu lassen (#845).
- Integration eines geringfügigen WebUI Style-Fixes der nun in der Servicemeldungstabelle bei den Gerätebildern einen weißen Hintergrund nutzen sollte um eine konsistentere Darstellung zu erreichen.
Betriebsystem Änderungen:
- Umstieg bei der Nutzung der Linux Kernel Versionen von 4.19.x auf die aktuellste 5.4.x LTS Version (5.4.44) für alle unterstützten Platformen sowie Update der genutzten RaspberryPi firmwares auf die jeweils passende Version.
- Aktualisierung der Buildroot/Linux Umgebung auf die aktuellste 2020.05 Version.
- Aktualisierung der genutzten U-Boot Version auf die Version 2020.01 sowie Anpassung der jeweilig genutzten Patches.
- Aktualisierung der ARM Version der mitgelieferten Java JRE auf die aktuellste 8.46.0.225-ca-jdk8.0_252 LTS Version.
- Unterstützung für das neue 8GB Modell des RaspberryPi4b (d03114) hinzugefügt.
- Wireguard-VPN Support hinzugefügt. Nun können Nutzer ggf. eigene VPNs unter Nutzung von Wireguard-VPN (https://www.wireguard.com/) in Betrieb nehmen (#776).
- Hinzufügen eines neuen Shutdown/Crash Watchdogs der bei unerwarteten Neustarts oder Abstürzen den Nutzer beim nächsten starten von RaspberryMatic mittels WebUI Alarmmeldung über den Absturz bzw. unsauberen Reboot informiert.
- Integration eines neuen, cron-basierten “fstrim” cronjobs der regelmäßig (1x wöchentlich) bei unterstützten Medien via TRIM/DISCARD Kommando vorher als frei markierte Diskblöcke freigibt.
- Hinzufügen der Möglichkeit via setzen zwei neuer Statusdateien (/etc/config/NoFSTRIM und /etc/config/NoBadBlocksCheck) die jeweiligen regelmäßigen Diskcheckoperationen zu deaktivieren.
- Hinzufügen eines Workaround um potentiell langsame oder teils defekte /dev/hwrng Geräte beim starten des rng daemons zu erkennen und dann als fallback /dev/urandom zu verwenden. Dies sollte etwaige Probleme mit neueren Synology VMM Versionen beseitigen die dazu geführt hatten das beim Start von RaspberryMatic diese nicht ordnungsgemäß mehr hochfahren konnte (#831).
- Es wurde eine globale /usr/etc/npmrc Datei hinzugefügt die den jeweiligen npm cache in das /tmp Verzeichnis definiert damit bei einem manuellen Aufruf von “npm install” npm selbst nicht über ein fehlendes bzw. nicht beschreibbares cache verzeichnis beschwert. Zusätzlich wurde unter /root/.npmrc nun ein Link auf /usr/local/etc/npmrc gesetzt damit nutzer eigene npm konfigurationen dort via “npm config set/get” positionieren können (#823).
- Beim Start wird nun via “lsblk” aufruf automatisch das jeweilige mmcX device versucht zu identifizieren um dann im weiteren Bootup die jeweiligen Board-LEDs richtig für das wiedergeben der Schreiboperationen zu verwenden. Dies sollte nun entsprechende Probleme bei der eMMC Nutzung mit einem Tinkerboard beseitigen da dort nach dem korrekten Hochfahren die rote LED nicht korrekt die Diskaktivität der eMMC wiedergab.
Nur wenige Tage nach dem Release hat Jens Maus ein Bugfix-Release der Version mit folgenden Änderungen freigegeben:
CCU/HomeMatic-System Änderungen:
-
Aktualisierung der OCCU Firmware auf Version 3.51.6-7 die folgende kleinere Änderungen mit sich bringt:
-
Integration einer neuen/aktualisierten ReGaHss Logikengine R1.00.0388.0219 (Jun 19 2020) Version mit folgenden Änderungen:
- Die in der letzten Version integrierte Funktionalität innerhalb eines Raw/Super Strings (^) auch ein ^ Zeichen direkt mittels backslash escaping nutzen zu können wurde wieder zurückgenommen da es damit zu anderen negativen Effekten gekommen ist. Stattdessen wurde das backslash escaping in normalen Strings dahin korrigiert, das man nun auch Strings wie “\\” nutzen kann ohne das es zu Syntax Fehlern kommt (#225)
- Problem in der genutzten xmlparser Bibliothek beseitigt der für die identifizierung von clear tags eine groß/kleinschreibung unterscheidung vornahm und was dazu führte das hier fälschlicherweise ein Fehler zurückgegeben wurde wenn das schließende tag kleinschreibung aufwies. Dies verhinderte, das im WebUI Scripteditor Variablennamen wie “pre” oder “script” genutzt werden konnten da dieser das betroffene tcl<>rega script interface nutzt welches davon betroffen war (#230)
-
- Problem bei der Funkmodulinitialisierung beseitigt das zu Initialisierungsfehlern führte wenn ein HM-MOD-RPI-PCB zusammen mit einem HB-RF-USB/HB-RF-USB-2 in einer OVA Umgebung genutzt wurde. Nun wird ein Funkmodulreset bei jedem Booten durchgeführt sowie mittels zusätzlicher “timeout 20” calls es verhindert das in Zukunft bei der Initialisierung es zu sehr langen Wartezeiten kommen kann. (Danke an Alexander Reinert für die Hilfestellung).
WebUI Änderungen:
- Integration eines neuen WebUI Bugfix Patches der einen Absturz der WebUI bei Anlegen eines neuen Raumes oder Gewerk beseitigt. Durch die Eingabe eines Raum/Gewerknamens in zusammenhang mit dem Bestätigen mit RETURN konnte es durch die kollidierende Nutzung zweier Event handler zu einer abgestürzten browser session kommen (#855).
- Integration eines neuen WebUI Bugfix Patches der das Problem beseitigt, das die Aktualisierung der WebUI einfrieren konnte oder es zu einer falschen Darstellung kommen konnte wenn in einer Systemvariablen HTML Tags verwendet wurden und diese Systemvariable als Nutzerfavorit auf der Hauptseite auf der rechten Seite hinzugefügt wurde (#856).
- Integration eines neuen WebUI Bugfix Patches der ein Problem beseitigt das im WebUI Script Editor das ^ Zeichen nicht genutzt werden konnte da dieses Zeichen ein reserviertes Zeichen der raw/super string Funktionalität der ReGaHss ist. Nun wird das ^ Zeichen in einem WebUI Script Editor Fenster vor übertragung entsprechend mittels meta escape sequence “@$@%” escaped und dann entsprechend wieder unescaped damit es zu keinem Konflikt kommt (#225).
Betriebsystem Änderungen:
- Problem beim Monit/Watchdog Temperaturcheck beseitigt, das fälschlicherweise eine erhöhte CPU-Temperatur anmahnte wenn der entsprechende “thermal_zone0/temp” sysfs Link zwar existierte, aber einen Fehler beim Zugriff zurückgab.
- Problem beseitigt, das bei Nutzung eines RaspberryPi4 die CPU Temperatur nicht korrekt via “thermal_zone0/temp” ausgelesen werden konnte da die entsprechende Linux kernel Option (CONFIG_BCM2711_THERMAL) fehlte.
- Da aktuelle RaspberryPi4 firmwares nun das entfernen der “hdmi_force_hotplug=1” boot config option zulassen wurde diese aus der standard boot config entfernt. Dadurch wird nun auch bei Nutzung eines RaspberryPi4 automatisch der HDMI Port komplett deaktiviert wenn kein HDMI Kabel beim hochfahren eingesteckt ist. Das sollte wie bei den anderen RaspberryPi Versionen dazu führen das potentielle RF Interferenzen mit einem aufgesteckten Funkmodul minimiert werden.
- Problem beseitigt das nicht unter allen Umständen es zu einer Deaktivierung des HDMI Ports beim hochfahren gekommen ist. Nun wird mittels eines zusätzlichen “tvservice” checks geprüft ob eine HDMI Verbindung besteht und wenn nicht der HDMI Port entsprechend komplett deaktiviert.