Skip to content

Latest commit

 

History

1,261 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Current Release Installs

Node-RED als Addon fĂŒr die Homematic CCU3 und OpenCCU

Click here for 🇬🇧đŸ‡ș🇾 english readme

🚀 Schnellstart       📚 Dokumentation       📩 Download       🚑 Support       👼 Lizenzen


⚠ RedMatic 9: RedMatic wurde radikal verschlankt und modernisiert (Node.js 24, Node-RED 5). Ab Version 9 ist nur noch node-red-contrib-ccu vorinstalliert — alle weiteren Nodes (z. B. Dashboard, HomeKit, Matter) werden bei Bedarf ĂŒber den Node-RED Paletten-Manager installiert. Der RedMatic-Paketmanager und die RedMatic-WebApp sind deprecated und entfallen ersatzlos. Bekannte und akzeptierte EinschrĂ€nkung: npm-Pakete bzw. Nodes mit binĂ€ren (nativen) AbhĂ€ngigkeiten können auf der CCU nicht installiert werden — auf der CCU gibt es keine Compiler-Toolchain, und vorkompilierte Binaries werden nicht mehr mitgeliefert.

RedMatic 9 ist veröffentlicht - siehe Releases. Voraussetzung: CCU3 mit Firmware ab 3.61.5 oder aktuelles OpenCCU. Vor einem Update von RedMatic 7 unbedingt ein CCU-Backup anlegen - das Backup liegt in der Verantwortung des Anwenders, ein Weg zurĂŒck fĂŒhrt nur darĂŒber. Bitte die Release-Hinweise lesen.

RedMatic verpackt Node-RED als CCU Addon, ein Softwarepaket, das auf einer Homematic CCU3 oder OpenCCU (ehemals RaspberryMatic) als Zusatzsoftware komfortabel ĂŒber das WebUI installiert werden kann.

Die Grundlage bildet Node-RED mit den CCU Nodes fĂŒr Node-RED. Hiermit ist es auf einfache und visuelle Weise möglich Regeln, Automationen, Scripte und Anbindungen von externen Services und Systemen fĂŒr ein Homematic System zu realisieren - und das weitgehend auch ohne Programmierkenntnisse. Im Wiki gibt es weitere Informationen zu Node-RED und einige Anwendungsbeispiele (sogenannte Flows).

Die Einrichtung und der Betrieb von RedMatic ist sehr benutzerfreundlich, es bedarf keiner Linux-Kenntnisse und es mĂŒssen keine Konfigurationsdateien bearbeitet werden.

RedMatic als BrĂŒcke von der CCU zu MQTT, Home Assistant, Alexa, Apple Home, Google Home, ...

RedMatic ist ein guter Weg, eine Homematic CCU an andere Systeme anzubinden - direkt auf der CCU, ohne zusÀtzlichen Server:

  • MQTT - der ccu-mqtt Node publiziert alle Datenpunkte mit frei konfigurierbarer Topic- und Payload-Struktur und nimmt Befehle entgegen (Beispiel-Flow).
  • Home Assistant - der ccu-homeassistant Node ergĂ€nzt ccu-mqtt um MQTT Auto-Discovery: ausgewĂ€hlte GerĂ€te erscheinen automatisch als EntitĂ€ten in Home Assistant.
  • Matter - RedMatic-Matter stellt Homematic-GerĂ€te als Matter-Bridge bereit, nutzbar u.a. mit Apple Home, Amazon Alexa und Google Home.
  • HomeKit - RedMatic-HomeKit stellt Homematic-GerĂ€te als HomeKit-Zubehör bereit. (Mögliche ErgĂ€nzung zu Matter fĂŒr Apple Nutzer um den fehlenden Matter-Support fĂŒr bestimmte GerĂ€te wie z.B. Garagentore oder BewĂ€sserungssysteme zu umschiffen)

