Homematic IP CCU3 Philips Hue Lampen steuern

Homematic IP CCU3 Philips Hue

In diesem Beitrag zeigen wir dir wie du deine Philips Hue Lampen über deine SmartHome Zentrale Homematic IP CCU3 steuern kannst. Hierzu benötigst du kein AddOn.

Werbung

Kein AddOn notwendig

Wir haben uns bei der Steuerung unserer Philips Hue Lampen über unsere SmartHome Zentrale Homematic IP CCU3 für eine Variante entschieden, bei welcher wir keinerlei AddOn benötigen. Dies war uns wichtig, da jedes AddOn die SmartHome Zentrale verlangsamen kann. Damit du unsere Anleitung erfolgreich umsetzen kannst, solltest du jedoch bereits ein wenig Erfahrung im Umgang mit der Erstellung von Programmen mitbringen.

Homematic IP CCU3

Die SmartHome Zentrale CCU3 von Homematic IP* ist das Herzstück deines SmartHomes. Über diese Zentrale hast du die Möglichkeit verschiedenste Aktoren und Sensoren mit deinem Smartphone oder Tablet zu steuern. Der Vorteil der CCU3 gegenüber des AccessPoints ist, dass du selbständig Programme erstellen kannst. Mit Hilfe diesen Programmen kannst du dein Zuhause fast grenzenlos automatisieren. Darüber hinaus hast du durch die Installation von verschiedensten AddOns die Möglichkeit verschiedenste Aktoren und Sensoren von Fremdherstellern einzubinden.

Philips Hue

Philips Hue ist ein SmartHome System, welches dir die Steuerung der Beleuchtung über eine App ermöglicht. Darüber hinaus bietet Philips Hue auch die Möglichkeit einer Sprachsteuerung über Alexa oder dem HomeKit von Apple.

Für die Steuerung der einzelnen Lampen wird eine Steuerungszentrale benötigt, welcher unter dem Namen Hue Bridge vermarktet wird. Diese Zentrale muss dabei über ein LAN-Kabel mit deinem Router verbunden werden. Anschließend musst du dir aus dem jeweiligen AppStore die Philips Hue App herunterladen. Sobald du diese App startest sucht diese in deinem Heimnetz nach der Hue Bridge. Wurde diese gefunden, so kannst du nun deine Lampen an der Steuerungszentrale anlernen. Ist auch dieser Vorgang abgeschlossen, so hast du nun die Möglichkeit deine Lampen über die App an- und auszuschalten. Darüber hinaus kannst du diese Lampen dimmen sowie die gewünschte Farbe einstellen. Zur Speicherung der gewünschten Farben bietet Philips Hue sogenannte Szenen. Damit ist jedoch nicht genug. Philips Hue bietet dir auch die Möglichkeit deine Lampen zu bestimmten Uhrzeiten einzuschalten oder die Helligkeit zu ändern.

Eine kleine Auswahl verschiedenster Philips Hue Lampen:

Philips Hue Bridge verbinden

Im ersten Schritt muss die Philips Hue Bridge mit deiner Homematic CCU3 Zentrale verbunden werden. Hierfür musst du zunächst die Weboberfläche der CCU3 aufrufen. Nachdem du dich erfolgreich anmelden hast, musst du die Systemsteuerung aufrufen. Diese ist unterhalb der Einstellungen zu finden. Anschließend klickst du auf die Kategorie Kopplungen und trägst dort die IP-Adresse deiner Philips Hue Bridge ein. Sobald du diese Einstellung abgeschlossen hast, solltest du deine CCU3 neustarten.

Philips Hue API Key

Der Zugriff auf die einzelnen Philips Hue Szenen erfolgt über die bereitgestellt API-Schnittstelle. Damit du diese nutzen kannst, ist es im ersten Schritt notwendig einen API Key zuerstellen. Die aktuelle IP-Adresse sollte bereits aus dem vorherigen Schritt bekannt sein, falls nicht findest du diese in deinem Router. Die API-Schnittstelle der Philips Hue Bridge erreichst du über deinen Browser mit folgendem Aufruf:

http://Bridge-IP-Adresse/debug/clip.html
Code-Sprache: JavaScript (javascript)

Nach erfolgreichem Aufruf der API-Schnittstelle, solltest du folgende Weboberfläche erhalten:

Philips Hue API-Schnittstelle
Philips Hue API-Schnittstelle

In dieser Oberfläche müssen die im Bild dargestellten Werte eingetragen werden. Im Message Body kannst du als Devicetype einen eigenen Namen wählen. Anschließend erfolgt ein Klick auf den Button Post. Als Antwort solltest du nun einen Benutzernamen, welcher aus einer Buchstaben- und Zahlenfolge besteht, erhalten. Dieser Benutzernamen ist der gewünschte API Key. Da dieser nur einmalig dargestellt wird, sollte dieser unbedingt an einem sicheren Ort abgespeichert werden.

Philips Hue Szenen

