Homematic Zentrale CCU1: Unterschied zwischen den Versionen
K (hat „CCU1“ nach „Homematic Zentrale CCU1“ verschoben und dabei eine Weiterleitung überschrieben) |
(Homematic-Software aus http://www.fhz-forum.de/viewtopic.php?f=26&t=4639) |
||
| Zeile 1: | Zeile 1: | ||
== Beschreibung == | == Beschreibung == | ||
== Scripte == | == Scripte == | ||
| − | == | + | ==Software== |
===Betriebssystem=== | ===Betriebssystem=== | ||
Das Betriebssystem der CCU1 ist ein embedded Linux. Darauf setzt die Firmware von der Homematic auf. Die aktuelle Firmware ist Version 1.503. | Das Betriebssystem der CCU1 ist ein embedded Linux. Darauf setzt die Firmware von der Homematic auf. Die aktuelle Firmware ist Version 1.503. | ||
| − | === | + | ===Homematic-Software=== |
| − | + | Die Homematic-Software besteht aus mehreren Schichten: | |
| + | |||
| + | Auf der untersten Ebene liegen drei Daemon-Prozesse, welche die Kommunikation mit den Hardwarekomponenten vornehmen: | ||
| + | |||
| + | *'''rfd''': mit den BidCoS-Funk-Komponenten (direkt oder über HM-CFG-LAN) (Port 2001) | ||
| + | *'''hs485d''': mit den HomeMatic-Wired-Komponenten (Port 2000) | ||
| + | *'''pfmd''': mit der Hardware der CCU selbst (Port 2002) | ||
| + | |||
| + | Diese Prozesse besitzen jeweils eine xmlrpc-Schnittstelle, über welche sie angesteuert werden | ||
| + | können und über welche Ereignisse (z.B. Status-Änderungen) gemeldet werden. Auf dieser Ebene existieren | ||
| + | Geräte und Kanäle nur als Adressen. | ||
| + | |||
| + | {|border=1 cellspacing=0 | ||
| + | | colspan=3 |'''WebUI''' | ||
| + | |- | ||
| + | | colspan=3 |(JSON-RPC) | ||
| + | |- | ||
| + | | colspan=3 |'''Webserver''' | ||
| + | |- | ||
| + | | colspan=3 |(HMScript und xmlrpc) | ||
| + | |- | ||
| + | | colspan=3 |'''ReGa HSS''' | ||
| + | |- | ||
| + | | xml, rpc || || | ||
| + | |- | ||
| + | |'''rfd''' ||'''hs485d''' ||'''pfmd''' | ||
| + | |- | ||
| + | | (TCP/IP)|| || | ||
| + | |- | ||
| + | |'''HM-CFG-LAN'''|| || | ||
| + | |} | ||
| + | |||
| + | Über diesen Prozessen liegt die von EQ-3 als "Logikschicht" bezeichnete Ebene (ReGa, von "Residential Gateway"). | ||
| + | Diese managt die Konfiguration der Hardwarekomponenten, führt WebUI-Programme aus, handhabt die Abarbeitung | ||
| + | von HMScript und ähnliches. Auf dieser Ebene werden auch die Namen und Bezeichnungen der Geräte verwaltet | ||
| + | (in der "homematic.regadom"-Datenbank). | ||
| + | |||
| + | Diese Logikschicht wiederum besitzt zwei Schnittstellen: Zum einen die Möglichkeit, über eine TCL-Bibliothek | ||
| + | HMScript-Befehle auszuführen zu lassen, zum anderen ist über einen Webserver damit ein JSON-RPC-API | ||
| + | realisiert, welches wiederum von der WebUI verwendet wird. Das WebUI wiederum ist eine browserseitige | ||
| + | AJAX-Applikation, welche die Daten der ReGa visualisiert und die ReGa (via JSON-RPC) ansteuert. | ||
| + | |||
| + | Die JSON-API-Befehle kann man mittels http://homematic-ip/api/homematic.cgi einsehen. Wer telnet-Zugang auf | ||
| + | die CCU hat, kann den TCL-Quelltext der einzelnen über das API verfügbaren Methoden im Verzeichnis /www/api/methods | ||
| + | einsehen. Diese lassen auch interessante Rückschlüsse auf interne HMScript- und xmlrpc-Aufrufe zu. | ||
| + | |||
| + | Eine Dokumentation der XML-RPC-Schnittstelle findet sich unter http://www.homematic.com/index.php?id=156 | ||
| + | ===Listen=== | ||
| + | *[[CCU1_Prozessliste|Liste der Prozesse]] der CCU1 und ihrer Funktion. Die Liste der Prozesse kann über die [[Konsole]] mit dem Befehl ps aufgerufen werden. | ||
| + | *[[CCU1_Portliste|Liste der Ports]] der CCU1 und ihrer Funktion. Die Liste der verwendeten Ports kann über die [[Konsole]] mit dem Befehl ? aufgerufen werden. | ||
| + | ==Hardware== | ||
Version vom 16. Januar 2011, 23:14 Uhr
Inhaltsverzeichnis
Beschreibung
Scripte
Software
Betriebssystem
Das Betriebssystem der CCU1 ist ein embedded Linux. Darauf setzt die Firmware von der Homematic auf. Die aktuelle Firmware ist Version 1.503.
Homematic-Software
Die Homematic-Software besteht aus mehreren Schichten:
Auf der untersten Ebene liegen drei Daemon-Prozesse, welche die Kommunikation mit den Hardwarekomponenten vornehmen:
- rfd: mit den BidCoS-Funk-Komponenten (direkt oder über HM-CFG-LAN) (Port 2001)
- hs485d: mit den HomeMatic-Wired-Komponenten (Port 2000)
- pfmd: mit der Hardware der CCU selbst (Port 2002)
Diese Prozesse besitzen jeweils eine xmlrpc-Schnittstelle, über welche sie angesteuert werden können und über welche Ereignisse (z.B. Status-Änderungen) gemeldet werden. Auf dieser Ebene existieren Geräte und Kanäle nur als Adressen.
| WebUI | ||
| (JSON-RPC) | ||
| Webserver | ||
| (HMScript und xmlrpc) | ||
| ReGa HSS | ||
| xml, rpc | ||
| rfd | hs485d | pfmd |
| (TCP/IP) | ||
| HM-CFG-LAN | ||
Über diesen Prozessen liegt die von EQ-3 als "Logikschicht" bezeichnete Ebene (ReGa, von "Residential Gateway"). Diese managt die Konfiguration der Hardwarekomponenten, führt WebUI-Programme aus, handhabt die Abarbeitung von HMScript und ähnliches. Auf dieser Ebene werden auch die Namen und Bezeichnungen der Geräte verwaltet (in der "homematic.regadom"-Datenbank).
Diese Logikschicht wiederum besitzt zwei Schnittstellen: Zum einen die Möglichkeit, über eine TCL-Bibliothek HMScript-Befehle auszuführen zu lassen, zum anderen ist über einen Webserver damit ein JSON-RPC-API realisiert, welches wiederum von der WebUI verwendet wird. Das WebUI wiederum ist eine browserseitige AJAX-Applikation, welche die Daten der ReGa visualisiert und die ReGa (via JSON-RPC) ansteuert.
Die JSON-API-Befehle kann man mittels http://homematic-ip/api/homematic.cgi einsehen. Wer telnet-Zugang auf die CCU hat, kann den TCL-Quelltext der einzelnen über das API verfügbaren Methoden im Verzeichnis /www/api/methods einsehen. Diese lassen auch interessante Rückschlüsse auf interne HMScript- und xmlrpc-Aufrufe zu.
Eine Dokumentation der XML-RPC-Schnittstelle findet sich unter http://www.homematic.com/index.php?id=156
Listen
- Liste der Prozesse der CCU1 und ihrer Funktion. Die Liste der Prozesse kann über die Konsole mit dem Befehl ps aufgerufen werden.
- Liste der Ports der CCU1 und ihrer Funktion. Die Liste der verwendeten Ports kann über die Konsole mit dem Befehl ? aufgerufen werden.