Alle Anbindungen laufen ĂŒber eine einzige ccu-connection, die auf der CCU ausgewĂ€hlte GerĂ€te per HĂ€kchen freigibt (opt-in). Matter und HomeKit werden ĂŒber den Node-RED Paletten-Manager installiert, MQTT und Home Assistant sind in den vorinstallierten CCU Nodes enthalten.

Warum auf der CCU und nicht mit einem externen Bridge-Projekt? Es gibt gute Alternativen wie CCU-Jack, openccu-loom oder matterbridge-homematic. Die Schnittstellen-Prozesse der CCU (rfd, hs485d, HmIPServer) reagieren jedoch empfindlich auf viele gleichzeitige RPC-Event-Abonnenten und auf Netzwerkstörungen. RedMatic bĂŒndelt alle Anbindungen in einem einzigen Abonnenten pro Schnittstelle, spricht mit rfd und hs485d das effizientere BIN-RPC statt XML-RPC und hĂ€lt den gesamten RPC-Verkehr auf der Loopback-Schnittstelle der CCU - Netzwerkaussetzer erreichen die CCU-Prozesse so gar nicht erst.

Was auf der anderen Seite der MQTT-BrĂŒcke sitzen kann - zwei Projekte des RedMatic-Autors, die die Discovery-Daten von RedMatic direkt verstehen:

  • feezal - Dashboards und Apps fĂŒr MQTT visuell im Browser bauen (WYSIWYG-Editor, Web Components, PWA, Export als statische Seite oder Android/iOS-App). Erkennt die von RedMatic per Auto-Discovery gemeldeten GerĂ€te und verdrahtet sie mit einem Klick - ein moderner Ersatz fĂŒr die entfallene RedMatic-WebApp.
  • she - Smart Home Engine: Automationen als einfache JavaScript-Scripte mit MQTT, integriertem Matter-Controller, Scheduler und Web-IDE mit KI-Assistent. FĂŒr alle, die Logik lieber in Code als in Flows schreiben oder eine zentrale Engine abseits der ĂŒblichen VerdĂ€chtigen (z.B. Home Assistant oder ioBroker) suchen 😉

Automatisieren mit Node-RED

Eine große und aktive Community rund um Node-RED hat zudem eine Bibliothek von tausenden zusĂ€tzlichen Nodes geschaffen die auf einfache Weise installiert werden können und es ermöglichen spezielle Automatismen zu implementieren und diverse weitere Services und Systeme komfortabel anzubinden - wie z.B. KNX, Loxone, Somfy Tahoma, Velux KLF200, Home Connect HaushaltsgerĂ€te, verschiedene Smart TVs und AV-Receiver, Sonos, Netatmo, Hue, Amazon Alexa, Google Home, diverse Datenbanken wie z.B. InfluxDB oder MySQL, Webservices zur Abfrage von beispielsweise Wetterdaten und vieles mehr.

RedMatic kann damit - insbesondere auch fĂŒr diejenigen die neben der CCU keinen weiteren Server betreiben möchten - eine Alternative zu einem "ausgewachsenen" Smart Home System wie z.B. Home Assistant oder ioBroker darstellen. Auch eine Koexistenz mit vorhandener anderer Smart Home Software kann sinnvoll sein. Nicht zuletzt kann RedMatic auch als stabile und mit wesentlich mehr Möglichkeiten aufwartende Alternative oder ErgĂ€nzung zu den WebUI-Programmen und Scripten der CCU Logikschicht "Rega" dienen.

Voraussetzungen

RedMatic ist geeignet fĂŒr die CCU3 (und piVCCU3) mit Firmware ab 3.61.5 sowie fĂŒr aktuelles OpenCCU auf den Architekturen armv7l (z.B. Raspberry Pi 2), aarch64 (z.B. Raspberry Pi 3/4/5) und x86_64 (z.B. ova, intelnuc, Container).

Auf der CCU1, CCU2 und auf armv6l-Systemen (Raspberry Pi 1/Zero) kann RedMatic nicht verwendet werden.

