3.73.9.20240130 freigegeben

Created with Sketch.

Hallo Zusammen,

nach nunmehr zwei Monaten weiterer Arbeit an RaspberryMatic habe ich soeben wieder eine neue stabile Version (3.73.9.20240130) freigegeben. Neben einigen kleineren Aktualisierungen und Bugfixes am zugrundeliegenden Betriebssystem und an der OCCU, WebUI und neuer ReGaHss, bringt diese Version auch als etwas größere Modifikation die Unterstützung zwei neuer Hardware Platformen mit sich.

Bei der ersten neuen Hardware Platform die ab dieser Version unterstützt wird handelt es sich um den RaspberryPi5 den es seit kurzem in größeren Stückzahl frei verfügbar gibt. D.h. nun gibt es zusätzlich zu den anderen RaspberryPi Images noch ein “rpi5” RaspberryMatic Image das man auf die SD Karte eines RaspberryPi5 flashen kann um so RaspberryMatic direkt auf einem RaspberryPi5 zu betreiben. Interessant könnte das vor allem für Besitzer von CCU3s bzw. deren Gehäusen oder ELV-Charly Gehäusen sein, da im Gegensatz zum RaspberryPi4 der RaspberryPi5 wieder in diese Gehäuse direkt hineinpassen sollte und somit ein Hardware Upgrade oder Ersatz damit recht einfach passieren kann.

