RaspberryMatic 3.53.30.20200919 veröffentlicht

20.09.2020
10.195

Nach einer etwas längeren Entwicklungsphase wurde gestern die Version 3.53.30 von RaspberryMatic für alle unterstützten Plattformen herausgegeben. Dabei handelt es sich um ein größeres Major-Update, das neben zahlreichen Fehlerbehebungen auch sämtliche Änderungen der aktuellen CCU3 Firmware beinhaltet.

Zudem wurde eine neue, umfangreiche Hilfe zu RaspberryMatic geschrieben, die fortan unter folgender Adresse aufgerufen werden kann:

Weiterführende Seite:
RaspberryMatic - Dokumentation / Wiki

Changelog

CCU/HomeMatic-System Änderungen:

Major Update von OCCU auf Version 3.53.30-1 welches volle Kompatibilität und folgende Änderungen zur CCU3 3.53.30 Firmware mit sich bringt:

  • Geräteintegration “ HmIP-WRC2 ” (Homematic IP Wandtaster – flach)
  • Geräteintegration “ HmIPW-WRC2 ” (Homematic IP Wired Wandtaster – 2-fach)
  • Geräteintegration “ HmIPW-BRC2 ” (Homematic IP Wired Wandtaster für Markenschalter – 2-fach)
  • Geräteintegration “ HmIP-DRSI1 ” (Homematic IP Schaltaktor für Hutschienenmontage)
  • Generelle Verbessungen beim homematicIP LAN Routing:

    • Der Betrieb von bis zu zwei Access Points ( HmIP-HAP und/oder HmIPW-DRAP ) an einer CCU ist nun möglich. Dadurch lassen sich auseinanderliegende Verteilungen per HmIPWDRAP oder entfernte Funk Komponenten per HmIP-HAP einfach über das Hausnetzwerk in die CCU einbinden.
    • Homematic IP Access Point als weiteres Funk-Gateway für die CCU nutzbar: Es ist nun möglich, Homematic IP Access Points ( HmIP-HAP ) an der CCU als „LAN-zu-FunkGateways“ einzusetzen. Ein entsprechendes Update für HmIP-HAP s ist in dieser CCU-Firmware enthalten und kann über “Systemsteuerung > Access Points mit inkompatibler Firmware” eingespielt werden.
    • Update für Homematic IP Wired Access Points ( HmIPW-DRAP ): Durch Verbesserungen des LAN-Routings muss bei vorhandenen HmIPW-DRAP s mit Firmware (< 2.1) zwingend eine Firmware-Aktualisierung vorgenommen werden. Dies geschieht durch einen Wizard nach dem Einspielen dieser CCU-Version und Neustart der Zentrale.
  • Die Geräte HmIPW-DRAP und HmIP-HAP werden nun unter "Einstellungen > Geräte" aufgeführt und unter Status und Bedienung angezeigt.
  • Mit der Fw. >= 1.6 ist es beim HmIPW-DRBL4 und HmIP-DRBLI4 möglich, die Ausgänge zu tauschen. Damit können Fehlverdrahtungen bei der Installation (hoch/runter) korrigiert werden.
  • Die virtuelle Fernbedienung für HmIP wurde in HmIP-RCV-1 umbenannt. Achtung! Diese Umbenennung kann unter Umständen dazu führen, dass selbst erstellte Skripte, welche auf diese virtuellen Fernbedienungskanäle zugreifen, nicht mehr korrekt ausgeführt werden und angepasst werden müssen.
  • Beschreibung der Servicemeldungen der HmIP-FALx verbessert.
  • Mit der Firmware Vers. >= 1.6 ist es beim HmIPW-DRBL4 und HmIP-DRBLI4 nun möglich, den Modus (Jalousieaktor/Rollladenaktor) der entsprechenden Kanäle zu ändern, ohne die dazugehörigen Verknüpfungen vorher löschen zu müssen.
  • Filterung von Parametern in der LegacyAPI ist auch für Events verfügbar.
  • Das MultiCast-Routing kann bei entsprechenden Geräten (z. B. HmIP-PSM ) abgeschaltet werden.
  • Das Auto-Login ist nach der Erstinbetriebnahme der CCU deaktiviert.
  • Unter „Systemsteuerung“ gibt es einen neuen Button, der es ermöglicht, Access Points mit inkompatibler Firmware (< 2.1.0) zu suchen und zu aktualisieren.
  • Funk-Aktoren sind nach einem CCU Neustart jetzt schneller über Routing erreichbar.
  • Hinweis, dass Geräte in Heizungsgruppen nur in der Gruppe geändert werden sollten.
  • Die Alarmdauer der HmIP-ASIR wurde auf 600s begrenzt.
  • Direktverknüpfungen der virtuellen Kanäle (HmIP-RCV-50) wurden nicht angezeigt.
  • Innerhalb von Programmen steht nun die Umschaltung Auto/Manu von Wochenprogrammen zur Verfügung.
  • Verknüpfungsmöglichkeiten für die HmIP-ASIR /-O/B1/-2 für Sensoren vom Typ CONDITION_SWITCH_TRANSMITTER (z. B. HmIP-SLO ) hinzugefügt.
  • Wurden sehr viele Räume/Gewerke angelegt, konnte der OK-Button des entsprechenden Filter-Dialogs nicht mehr erreicht werden. Diese Dialoge können nun mit der Maus verschoben werden.
  • Die Sortierreihenfolge im Systemprotokoll wechselte bei jeder Aktualisierung der Daten.
  • In der XMLRPC Schnittstelle der LegacyAPI kam es zu einem Parserfehler, wenn innerhalb eines Arrays von Structs, leere Strings mit String-Tags vorkamen.
  • Die virtuelle Fernbedienung stand nach dem Einspielen eines CCU2 Backups innerhalb eines Programms nicht mehr zur Verfügung.
  • Bestimmte Kanäle einiger Geräte wurden fälschlicherweise als „Fensterkontakt“ bezeichnet. Die Bezeichnung wurde in „Kontakt“ geändert.
  • Missverständlicher Text zum Konfigurationsparameter „Zyklische Statusmeldung“ angepasst.
  • Unter bestimmten Umständen wurde der Statuswert LOWBAT mit einem falschen Datentyp für Kanal 0 von Gruppengeräten geliefert.
  • Der minimale Wert des Konfigurationsparameters „Filterzeitraum“ einiger Sensoren wurde auf 500ms begrenzt. Kleinere Werte konnten dazu führen, dass das Gerät nicht mehr ordnungsgemäß funktioniert.
  • Der maximale Wert des Konfigurationsparameters „Entkalkungsfahrt“ für HmIP(W)-FALxCx wurde auf 24 Tage begrenzt.
  • Unter seltenen Umständen auftretende, falsche Servicemeldung für HmIP(W)-FALx-Cx korrigiert.