FĂŒr Matter (RedMatic-Matter) muss IPv6 im LAN aktiv sein (eine Link-Local-Adresse genĂŒgt; RedMatic legt sie auf der CCU3 beim Start an, falls sie fehlt), und der Matter-Controller (Apple TV/HomePod, Echo, Nest Hub, Home Assistant) muss sich im selben Netzsegment wie die CCU befinden.

Schnellstart

Unter Releases steht die Datei redmatic-<version>.tar.gz zum Download zur VerfĂŒgung. Nach der Installation des Addons ĂŒber das Homematic WebUI (Systemsteuerung -> Zusatzsoftware) und dem darauf folgenden Reboot der CCU ist Node-RED unter http://<ccu-addresse>/addons/red erreichbar. Bei der Installation ist Geduld erforderlich, es kann einige Minuten dauern.

Support, Mitarbeit

FĂŒr Feedback jeglicher Art, Fragen, VorschlĂ€ge und WĂŒnsche bitte das Diskussionsforum nutzen. FĂŒr Bug Reports bitte den Issue Tracker nutzen.

Beteiligung in jeder Form ist willkommen und gewĂŒnscht, insbesondere sind alle Nutzer aufgefordert die Liste erfolgreich getesteter Nodes zu ergĂ€nzen, Beispiel-Flows zu veröffentlichen und an der Verbesserung und Erweiterung der Dokumentation mitzuarbeiten.

Es werden keine Spenden angenommen, ich wĂŒrde mich jedoch darĂŒber freuen wenn der erfolgreiche Einsatz dieser Software mit einem Github Sternchen ⭐ honoriert wird (Github Account ist schnell angelegt! ;-)

Dokumentation

openccu-lite

openccu-lite ist eine Homematic-CCU-Firmware ohne ReGaHSS. RedMatic lÀuft dort mit demselben Paket, denselben Einstellungen und denselben Flows wie auf einer CCU3, RaspberryMatic oder OpenCCU. Um welche Art Zentrale es sich handelt, wird zur Laufzeit erkannt (GET /api/meta/v1/version); konfiguriert werden muss nichts, und ein Backup lÀsst sich zwischen beiden hin- und herschieben.

Was funktioniert

  • Node-RED selbst mit Palette-Manager, Projekten/git, Einstellungsseite samt Session-PrĂŒfung, Backup, Log, Log-Upload und dem Ein-Klick-Selbstupdate.
  • Alles, was die node-red-contrib-ccu-Nodes ĂŒber die Schnittstellenprozesse (rfd, hs485d, hmipserver) machen: Werte, Kommandos, RPC-Events. GerĂ€te-, Kanal-, Raum- und Gewerkenamen kommen statt aus der ReGaHSS aus der Metadaten-API der Zentrale und folgen einer Umbenennung binnen einer Sekunde. msg.channelName, msg.rooms, msg.functions und die Raum-/Gewerke-Filter behalten exakt die Form, die sie auf einer CCU haben.
  • FĂŒr die Namen wird ein Token gebraucht: auf der Zentrale wird der nur lesende Token aus /usr/local/etc/occulite/local-token automatisch verwendet (RedMatic lĂ€uft dort als root), es ist also nichts einzustellen. LĂ€uft Node-RED woanders, gehört ein auf der Benutzer-Seite der Zentrale erzeugter Token in das Feld openccu-lite token des Connection-Nodes.
  • Der Admin-Login des Editors: die Authentifizierungs-Einstellung Benutzer der Zentrale nutzt auf einer CCU die ReGaHSS-Benutzer und auf openccu-lite die Benutzer der Zentrale (POST /api/auth/v1/login).

