- Notifications
You must be signed in to change notification settings - Fork12
CCU-Jack bietet einen einfachen und sicheren REST- und MQTT-basierten Zugriff auf die Datenpunkte der Zentrale (CCU) des Hausautomations-Systems HomeMatic. Zudem können einfach Fremdgeräte an die CCU angebunden werden.
License
mdzio/ccu-jack
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
CCU-Jack bietet einen einfachen und sicherenREST- undMQTT-basierten Zugriff auf die Datenpunkte der Zentrale (CCU) desHausautomations-Systems HomeMatic der FirmaeQ-3. Er implementiert dafür dasVery Easy Automation Protocol, welches von vielen Programmiersprachen leicht verwendet werden kann, und dasMQTT-Protokoll, welches im Internet-of-Things weit verbreitet ist. Zudem können mit den genannten Protokollen auch Fremdgeräte an die CCU angebungen werden.
Folgende Ziele verfolgt der CCU-Jack:
Der CCU-Jack soll anderen Applikationen einen einfachen Zugriff auf die Datenpunkte der CCU ermöglichen. Beispielsweise werden für den Zugriff auf eine CCU mit HM-, HM-Wired- und HM-IP-Geräten insgesamt 9 Netzwerkverbindung, teilweise als Rückkanal und mit unterschiedlichen Protokollen, benötigt. Zudem sind die Netzwerkschnittstellen der CCU unverschlüsselt, wodurch sie nicht in der Firewall der CCU freigeschaltet werden sollten. Der CCU-Jack standardisiert den Zugriff auf alle Geräte und Systemvariablen mit einem einheitlichen Protokoll und über eine verschlüsselte Verbindung.
Zudem sollen möglichst einfach Fremdgeräte (z.B. WLAN-Steckdosen) an die CCU angebunden und mit dieser automatisiert werden. Angebundenen Fremdgeräte werden auf der CCU wie originale HM-Geräte dargestellt. Sie können über die Web-UI der CCU genauso bedient und beobachtet werden. Zudem können sie ohne Einschränkungen in CCU-Programmen verwendet werden.
Mehrere CCUs und andere Automatisierungsgeräte mit MQTT-Server können über den CCU-Jack untereinander vernetzt werden und Wertänderungen austauschen. Dafür stellt der CCU-Jack eine MQTT-Bridge zur Verfügung. CCUs können auch mit einem MQTT-Server in der Cloud verbunden werden.
Funktional ist der CCU-Jack eine Alternative zumXML-API Add-On. Das XML-API Add-On wird seit längerer Zeit nicht mehr weiter entwickelt und enthält nicht behobene Fehler und Sicherheitslücken. Zudem kann der CCU-Jack die Kombination der zwei Add-Onshm2mqtt undMosquitto ersetzen. Das Add-On hm2mqtt wird ebenfalls seit längerer Zeit nicht mehr weiter entwickelt.
Bezügliche der Anbindung von Fremdgeräten ersetzt der CCU-Jack viele komplizierte und aufwändige Lösungen und bietet gleichzeitig mehr Funktionaliät.
Alle Informationen für Anwender (z.B. Installation, Konfiguration) sind imAnwenderhandbuch zu finden. Dies sollte vor der Installation gelesen werden!
Die offiziell herausgegeben Versionen vom CCU-Jack sind rechts unterReleases zu finden.
Vorabversionen, die dem letzten Entwicklungsstand entsprechen, sind unterActions zu finden. Dort einenWorkflow auswählen, und dann ist der Download für alle Plattformen unterArtifacts zu finden. Diese Versionen enthalten schon früh neue Funktionalitäten oder Fehlerbehebungen. Allerdings sind sie nicht getestet!
Im Zusammenhang mit dem CCU-Jack sind weitere Projekt von anderen entstanden:
- CCU-Jack to HomeAssistant (Anbindung der HomeMatic CCU an HomeAssistant über den CCU-Jack)
- node-red-contrib-ccu-jack (Anbindung der HomeMatic CCU an Node-RED über den CCU-Jack)
- ngx-ccu-jack-client (Integration des CCU-Jacks in Angular-Anwendung)
Der CCU-Jack ist in derProgrammiersprache Go geschrieben. Alle Distributionen des CCU-Jacks können sehr einfach und schnell auf allen möglichen Plattformen (u.a. Windows, Linux, MacOS) gebaut werden. Dafür in einem beliebigen Verzeichnis das Git-Repository klonen, oder die Quellen hinein kopieren. Danach in diesem Verzeichnis eine Kommandozeile öffnen, und folgende Befehle eingeben:
cd buildgo run .
In dem Hauptverzeichnis werden dann alle Distributionen gebaut.
Für die Entwicklung bietet sich die EntwicklungsumgebugVisual Studio Code an. Einfach das Hauptverzeichnis öffnen. Die nötigen Extensions werden automatisch zur Installation angeboten.
Mitwirkende sind natürlich gerne gesehen. Sei es für die Dokumentation, das Testen, den Support imHomeMatic-Forum, die Fehlerbehebung oder die Implementierung neuer Funktionalität. Für Code-Beiträge ist die Lizenz (GPL v3) zu beachten. Code-Beiträge sollten immer auf einem neuen Branch separat vommaster
-Branch entwickelt werden.
- Mathias Dz.
- martgras (Raspberry Pi 4, Zertifikatsbehandlung)
- twendt (BIN-RPC für CUxD)
- Theta Gamma (Docker-Image)
Lizenz und Haftungsausschluss sind in der DateiLICENSE.txt zu finden.
About
CCU-Jack bietet einen einfachen und sicheren REST- und MQTT-basierten Zugriff auf die Datenpunkte der Zentrale (CCU) des Hausautomations-Systems HomeMatic. Zudem können einfach Fremdgeräte an die CCU angebunden werden.