Bei der zweiten neuen Hardwareplatform die ab dieser Version nun standardmäßig immer dabei sein wird wird handelt es sich um die sogenannte “Generic AArch64” Platform (generic-aarch64). Hierbei handelt es sich um Images um RaspberryMatic als virtuelle Maschinen unter ARM64-basierten Systemen betreiben zu können. Da es seit kurzem z.B. Proxmox VE als Virtualisierungsplatform auch für ARM64 Systeme wie einen RaspberryPi4/RaspberryPi5, etc.gibt, kann man mit diesen Images auch ein virtuelles ARM-basiertes RaspberryMatic betreiben. Da eine solch ARM-basiertes Proxmox VE System jedoch nicht einfach so out-of-the-box wie ein x86-basiertes Proxmox installiert werden kann wurde im Rahmen der Entwicklung rund um die generic-aarch64 Images auch eine Kurzanleitung für die Grundinstallation eines solchen ARM-basierten ProxmoxVE Systems ausgearbeitet. Interessierte Nutzer können mit dieser Anleitung (siehe https://github.com/jens-maus/RaspberryM … stallation) in einfacher und schneller Art&Weise ein solches ProxmoxVE System auf einem RaspberryPi4 oder Pi5 oder ähnlich potenten ARM64 System aufsetzen um darunter dann verschiedenste virtuelle ARM-basierte Systeme wie auch RaspberryMatic zu betreiben.

Die komplette Änderungshistorie kann wie immer hier eingesehen werden (wurde mit DeepL automatisiert übersetzt):

:construction: Änderungen:

CCU/HomeMatic-System Änderungen:

  • Aktualisierung von OCCU-Version auf 3.73.9-2, die die folgenden Änderungen enthält:
    • Aktualisierung der ReGaHss-Logik-Engine auf Version R1.00.0388.0236 (16. Januar 2024):
      • Problem in StrValueByIndex() behoben, bei dem die Funktion bei Angabe eines Index < 0 unterschiedliche Ergebnisse zurückgab. Jetzt wird ein leerer String zurückgegeben und eine entsprechende Warnung wird im Log ausgegeben (#2597).
      • ChannelType() wurde korrigiert, um die Übergabe von ictXXX-Werten sowie von einfachen Integer-Zahlen zu ermöglichen und um korrekt true/false zurückzugeben (#2605).
      • Behebung eines Absturzes, der auftrat, wenn Name() auf OT_DEVICES-Objekten aufgerufen wurde, um dieses enum-basierte Objekt umzubenennen (#2601).
      • Behebung von Fließkomma-Ausnahmeproblemen mit der Funktion Random(), die auftraten, wenn min > max im Random()-Aufruf und max um eins kleiner als min ist. Außerdem gab Random() seltsame Ergebnisse zurück, wenn der Min-Wert größer als Max war (#2598).
  • Hinzufügen einer vollwertigen Hardware-Unterstützung für den neuen RaspberryPi5, für den jetzt ein eigenes Image zusammen mit den anderen RaspberryPi-basierten Plattformen verteilt wird (#2506).
  • Hinzufügen der neuen generic-aarch64 Plattform und Installieren von Images, die primär für den Betrieb von RaspberryMatic als virtuelle Appliance unter einer ARM-basierten Virtualisierungsplattform wie Proxmox VE für ARM verwendet werden können. Das bedeutet, dass eine RaspberryMatic-basierte virtuelle Appliance nun z.B. in einer Proxmox VE-Umgebung installiert werden kann, die auf ARM-basierten Systemen wie einem RaspberryPi4, RaspberryPi5 und ähnlich leistungsstarker ARM-basierter Hardware läuft. Um die Installation solcher ARM-basierten Virtualisierungsumgebungen zu vereinfachen, wurde das Hilfsskript install-proxmox.sh aktualisiert und eine spezielle Proxmox VE-Installationsdokumentation hinzugefügt (#2627).

WebUI Änderungen:

  • 0183-WebUI-ImprovedFirmwareupdateDialog WebUI-Patch hinzugefügt, um einen leicht verbesserten Geräte-Firmware-Update-Dialog mit ausgeblendeter Seriennummernanzeige anzuzeigen (#2532, @MichaelN0815, @Baxxy13).
  • Integration von Korrekturen in 0137-WebUI-Add-NoInterfaceWarning WebUI-Patch für den Fall, dass keine Schnittstelle vorhanden ist, aber ein Gerät im Begriff ist, den Firmware-Prüfmechanismus zu durchlaufen.
  • 0184-WebUI-Fix-EM8LockedChannelBehaviour WebUI-Patch hinzugefügt, der das Verhalten gesperrter Kanäle für HM-MOD-EM8 korrigiert (#2599, @Baxxy13, @jp112sdl).
  • 0130-WebUI-Fix-ChannelSysVarPrefix WebUI-Patch überarbeitet, um ‘optische Signal’-Präfixe auch für HmIP-ASIR anzuzeigen (#2589, @Baxxy13).
  • Aktualisierung des CodeMirror JS Editor-Framework auf die neueste Version 5.65.16.
  • Die Verwendung von Port 8443 für https-Geräteprüfungs-URLs entfernt, um lokale Probleme mit blockierten Nicht-Standard-Ports und Ähnlichem zu minimieren.

Betriebsystem Änderungen:

  • Korrektur der Fehlerausgabe in S02InitRTC bei Verwendung von HA-Addon und RPI-RF-MOD GPIO.
  • Leeres /dev_host oci Overlay-Verzeichnis hinzugefügt und install-docker.sh modifiziert, um den Docker-Container im Nur-Lese-Modus zu erstellen (#2629).
  • Behebung des Problems, dass das S49chrony-Init-Skript nicht starten konnte, wenn ein NTP-Server bereits zum Pool der NTP-Server hinzugefügt wurde. Jetzt wird ein geeigneter Status-Code-Check hinzugefügt und eine Warnung ausgegeben, wenn ein bestimmter NTP-Server nicht zum Server-Pool hinzugefügt werden konnte (vgl. viewtopic.php?f=65&t=80917).
  • buildroot auf die neueste Version 2023.11.1 aktualisiert
  • Buildroot-Upstream-Patch hinzugefügt, um die rpi wifi/bluetooth-Firmware auf die neueste Version zu bringen und auch die Links korrekt zu setzen (#2566).
  • ntpdate behoben, das bei der Verwendung von echo mit einem Zeilenumbruch fehlschlug.
  • Buildroot-Upstream-Patch integriert, um linux-firmware auf 20231030 zu aktualisieren.
  • Änderung des docker healthcheck für die oci-Plattform, so dass statt monit für den Gesundheitsstatus ein einfacher startpFinished-Status-Check sowie ein einfacher curl-Check verwendet wird (#2602).
  • Erhöhen des Startzeitlimits der oci/docker-Plattform einschließlich der HomeAssistant-Addon-Konfiguration auf 240s (4 Minuten) (#2604).
  • Überarbeitung von install-proxmox.sh, um die Installation einer virtuellen Appliance auf einer ARM-basierten Proxmox-Installation zu ermöglichen, einschließlich der Auswahl der Zielplattengröße.
  • Aktualisierung des Upstream-Kernels auf 6.1.74.
  • Java auf 11.70.15-ca-jre11.0.22 aktualisiert.
  • qemu-guest-agent auf 8.2.0 aktualisiert.
  • xe-guest-utilities auf die neueste Version 8.4.0 aktualisiert.
  • Aktualisierung der rpi4/rpi5 rpi-eeprom-Versionen auf die neuesten Versionen.
  • Aktualisierung von rpi-Kernel und -Firmware auf die neuesten stabilen Versionen (stable_20240124).
  • Aktualisierung von Tailscale auf die neueste Version 1.58.2
  • Linux-Kernel 6.4+ Korrektur für die Kompilierung des Kernelmoduls eq3_char_loop hinzugefügt.
  • Eine /dev/null-Umleitung hinzugefügt, um alle kill-bezogenen Fehlerausgaben auszulassen, wenn versucht wird, psplash zu töten.
  • foreground irqbalance, um sicherzustellen, dass möglicherweise keine Debug-Informationen an syslog ausgegeben werden.
  • ca-certificates local patch korrigiert, indem der gesamte Pfad /etc/ssl/certs entfernt wird.
  • Die globale lighttpd-Konfiguration wurde korrigiert, um 65535 für server.max-request-field-size zu verwenden.
  • RaspberryPi Zero 2 W Erkennung repariert.
  • CONFIG_SERIAL_PRESENT zur uboot.config von ODROID-Karten hinzugefügt, damit uboot wieder korrekt läuft (#2546).
  • Patch für das Paket wiringpi-rpi hinzugefügt, um die Überprüfung der “Hardware”-Zeile in /proc/cpuinfo zu überspringen, die in den letzten 6.1-Kernelversionen nicht mehr vorhanden ist.
  • Fixierung des tailscaled Starts, indem PATH nur auf /usr/sbin festgelegt wurde (#2541).

: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!