Hallo,
in Deutschland ist die Homematic Steuerung weitt verbreitet, sie ist bewährt und günstig. Mittlerweile ist die Homematic IP lanciert worden. Die Technik hat sich etwas geändert. Die Steuerung wird nun mit einer Cloud synchronisiert, hat sicher Vor- und Nachteile.
Die alte CCU2 Basis kann allerdings auch die neuen IP-basierten Aktuatoren und Sensoren ansteuern. Für die neue HomematicIP gibt es eine noch undokumentierte RESTAPI, die Kommunikation läuft über den Cloudserver. (Anforderung eines Tokens usw.)
Die alte CCU2 hat m.E. den Vorteil einer sicheren Verbindung zu den Garäten im 800Mhz Bereich,das stört weder das Wlannetz noch wird die Belastung zu hoch bei vielen Steuerstellen.
Die CCU2 kann prima mit Addons erweitert werden, auch die Programmierung mit Scripten (Progarmme) ist sehr komfortabel.Man kann JS ähnliche Scripte schreiben aber auch das interne 'Wenn dann sonst' - Programmieren verwenden.
Hierbei nutzt man bequem die WebUi.
Es gibt viele Erweiterungen (cgi Scripte), die man auch recht einfach ändern und erweitern kann. Ich beschränke mich aber auf Bordmittel.
Die RestAPI installiert man mit dem Addon XML-API.
Ist das Addon installiert kann man in Systemsteuerungen/ Zusatzsoftware mit den neuen Funktionen 'herumspielen'.
Wichtig sind z.B. devices.cgi und state.cgi. Ruft man das auf kann man sich Informationen über alle angeschlossenen Devices anschauen.
Als Beispiel soll der Boostmodus für ein angeschlossenes Heizkörperthermostat angeschlaltet werden.
Dazu suche ich mir die ise_id des Boost-Modus des entsprechenden Thermostatest heraus. Das Ganze funktioniert natürlichauch mit anderen Entitäten wie Räumen oder Gewerken.
Auf meiner Homeatic ist das 1378. Die Änderung erfolgt dann über statechange.cgi,
http://192.168.1.7/addons/xml-api/statechange.cgi?ise_id&new_value=1
Pfade und IP Adresse sind bei Eurer Homematic sicher anders.
Das Ganze einmal ausprobieren im Browser und schon sollte das Thermostat ind en Boostmodus gehen.
Im MLGW wird dieser String dann über die CustomStrings abgefeuert.
Konfiguration
IP Adresse: 192.168.1.7
PORT 80
Type: Output
String: GET /addons/xml-api/statechange.cgi?ise_id=1378&new_value=1 HTTP/1.0\0D\0A\0D\0A
Das habe ich mir dann auf CONTROL/RED gelegt.
Ich wollte nun eine wärmer / kälter Funktion mit den Pfeiltasten der Beo4 realisieren.
Die statechange Funktion unterstützt leider keine +1 oder -1 Parameter in new_value. Das lässt sich relativ einfach im Script anpassen, aber ich bin den Weg ohne Programmieraufwand gegangen.
Die Idee dahinter ist, dass beim Druck auf die hoch / runter Tasten ein virtueller Tastendruck in der Hoemmatic ausgelöst wird. Wir haben natürlich keine physikalischen Taster sondern verwenden virtuelle.
Dazu installiert man das Addon CUX Daemon und erzeugt sich einen Multichannel Taster. Dieser wird dann im Posteingang als neues Gerät angzeigt. Einfach fertig konfigurieren und schon kann er verwendet werden.
Wir brauchen wieder die ise_id und können damit den Custom String für das MLGW erzeugen, der sieht ganz anlog zum obigen Beispiel aus:
GET /addons/xml-api/statechange.cgi?ise_id=1780&new_value=1 HTTP/1.0\0D\0A\0D\0A
Damit wird dann ein Tastendruck ausgelöst.
Wir brauchen allerdings noch ein kleines Programm auf der Homematic:
Wenn Änderung auf dem Taster dann führe sofort folgendes Script aus:
dom.GetObjects('name oder id des channels für SET-Temperatur').state(dom.GetObjects('name oder id des channels für SET-Temperatur').Value()+1)
Und analog einen Taster machen für die Reduzierung der Temperatur:
dom.GetObjects('name oder id des channels für SET-Temperatur').state(dom.GetObjects('name oder id des channels für SET-Temperatur').Value()-1)
Am Display des Thermostaten sollte dann sofort die neue Temperatur zu sehen sein,wenn wir die hoch / runter Tasten auf der Beo4 verwenden
Wenn Interesse besteht kann ich nochmal Screenshots einstellen und ich stehe für Rückfragen gerne zur Verfügung.
Das Homematic System ist sehr vielfältig und flexibel und in Verbindung mit einem MLGW gut in ein B&O System zu integrieren.
Gruss Ralf