Zusätzlich zu den oben genannten in der CCU3 3.53.30 integrierten Änderungen wurden in RaspberryMatic folgenden Anpassungen an der OCCU 3.53.30-1 Version vorgenommen:

  • Integration einer neuen/aktualisierten ReGaHss Logikengine “R1.00.0388.0223 (Aug 27 2020)” Version mit folgenden Änderungen:

    • Ein Problem mit “system.Exec()” beseitigt bei dem es vorkommen konnte das Kommandos die auf “stdin” Eingaben warten zu einer dauerhaften Blockierung von ReGaHss führen konnten. Zusätzlich akzeptiert nun “system.Exec()” einen vierten Parameter um “stdin” Eingabe zu übergeben die dann an das auszuführende Kommando übergeben werden wenn keine Hintergundabarbeitung des Kommandos durchgeführt wird (#847).
    • Es wurde ein zusätzlicher, optionaler Parameter zu “dom.GetObject()” hinzugefügt der dafür genutzt werden kann den gewünschten Objekttyp (z.B. “OT_DEVICE”, “OT_CHANNEL”, etc.) des gesuchten Objektes anzugeben, sodass dann nur das Objekt zurückgegeben wird auf das auch der gewählte Objekttyp passt. Diese Änderung erlaubt nun bei der Existenz von zwei Objekten mit dem selben Namen anhand des Objekttyps eine Auswahl treffen zu können welches vorher so nicht möglich war (#876).
    • Problem mit verschachtelten “break” und “continue” Statements beiseitigt die nur in der erste Ebene korrekt funktionierten (#878).
    • Problem mit der Nutzung der “.ToFloat()” Methode beseitigt die nur auf einen “string” typen anzuwenden war. Nun kann “.ToFloat()” auch auf beliebige “vtXXX” Objekttypen angewendet werden. Dies sollte erlauben ToFloat auf beliebige variablentypen anzuwenden ohne vorher eine entsprechende Vorprüfung durchzuführen (#883).
    • Beseitigung einiger Probleme mit internen string vergleichen die anhand bekannter RFCs des HTTP protokolles case-insensitive durchgeführt werden sollten.
    • Anpassungen an der RemoteAPI Schnittstelle “tclrega.exe” vorgenommen, sodass auch UTF-8 kodierte Requests via “Content-Type: xxx; charset=utf8” vorgenommen werden können. ReGaHss wird daraufhin automatisch den Inhalt solcher Requests in ISO-8859-1 umwandeln. This erlaubt somit RemoteAPI abfrage auch UTF-8 kodiert durchzuführen in Umgebungen die keine ISO-8859-1 kodierung zulassen.
    • Problem beseitigt bei dem im HTTP Server beim Request-Header Parsen nicht nur der Headerbereich ausgewertet wurde und daher negative Effekte auf das Auswerten der Request Header hervorrufen konnte.
    • Beseitigen einiger Buffer-Overflow Probleme in den Zeichenketten Parsingroutinen die hauptsächlich in den XML remote API Ausgabefunktionen verwendet wurden und daher mitunter zu invaliden XML Ausgaben führen konnten (#870).
    • Die verzögerbaren “State()” Aufrufe können nun auch auf Objekten des Typs “OT_CHANNEL” und “OT_PROGRAM” angewendet werden. Dies erzeugte bisher nur Fehler bei der Ausführung solcher verzögerten State() Aufrufen.
  • Aktualisierung des NEOserver CCU-Addon Paketes auf Version 2.5.6
  • Vollwertigen Support für die HB-RF-USB-2 USB-Adapterplatine von @alexreinert integriert um ein RPI-RF-MOD oder HM-MOD-RPI-PCB Funkmodul via USB an ein RaspberryPi/Tinkerboard oder virtuelles OVA-basiertes RaspberryMatic zu betreiben. Herzlichen Dank gebührt hier natürlich Alexander Reinert für die Entwicklung dieser Adapterplatine und für die Unterstützung bei der Integration des Treibers der selbigen.
  • Problem bei der Funkmodulinitialisierung (S11InitRFHardware) beseitigt bei der es dazu kommen konnte das nicht alle RF relevanten informationen korrekt aus den Funkmodulen ausgelesen wurden und dies bei einer frischen RaspberryMatic Version dazu führen konnte das kein eineindeutigen Funkadressen für die Funkmodule verwendet wurden (#900).

WebUI Änderungen:

  • Aktualisierung des “0073-WebUI-AstroDelays” WebUI Patches, sodass in den Einstellungen zu der Möglichkeit einen zeitlichen Offset einzustellen der Text selbsterklärender ist. Danke hier an Ralf Penzler für die Vorschläge der Testpassagen.
  • Vereinfachung des “0076-WebUI-Fix-SuperCharScriptUse” WebUI Patches durch Nutzung von Zeichenkettenverbindungen um das Problem mit der Nutzung von “^” Zeichen in Nutzerskripten zu umgehen (#225).
  • Aktualisierung des “0075-WebUI-Fix-HTMLinUserFavorites” WebUI Patches damit keine “.Trim()” Anweisungen mehr verwendet werden da die aktuelle ReGaHss version mit “^^” Zeichenketten nun umgehen kann.
  • Reparatur des “0034-WebUI-Addon-Config” WebUI Patches damit dieser für alle unterstützen Platformen genutzt wird und nicht nur für die “arm-gnueabihf” basierten Platformen.
  • Hinzufügen eines neuen “0077-WebUI-NegateCondition” WebUI Patches der erlaubt Bedingungen in WebUI Programmen negieren zu können (#884, @jp112sdl).
  • Verbesserung des “0026-WebUI-Fix-CacheControl” WebUI Patches um auch das nicht mehr benötigte Hinzufügen von “AvoidBrowserCache” URL Parametern nicht mehr zu verwenden da alle Browser-Cache bezogenen Probleme mit diesem Patch beseitigt sein sollten.
  • Integrationen einer ersten version eines “0078-WebUI-Fix-SetDeviceProfile” WebUI Patches der es erlauben sollte nun “=” Zeichen in Geräteparameterdefinitionen (oft von CUxD genutzt) möglich zu machen. Vorher war die Nutzung dieses Parameters nicht möglich da die reguläre Expression zur Trennung der URL Parameter für Strings wie “CMD=A=B” fehlgeschlagen ist (#888).
  • Integration eines neuen WebUI Patches (0079-WebUI-Fix-SideIncNotePad) zur Reparatur eines fälschlicherweise entfernten NotePad Bildes in “SONST” Bedingungen in WebUI Programme (#908).
  • Hinzufügen eines Fixes für das NEOserver CCU-Addons damit dieses sich via “Zusatzsoftware” wieder komplett deinstallieren lässt ohne sich bei jedem Neustart neu installieren zu wollen (#894).
  • Aktualisierung des CodeMirror Javascript basierten Skripteditors auf Version 5.56.0.

Betriebsystem Änderungen:

  • Grundsätzliche Unterstützung für das ArgonONE RaspberryPi Gehäuses bzw. das Argon FAN HAT hinzugefügt das mit einem Daemon für die Lüfter- und Powerbuttonsteuerung integriert wurde (#863, Danke an @Bono1969 für die zur Verfügung gestellte Testhardware).
  • Bitte beachten: Einige Hardwareversionen des ArgonONE/FAN HAT scheinen Probleme mit der I2C Kommunikation aufzuweisen und werden daher mitunter beim Starten von RaspberryMatic nicht korrekt erkannt.
  • Hinzufügen der Möglichkeit für nutzereigene config.txt Anpassungen die Datei “/boot/extraconfig.txt” zu verwenden.
  • Unterstützung für die Nutzung des offiziellen Raspberry Pi PoE HAT für die rpi3 bzw. rpi4 Platformen hinzugefügt sodass das der diesem HAT mitgelieferte Lüfter automatisch gesteuert werden sollte (Danke an ESPe71 für die zur Verfügung gestellte Testhardware).
  • Nach einem unsauberen Shutdown des System wird jetzt automatisch nach der passenden WatchDog Warnung de “uncleanShutdown” Statusdatei automatisch gelöscht um weitere Alarmierungen zu verhindern.
  • Zurücknahme des entfernens der “hdmi_force_hotplug=1” config option in der rpi4 Platform um den HDMI Port wieder für manche RaspberryPi4 versionen wieder lauffähig zu bekommen.
  • Unterstützung für die aktuellen intel NUC10 Systeme hinzugefügt bei denen ist notwendig ist neuere intel e1000e Netzwerktreiber zu nutzen. Des Weiteren wurde das Linux-Firmware Paket auf die aktuelle 20200721 Version hochgehoben um die Hardwareunterstützung für diese Modelllinie zu verbessern.
  • Es wird nun bei allen unterstützen RaspberryPi Familien immer die “start.elf” und “fixup.dat” Datei genutzt um etwaige Abweichungen in der RaspberryPi Firmware zu kompensieren und die ggf. falsche Nutzung zu eliminieren. Dies sollte den Start von RaspberryMatic auf allen RaspberryPi platformen etwas stabiler/reproduzierbarer machen.
  • Um die Unterstützung möglicher Drittanbieterhardware zu verbessern wurden nun sämtliche devicetree overlay dateien aus dem bekannten rpi-firwmare paket hinzugefügt statt hiervon nur eine gewisse Auswahl zu unterstützen obwohl im /boot Dateisystem hierfür genug Platz existiert.
  • Aktualisierung des “generic_raw_uart” Paketes auf die aktuellste Version mit Unterstützung der HB-RF-USB-2 Platine. Die Unterstützung der HB-RF-ETH Adapterplatine wurde hier explizit noch nicht integriert da hier vom Autor (Alexander Reinert) noch gewisse Anpassungen vorgenommen werden die erst noch abgewartet werden müssen.
  • Aktualisierung der Buildroot/Linux Umgebung auf die aktuelle 2020.08 Version.
  • Aktualisierung der verwendeten Linux Kernelversion auf die aktuellste LTS 5.4.x version (5.4.63) für alle unterstützen Platformen.
  • Aktualisierung des RaspberryPi Linux Kernels samt passender RaspberryPi firmware auf die aktuelle 1.20200819 Version.
  • Aktualisierung der Java8 Version auf die aktuellste 8.0.265 LTS Java Azul Version.
  • Aktualisierung des “wireguard-linux-compat” Paketes auf die aktuelle 1.0.20200729 Version.

Relevante Downloads:
RaspberryMatic (GitHub)

Weiterführende Seite:
Diskussionen im HomeMatic-Forum

Kommentieren

- Code scannen, um zur Orginalseite zu gelangen -