3.75.6.20240316 freigegeben

Created with Sketch.

Hallo Zusammen,

nach wiederum zwei Monaten intensiver Arbeit an RaspberryMatic habe ich soeben die neue stabile Version (3.75.6.20240316) für die Allgemeinheit freigegeben. Da diese Version zusätzlich zu anderen Features und wichtigen Bugfixes auch auf der kürzlich von eQ3 freigegebenen 3.75.6 OCCU beruht handelt es sich hierbei um eine sogenannte “Major” Version. D.h. Sie bringt wichtige neue Bugfixes und vor allem Featureverbesserungen mit sich die sicherlich für einige der CCU-Community von großen Interesse sein könnten.

Neben der erwähnten Integration von OCCU 3.75.6 welche alle von eQ3 darin umgesetzten Änderungen beinhaltet und damit zu 100% mit dieser Version nun kompatibel ist gab es auch an RaspberryMatic selbst zahlreiche Änderungen. Eine dabei herausragende Änderung ist die Unterstützung RaspberryMatic nun alternativ als Linux Container (LXC) auf entsprechenden Virtualisierungsplatformen wie ProxmoxVE oder direkt unter einem Debian-basierten Linux Betriebssystem zu betreiben. Damit ist es nun möglich RaspberryMatic, genauso wie piVCCU dies bisher erlaubte, als leichtgewichtigen LXC Container unter einem bestehenden Linux-Betriebssystem zu installieren. Jedoch bringt dieser LXC-basierte Container dann sämtliche RaspberryMatic Verbesserungen mit sich wie die anderen Installationsarten unter einem vollwertigen RaspberryPi oder unter einer VM-Installationslösung. Um die LXC-basierte Installation von RaspberryMatic zu vereinfachen wurden die entsprechenden “install-proxmox.sh” und “install-lxc.sh” erweitert und die Dokumentation entsprechend angepasst (hier für PromoxVE oder allgemeiner LXC Container).

Die komplette Änderungshistorie – welche noch andere sicherlich interessante Veränderungen mit sich bringt – kann wie immer hier eingesehen werden (wurde mit DeepL automatisiert übersetzt):

:construction: Änderungen:

CCU/HomeMatic-System Änderungen:

  • Aktualisierung der OCCU-Version auf 3.75.6-1 mit voller Kompatibilität zur CCU3-Firmware 3.75.6, die die folgenden Änderungen enthält:
    • Aktualisierung der ReGaHss-Logik-Engine auf Version R1.00.0388.0237 (15. Februar 2024)
      • system.Srandom() wird nun korrekt true/false zurückgeben, um Erfolg oder Misserfolg zu signalisieren (#2644).
      • Problem mit einer generell zu kleinen Socket-Lesepuffergröße im http-Serverteil behoben, das dazu führte, dass Login-Anfragen fehlschlugen, wenn der http-Header (inkl. Cookies) diese Größe überschritt (#2625)
    • Korrektur beim Einstellen der Verknüpfungsparameter des HmIP-BSL.
    • Beim DALI Gateway wurden für Direktverknüpfungen mit DALI Geräten vom Typ DT 8 RGBW keine Verknüpfungsparameter angezeigt.
    • Profilanzeige bei einer Direktverknüpfung zwischen einem HmIPW-WGD und einem Rollladenaktor korrigiert.
    • HmIP-BSL – Nach einem Firmware-Update von Version 1.x.x nach 2.x.x wurde der Parameter „Kanalaktion“ innerhalb von Programmen nicht mehr ausgeführt.
    • Das Gerätefirmware-Update für den HmIP-HAP-B1 konnte nicht gestartet werden.
    • Schwachstellen u.a. im Zusammenhang mit dem Upload von Gerätefirmware wurden geschlossen (CVE-2024-24578).
    • HmIPW-DRBL4 – Unter bestimmten Umständen konnten die direkten Verknüpfungen nicht mehr aufgerufen werden.
    • Bei der Zuordnung von Systemvariablen zu Kanälen, wurde diese innerhalb von Programmen fehlerhaft dargestellt.
    • HmIP-RGBW / HmIP-DRG-DALI – Beim Easymode-Parameter „Pegelbegrenzung beim Herunterdimmen“ wurde der Wert 0% hinzugefügt.
    • HmIP-FALMOT – Es wurde ein Konfigurationsparameter hinzugefügt, der es ermöglicht, die benutzten Kanäle zu markieren. An diesen wird dann auf der Seite „Status und Bedienung“ der Status (z. B. Adaptionsfahrt) und eventuelle Fehlermeldungen des Kanals angegeben.
    • Bei der Erstellung von Heizungsgruppen, wurde der Default Gruppentyp von „Heizungssteuerung“ auf „HmIP-Heizungssteuerung“ geändert.
  • LXC-Container-Plattform-Unterstützung für amd64-, arm64- und armhf-basierte Systeme hinzugefügt. Nun ist es möglich, RaspberryMatic als LXC-Container entweder in einer ProxmoxVE-Umgebung oder unter einer Standard-LXC-Container-Umgebung unter Debian-basierten Systemen wie Ubuntu, RaspberryPiOS, Armbian, etc. zu installieren, ähnlich wie piVCCU funktioniert. Siehe die angepasste ProxmoxVE– und LXC-Installationsdokumentation für weitere Details (#2636).
  • Aktualisierung des mediola NEOserver auf die neueste Version 2.14.1 und Überarbeitung der Paketverwaltung, um stattdessen die ursprüngliche statische Version tar.gz zu verwenden und unsere Änderungen über dedizierte Paket-Patch-Dateien anzuwenden.

WebUI Änderungen:

  • Behebung des Style-Glitches im 0039-WebUI-Fix-Style-Glitches WebUI-Patch durch Hinzufügen von resize:auto zu txVals/txValue textarea und min-width:min-content zu messagebox css styles, so dass sich alle messageboxen automatisch an ihren Inhalt anpassen, so dass die Größenänderung von textarea-Elementen eine automatische Größenänderung der messageboxen bewirkt (#2634, #2440).
  • Änderung von 0097-WebUI-SetSysvarValueByUser zur Korrektur der vertikalen Größenänderung von enum-basierten Web-Edit-Textbereichen (#2634).

Betriebsystem Änderungen:

  • Hinzufügen von Änderungen zur Deaktivierung/Änderung bestimmter WebUI- und Startskript-Funktionen für den Fall, dass eine LXC-Plattforminstallation identifiziert wird. So zeigt der Firmware-Update-Dialog nun stattdessen einen Verweis auf die Dokumentation an. Darüber hinaus sollten die RPI-RF-MOD geführten Module nun korrekt geladen werden und das checkFirmwareUpdate.sh Skript erlaubt es auch nicht, ein Update durchzuführen, da LXC-Plattform-Updates innerhalb der Virtualisierungs-/Host-Umgebung durchgeführt werden müssen, wie bei docker/oci/home assistant.
  • die Datei install-proxmox.sh so geändert, dass RaspberryMatic als LXC-Container installiert werden kann, was auch sicherstellt, dass alle notwendigen zusätzlichen Host-Pakete (z.B. Kernel-Module) vor der Installation der RaspberryMatic-VM installiert werden.
  • neues Installationsskript install-lxc.sh hinzugefügt, um RaspberryMatic als LXC-basierten Container unter Debian-basierten Systemen installieren zu können.
  • Aktualisierung von buildroot auf 2024.02 und Anpassung aller Upstream-Patches und Grub-Bootloader-Abhängigkeiten.
  • Upstream-Kernel auf 6.6.x für generic-aarch64, intelnuc, odroid, ova und tinkerboard-Plattform erhöhen und Kernel-Patches entsprechend synchronisieren und die kconfig-Fragment-Dateien für Kernel 6.1 und 6.6 aufteilen.
  • usbstoragequirks in der Kernel-Kommandozeile ändern, um mehr USB-Speicherausnahmen für rpi-Plattformen zu berücksichtigen.
  • Update von tailscale VPN auf 1.60.1.
  • Aktualisierung des Upstream-Kernels auf 6.6.21 für die Plattformen generic-aarch64, intelnuc, odroid, ova und tinkerboard.
  • das busybox wget applet zu entfernen, da wir das Upstream wget installiert haben und iostat als neues integrales Werkzeug hinzuzufügen. Außerdem erlaubt top jetzt auch die Anzeige von Speicherstatistiken für ausführlichere Analysen der prozessbezogenen Speichernutzung.
  • Vereinheitlichung der Verwaltung von Kernel-Befehlszeilenoptionen, indem immer cmdline.txt aus bootfs für die Angabe zusätzlicher cmdline-Optionen für den Kernel verwendet wird.
  • Hinzufügen der Konfigurationsoption –enable-blumenthal-aes zur Kompilierung des netsnmp-Daemons, um AES192/AES256-Verschlüsselung für verbesserte SNMPv3-Unterstützung zu aktivieren (#2673).
  • Wiringpi-odroid auf die neueste Version aktualisiert.
  • Fügen Sie CONFIG_SERIAL_PRESENT zur rpi uboot Konfiguration hinzu und fügen Sie das no-stdout ausgewählte Fragment zu allen rpi bezogenen rpi-rf-mod dts Overlays hinzu, um sicherzustellen, dass u-boot keine Debug-Informationen auf dem Standard stdout ausgibt.
  • update u-boot to 2024.01 and remove all unnecessary uboot-patches already integrated upstream.
  • qemu-guest-agent auf die neueste Version 8.2.2 aktualisiert.
  • Aktualisierung von Java Azul für Armhf auf 11.70.15-ca-hl-jre11.0.22.
  • rpi-eeprom auf pieeprom-2024-02-16.bin aktualisiert.
  • Überprüfung auf HMLGW zum Docker Healthcheck hinzugefügt. (cf. viewtopic.php?f=65&t=80283&p=795894#p795894).
  • Wiederaktivierung der 1wire Kernel-Unterstützung (#2552).
  • Vereinheitlichung von /run und /var/run, um dasselbe tmpfs zu verwenden (#2639).
  • S06InitSystem wurde korrigiert, um korrekt nach einem Root-Benutzereintrag zu suchen.
  • dtoverlay=miniuart-bt für rpi5 entfernt, da nicht mehr erforderlich.
  • rpi5 so umgestellt, dass es standardmäßig 16k Speicherseiten verwendet, um die Leistung zu erhöhen und gleichzeitig mit älteren Anwendungen kompatibel zu bleiben.
  • BR2_ARM64_PAGE_SIZE_64K für die oci_arm64-Plattform verwendet, um den Docker-Container auch auf Hardware-Plattformen mit mehr als 4K Speicherseitengröße (z.B. RaspberryPi5) verwenden zu können.
  • sicherstellen, dass immer eine gültige shadow-Datei vorhanden ist.
  • irqbalance aus der globalen Verwendung entfernt, da es in containerbasierten Umgebungen keinen Nutzen hat.
  • Änderung der Cortex-basierten CPU-Definitionen in den Buildroot-Konfigurationen, um die individuellen Hardware-Spezifikationen unserer verschiedenen ARM-Plattformen besser zu erfüllen.
  • Optimierung der ARM-Cortex/FPU-Definitionen, damit sie besser zu den Hardware-Spezifikationen unserer ARM-Plattform passen.

:family: Mitwirkende (diese Version, alphabetisch):

:memo: Support:
Hier sei auch noch einmal auf die umfangreiche Dokumentation von RaspberryMatic hingewiesen an der bereits seit einiger Zeit gearbeitet wird und die auch sukzessive mit jeder Version verbessert wird. Zu erreichen ist die Dokumentation unter folgender Stelle:

Wie die URLs schon vermuten lassen, handelt es sich hierbei teils um einen öffentlichen Wiki an dem sich wirklich jeder gerne (nach entsprechender technischer Selbst-Einarbeitung) beteiligen kann um Anderen vor allem den Einstieg rund um das Thema “RaspberryMatic” zu erleichtern.

:package: Download/Installation:

Die neue Version kann wie gehabt von folgender URL für die verschiedenen Installationsplatformen von RaspberryPi über Tinkerboard bis hin zu allen virtuellen Platformen heruntergeladen und entsprechend installiert werden:

https://github.com/jens-maus/RaspberryM … ses/latest

Zu beachten gilt, das auf Grund der Unterstützung unterschiedlicher Geräte/Platformen es getrennte Installationsarchive und Installationsweisen gibt die für die folgende Hardware jeweils einheitlich ist. Hier bitte entsprechend die Dokumentation konsultieren.

Update/Upgrade:
Das Update auf diese Version kann bei Einsatz einer Vorversion unter “Einstellungen->Systemsteuerung->Zentralen-Wartung” durch Upload der jeweiligen *.zip oder *.tgz Datei (Nicht ausgepackt!) erfolgen. Alternativ kann natürlich weiterhin auch einfach eine neue SD-Karte verwendet werden und das im Archiv befindliche *.img auf die neue SD Karte kopiert werden um dann von dort aus neu zu booten und via Backup-Restore das jeweils aktuelle Backup wiederherstellen zu lassen. Bei den virtuellen Platformen (ova bzw. oci) passiert das jeweilige Update/Upgrade ggf. via der eingesetzten Virtualisierungsumgebung.

Hinweis:
Bitte beachten, dass natürlich vor jedem Update erst einmal ein manuelles Backup erfolgen sollte damit bei eventl. Fehlschlagen des WebUI-basierten Updates man mittels einer neuen SD-Karte dann sein aktuellstes Backup einfach wieder einspielen kann.

Für Bugreports und Featurerequests bitte den GitHub Issue-Tracker nutzen damit ich die Anfragen geordnet abarbeiten kann. Support- und Hilfeanfragen bei vermeintlichen Nutzungsproblemen bitte weiterhin hier als erstes im Forum platzieren und erst daraus ein Bugreport im GitHub machen wenn das Problem von anderen Nutzern bestätigt werden konnte.

Viel Spass mit der neuen RaspberryMatic Version!