WofĂŒr es keinen Ersatz gibt (aus der Portierungsanleitung von openccu-lite):

  • Systemvariablen und Programme: es gibt kein ReGa-DOM. Die Nodes ccu-sysvar, ccu-program und ccu-poll bleiben in der Palette und in den Flows — sie werden akzeptiert, sie legen die Verbindung nie lahm, und jede Nachricht wird stattdessen mit einer klaren Fehlermeldung beantwortet.
  • exec() von HM-Script — dom.GetObject, system.GetSessionVarStr und alles andere, was der ccu-script-Node schickt: nicht vorhanden, gleiche Behandlung wie oben.
  • ReGa-IDs (dom.GetObject(1234)): gibt es nicht. Die Metadaten-API identifiziert Objekte ĂŒber <Schnittstelle>.<Adresse>; diese Nodes arbeiten seit jeher mit der Adresse, fĂŒr Flows Ă€ndert sich also nichts.
  • Servicemeldungen / Alarme (Systemvariablen 40 und 41): nur Zustand auf Schnittstellenebene.
  • Die JSON-RPC-API der CCU-WebUI (/api/homematic.cgi, Session.login, Device.listAll): nicht vorhanden.

Auf den systemd-Produkten von openccu-lite lĂ€uft das rc.d-Skript in einer generierten Unit addon-redmatic.service (Type=oneshot, RemainAfterExit=yes, KillMode=control-group): start kehrt zurĂŒck, nachdem Node-RED in den Hintergrund gestartet wurde, stop beendet es. Ein /var/log/messages gibt es dort nicht — Node-RED und das Addon loggen ins Journal unter den Tags node-red und redmatic (journalctl -t node-red -t redmatic), das Log der Einstellungsseite liest sie von dort. RedMatic schreibt keine PID-Datei (es findet seinen Prozess ĂŒber den Namen), hĂ€ngt also nicht an einem beschreibbaren /var/run. Geschrieben wird: das eigene Verzeichnis /usr/local/addons/redmatic (etc, var, tmp, home, lib, www), /tmp/redmatic-update (Zustand des Selbstupdates), /usr/local/tmp (Backup-Archiv und heruntergeladene Pakete), /etc/config/rdmtc.uuid (die Telemetrie-ID, wird ĂŒbersprungen wenn das Verzeichnis nicht beschreibbar ist) und bei der Installation /usr/local/etc/config/rc.d, /usr/local/etc/config/lighttpd und /usr/local/etc/config/addons/www.

Lizenzen

  • RedMatic © 2018-2026 Sebastian Raff and RedMatic Contributors, licensed under Apache License 2.0
  • RedMatic Documentation © 2018-2026 Sebastian Raff and RedMatic Contributors, licensed under CC BY-SA License 4.0
  • Third-party components are listed in the SBOM files (CycloneDX) attached to each release; the full license texts ship inside the addon in each package's node_modules directory

DIE SOFTWARE WIRD OHNE JEDE AUSDRÜCKLICHE ODER IMPLIZIERTE GARANTIE BEREITGESTELLT, EINSCHLIEáșžLICH DER GARANTIE ZUR BENUTZUNG FÜR DEN VORGESEHENEN ODER EINEM BESTIMMTEN ZWECK SOWIE JEGLICHER RECHTSVERLETZUNG, JEDOCH NICHT DARAUF BESCHRÄNKT. IN KEINEM FALL SIND DIE AUTOREN ODER COPYRIGHTINHABER FÜR JEGLICHEN SCHADEN ODER SONSTIGE ANSPRÜCHE HAFTBAR ZU MACHEN, OB INFOLGE DER ERFÜLLUNG EINES VERTRAGES, EINES DELIKTES ODER ANDERS IM ZUSAMMENHANG MIT DER SOFTWARE ODER SONSTIGER VERWENDUNG DER SOFTWARE ENTSTANDEN.

About

Node-RED packaged as Addon for the Homematic CCU3 and OpenCCU đŸ€č‍♂

Topics

Resources

Stars

529 stars

Watchers

33 watching

Forks

Releases

Used by

Contributors

Languages