Nachdem du nun einen Benutzer für den Zugriff auf die Philips Hue Bridge API-Schnittstelle erstellt hast, musst du im nächsten Schritt die verfügbaren Philips Hue Szenen abrufen. Mit folgendem Link kannst du diese Informationen abrufen:

http://Bridge-IP-Adresse/api/API-KEY/scenesCode-Sprache: JavaScript (javascript)

Du solltest nun eine ähnliche Antwort erhalten:

  "M2TFD6Z3NyooS5Ui" : {
    "version" : 2,
    "owner" : "XXX",
    "appdata" : {
      "version" : 1,
      "data" : "XXXX"
    },
    "picture" : "",
    "recycle" : false,
    "type" : "GroupScene",
    "lastupdated" : "2022-02-19T17:25:34",
    "lights" : [
      "1",
      "2",
      "3",
      "4",
      "5",
     
    ],
    "group" : "1",
    "locked" : false,
    "image" : "",
    "name" : "Tokio"
  },Code-Sprache: PHP (php)

Für jede Szene die du später über ein Homematic IP CCU3 Programm ansprechen möchtest, musst du dir dessen eindeutige ID merken. Im oberen Beispiel ist das die ID M2TFD6Z3NyooS5Ui. Am besten du schreibst dir diese kurz in einem Editor inklusive des jeweiligen Names sowie der Gruppennummer zusammen.

Im nächsten Schritt erfolgt nun die Erstellung des CCU3 Programms.

Homematic IP CCU3 Programm

Im ersten Schritt musst du eine Systemvariable mit der Bezeichnung [Lampen] Scene anlegen. Diese Systemvariable dient später der Aktivierung der richtigen Philips Hue Szene, sodass deine Lampen wie gewünscht eingeschaltet werden. Im nächsten Schritt musst du folgendes Programm anlegen:

string url = "http://Bridge-IP-Adresse/api/API-KEY/groups/GRUPPENNUMMER/action";
string scene_value = dom.GetObject("[Lampen] Scene").Variable();

string scene = "";

if(scene_value == "SZENEN-BEZEICHNUNG"){
   scene="ID-DER-SZENE";
}


string data = '{"scene":"'#scene#'", "transitiontime": 4}';
string request="/usr/local/addons/cuxd/curl -X PUT -H \"Content-Type: application/json\"";
request = request +" " + url + " -d " + "'" +data + "'" ;

dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State(request);Code-Sprache: PHP (php)

Werbung

Hinweis: Solltest du CUxD noch nicht auf deiner Homematic CCU3 Zentrale installiert haben, so musst du diese Zusatzsoftware vor der Erstellung des Programms installieren. Eine Anleitung findest du unter folgendem Link: Installation des CUx-Daemon

Homematic IP Wandtaster 6-fach

Nachdem nun alle Vorbereitungen abgeschlossen sind, benötigst du zur Aktivierung des jeweiligen Szenen noch einen Homematic IP Wandtaster 6-fach*. Bei diesem Wandtaster legst du für jede Taste fest, welche Szene aktiviert werden soll. Das Programm sieht folgendermaßen aus:

Homematic IP CCU3 Programm für Wandtaster
Homematic IP CCU3 Programm für Wandtaster

Unter der Bedingung gibst du dabei die gewünschte Taste an. Im Abschnitt Aktivität setzt du schließlich die Systemvariable [Lampen] Scene auf die im vorherigen Programm festgelegte Bezeichnung. Das war‘s auch schon. Nun bist du in der Lage deine Philips Hue Lampen über einen Homematic IP Wandtaster zu streuern.

Wir hoffen dir hat unsere Anleitung gefallen. Solltest du Fragen oder Anregungen haben, so hinterlass uns einfach ein Kommentar.

Provisions-Links / Affiliate-Links
Die mit Sternchen (*) gekennzeichneten Links sind Provisions-Links, auch Affiliate-Links genannt. Wenn Sie auf einen solchen Link klicken und auf der Zielseite etwas kaufen, bekommen wir vom betreffenden Anbieter oder Online-Shop eine Vermittlerprovision. Es entstehen für Sie keine Nachteile beim Kauf oder Preis.

Werbung

13 Comments

  1. Ich checks nicht ganz. API ok. Systemvariable
    [Lampen] Scene ok. Programm ok. Aber wo lege ich die Szenen mit Gruppenummern ID und Co an? Wer ruft das Programm auf bzw welches Ereignis?

  2. Ich bekomme im Clip API Debugger direkt beim ersten Befehl nur folgenden Fehler:

    [
    {
    „error“: {
    „type“: 101,
    „address“: „/“,
    „description“: „link button not pressed“
    }
    }
    ]

  3. Genau die Anleitung, die ich gesucht habe – vielen Dank.
    Jedoch ist sie leider nicht in jedem Punkt (für weniger erfahrene User) aufschlussreich.

    Z.B. ist mir unklar, wie genau die Systemvariable anzulegen ist (ein Screenshot wäre sehr hilfreich?

  4. Kann mir bitte jemand zeigen oder erklären, wo genau ich das Programm anlegen muss? Ich stehe gerade voll auf dem Schlauch…
    Danke!

  5. Leider findet die CCU3 die Hue Bridge nicht. Es kommt die Aufforderung, den Anlernmodus zu starten. Ich drücke also fleißig den runden Knopf, aber die CCU3 bricht nach einiger Zeit mit Timeout-Fehler ab. Kennt jemand das Problem?

    1. Jepp. Gleicher Fehler bei mir. Es kommt die Fehlermeldung. Nur, wenn man genau hinsieht, dann ist plötzlich die IP der Hue im Kopplungsdialog zu sehen. Und nach dem nächsten Reboot sind plötzlich die Hue und die Lampen als Geräte da.

  6. Hallo allerseits,
    ich habe mich seit gestern ein bisschen mit dem Artikel beschäftigt und bin über viele Fragen die hier gestellt wurden ebenfalls gestolpert. Jetzt läuft es ab, von daher hier kurz versucht, die Fragen zu beantworten, wo mir möglich.

    1. Fehler bei Vergabe des API-Keys „description“: „link button not pressed“
    Man muss den runden Knopf auf der Hue-Bridge drücken bevor man den Befehl mit Klick auf „Post“ abschickt.

    2. Welches Ereignis ruft das Programm auf: Ich habe hierzu gewählt, wenn sich der Systemzustand ändert: Z.B. Wenn [Lampen] Scene = -Hell- (bei Änderung auslösen) dann: Skript ausführen

    3. Sytsemvariable anlegen muss in der CCU3 geschehen: Einstellungen ==> Systemvariable ==> neu ==> Werteliste
    Dort kann man die verschiedenen Szenen mit Semikologn getrennt angeben – ACHTUNG: bei mir kommt als Value dann ein Wert von 0-5 (0=erster Wert, 5 = 6. Wert) raus. Muss man beim Skript beachten.

    4. Zum Skript speziell des Ausdrucks „SZENEN-BEZEICHNUNG“
    Bei mir wird wie schon oben beschrieben ein numerischer Wert raus, also 0 für den ersten Wert der Systemvariable usw.
    Bedeutet ich musste das Skript umschreiben zu
    (scene_value == 0){
    scene=“ID-DER-SZENE“;
    }
    Also auch ohne „“ beim Wert. Mit den Textwerten in “ hat es nicht geklappt.

    Was ich mich noch frage: Hat jemand ein Skript um die Helligkeitswerte einer Gruppe auf einen Wert x zu setzen. Ich habe 4er Strahler eines Fremdanbieters (IKEA) ins Hue System angebunden. Die nehmen beim Szenenwechsel zwar die Farbwerte an, nicht aber die Helligkeitswerte. Also habe ich mit 1 sek. Verzögerung die Helligkeitswerte für jede einzelne Lampe noch einmal ins Programm integriert. Da wäre mir ein Skript lieber, bin selbst aber nicht so Skript-Affin.

    1. string url = „DEINE HUE BRIDGE IP-ADRESSE/api/DEINE HUE BRIDGE USERID/groups/GRUPPENNUMMER/action“;
      string data = ‚{„on“: false}‘;

      string request=’/usr/local/addons/cuxd/curl -X PUT -H \“Content-Type: application/json\“‚;
      request = request +“ “ + url + “ -d “ + „‚“ +data + „‚“ ;

      dom.GetObject(„CUxD.CUX2801001:1.CMD_EXEC“).State(request);

  7. Danke für den Artikel. Das hat mir dabei geholfen, in die Materie etwas tiefer einzusteigen und ich habe die ersten Wandtaster-Tasten nun schon erfolgreich mit direkten Hue-Kommandos belegt. Ich bin jetzt allerdings bei den dynamischen Szenen hängen geblieben, die sich über die hier verwendete Version 1 der Hue API weder auslesen noch bedienen lassen. Ich habe daher geschaut, wie die Syntax für die aktuelle Version 2 der Hue API sein müsste. Hier gibt es aber bzgl. CUXD-Aufruf folgendes Problem: V2 benötigt zwingend eine https-Verbindung. Könnte mir vielleicht jemand den folgenden Teil der Codezeilen für Https-Aufrufe aus Skripten in der CCU3 darlegen?

    string data = ‚{„scene“:“‚#scene#'“, „transitiontime“: 4}‘;
    string request=“/usr/local/addons/cuxd/curl -X PUT -H \“Content-Type: application/json\““;
    request = request +“ “ + url + “ -d “ + „‚“ +data + „‚“ ;

    dom.GetObject(„CUxD.CUX2801001:1.CMD_EXEC“).State(request);

    Vielen Dank für Eure Hilfe bereits im Voraus!

Schreibe einen Kommentar zu Redaktion Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Available for Amazon Prime