»

Mrz 11

Philips Hue LED Lampen mit Homematic steuern ?

Die Licht-Bastler unter euch kennen sicherlich die tollen Philips hue LED Leuchtmittel. (s. hier…)
Diese LED Leuchtmittel bieten enorme Möglichkeiten für die stimmungsvolle Beleuchtung eurer Räumlichkeiten. Die verwendete LED-Technologie hat Philips dabei perfektioniert: So sind warmweiss-Töne in allen Helligkeiten (bis zu 600 Lumen pro Leuchtmittel) möglich.

Die Bedienung erfolgt dabei per Smartphone-App. Und genau da liegt das Problem: Wer möchte schon immer das Smartphone rauskramen, die App starten, darin rumnavigieren und dann kompliziert die Lampen schalten ?  Die Leuchtmittel sind klasse, aber früher gings doch viel einfacher:  Wandschalter AN oder Wandschalter AUS. Was nämlich, wenn das Smartphone gerade ganz woanders ist, womöglich in einer anderen Etage des Hauses ? Mal eben „Licht einschalten“ geht dann nicht. Bleibts dann dunkel ?

NEIN!  Also ein tolles neues Projekt:  Philips hue LED System mit einem Wandschalter ODER der Smartphone-App steuern.

Bei mir ist das Haussteuerungssystem Homematic im Einsatz, welches bisher schon viele andere Steuerungsaufgaben übernimmt. Warum also nicht dann auch die Philips hue damit steuern ? Und das auch noch mit einem vorhandenen Installations-Wandschalter wie aus den Busch-Jäger (oder Gira, oder …) Serien ?

Was brauchen wir ?

  • Philips hue natürlich (mind. 1 Lampe und die Hue-Bridge)
  • Homematic Zentrale CCU1 oder CCU2
  • Einen beliebigen Homematic Sender (Handsender oder Installationsadapter, Fernbedienung oder ähnliches)
  • Heimnetz mit Router
  • Etwas Bastler-Geschick und Grundkenntnisse in Elektro-Installationen

 Los Gehts:

Die Philips Hue wird über ein LAN-Ethernet Kabel mit eurem Hausnetz (Router) verbunden. Die Bridge gibt die Schaltsignale per Funk (Zigbee-Protokoll) an die einzelnen Lampen weiter. Daher die Bridge besser nicht elektromagnetisch abschirmen oder in den hintersten Keller-Winkel verbannen, wenn auch Lampen im Dachbereich geschaltet werden sollen. Bei mir gabs jedoch noch nie Reichweiten-Probleme.

Steuerung über die Homematic-Zentrale

Der Clou beim Hue-System ist, dass die Lampen über standardisierte Protokolle geschaltet werden können. Auch die Smartphone App bedient sich dieser. Konkret muss nur ein JSON-Objekt per HTTP (put) an die Bridge gesendet werden. Das JSON-Objekt enthält dabei die Steuerparameter (Lampen-Nr., Helligkeit, Farbe usw.). Also werden auch die Bedingungen klar: Der Absender des Steuerbefehls (könnte auch ein Browser sein) muss sich also im gleichen Heimnetz befinden wie die Bridge. Der Bridge ist es dabei egal, welchen Ursprung dieser Steuerbefehl hat, sofern sich die Anwendung vorher Registriert hat. Dazu dient der „Anlern-Knopf“ der Hue-Bridge.

Hue API-Key erzeugen

Dieses Anlernen erfolgt, indem man einen „Usernamen“ bei der Bridge registriert. Über einen Key in Form eines MD5-Hash kann man danach auf die Bridge über HTTP (put) zugreifen. Dieser Prozess ist ganz passend in folgendem Blog-Eintrag beschrieben: Hack the Hue – Ross McKillop

Hue API-Key testen:

Habt ihr einen solchen Key angelegt besser kurz testen:
Gebt die folgende Adresse in euren Browser (im Hausnetz) ein:

http://[IP-Adresse-Bridge]/api/[EUER-API-KEY]/lights/1/

Damit wird der Status der Lampe 1 („lights/1/“) ausgelesen. Die Bridge sendet bei Erfolg etwa sowas zurück:

{"state": {"on":false,"bri":108,"hue":13117,"sat":210,"xy":[0.5113,0.4145],"ct":463,"alert":"none","effect":"none","colormode":"hs","reachable":true}, "type": "Extended color light", "name": "Fernseher", "modelid": "LCT001", "swversion": "65003148", "pointsymbol": { "1":"none", "2":"none", "3":"none", "4":"none", "5":"none", "6":"none", "7":"none", "8":"none" }}

Das sind die einzelnen Konfigurationsdetails der Lampe 1. Sollte der API-Key nicht korrekt registriert sein (die Sache mit dem Bridge-Knopf drücken), erscheint sowas hier:

[{"error":{"type":1,"address":"/lights","description":"unauthorized user"}}]

In diesem Fall den API-Key nochmals sauber registrieren.
Danach geht es mit der Homematic weiter:

Homematic CCU vorbereiten

Als Zentrale für die Steuer-Aufgaben dient die Homematic CCU1 oder CCU2. Diese zentrale ist je eh immer aktiv und eignet sich somit perfekt. Also müssen wir dieser nur noch beibringen, einen HTTP-PUT an die Bridge zu senden, und zwar genau dann, wenn der Schalter gedrückt wird. Die CCU ist dabei ein Linux-System, welches sich einfach mit Root-Rechten versehen lässt. Damit kommen wir in die komfortable Lage die für den HTTP-PUT Aufruf erforderlichen Tools nachzuinstallieren: CURL
CURL ist ein Linux Programm, welches die nötigen JSON Objekte per PUT (oder GET) an das HTTP-Ziel der Bridge versenden kann. Um CURL auf der CCU zu installieren sind einige Linux-Kniffe nötig, die nachfolgend aber sehr einfach und Schritt für Schritt erläutert sind:  Homematic-Forum: CURL

CuxD statt system.Exec

Die Homematic-Zentrale kann jetzt theoretisch per Script und Aufruf von system.Exec(„curl…“) einen solchen Aufruf starten. Allerdings ist der system.Exec Befehl inoffiziell und fehlerhaft:  Die CCU (zumindest CCU1) stürzte bei mir in ca. 1 von 20 Fällen beim Aufruf ab, wodurch ein Neustart nötig wurde. Also ist von system.Exec() abzuraten. Es gibt aber eine Lösung:  Ein Homematic Plugin Namens CuxD.
Dieses Plugin enthält einen sicheren und stabilen EXEC-Ersatz, welcher störungsfrei und dauerhaft zuverlässig arbeitet. Also noch schnell das obenstehende CuxD wie beschrieben installieren.

Homematic Scripte

Nach CURL und CuxD gehts jetzt an die Scripte. Ist alles korrekt installiert, sollte das folgende Homematic-Script eine Lampe einschalten:  (Grundkenntnisse zu Homematic-Scripten werden hier vorausgesetzt)

string jdata=" {\"on\":true,\"bri\":108,\"hue\":13122,\"sat\":211,\"xy\":[0.5119,0.4147],\"ct\":467,\"alert\":\"none\",\"effect\":\"none\",\"colormode\":\"ct\",\"reachable\":true}";
string curlcommand="curl --request PUT --data '"+jdata#"' http://192.168.178.38/api/[euer API-Key]/lights/1/state/ ";
 dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State(curlcommand);

ACHTUNG:  Die IP-Adresse, die CUxD-Adresse und der oben erzeugte API-Key müssen noch durch eure Konfigurationsdetails ersetzt werden !

Die CuxD-Adresse könnt ihr nach der Installation abfragen: es wird ein neues „virtuelles Gerät“ angelegt, dessen Name ungefähr so lautet: HM-Sen-EP CUX2801001:1   –  Die letzte Zeichenfolge ist die CuxD-Adresse, hier:  „CUX2801001:1„.

Das Ausschalten einer Lampe funktioniert so:

string jdata=“{\“on\“:false}“;

(Der Rest dann wie oben)

 

HUE-Parameter

Die oben beschriebenen Scripte enthalten die JSON-Parameter zum Einstellen der Licht-Parameter. Eine Dokumentation ist von Philips veröffentlicht worden: Philips Hue Developer API. Hier könnt ihr die genauen Bedeutungen nachlesen.

Homematic-Programme

Jetzt nur noch ein neues „Programm“ in der CCU anlegen mit dem obenstehenden Code und dieses dann dem Schalter zuordnen.

Das obenstehende Beispiel würde nun, wenn der verknüpfte Schalter betätigt wird, per CuxD den CURL-Befehl absetzen, welcher die Parameter zur Hue senden und die Lampe 1 mit den Eigenschaften der ersten Zeile (Helligkeit, Sättigung, Farbton usw.) einschaltet.

Etwas kompliziert, funktioniert aber prima !!

Kami

28 Kommentare

Zum Kommentar-Formular springen

  1. Homematic Verzweifler

    Danke für die prima Anleitung. Abgesehen davon, dass sich CURL anscheinend nur auf der CCU1 installieren lässt frage ich mich, wie ich an
    CUxD-Adresse und API-Key
    komme.

    1. kami

      Die CUXD-Adresse kannst Du in der Homematic Weboberfläche abfragen:
      Unter „STATUS UND BEDIENUNG“ und dann „GERÄTE“ werden alle Geräte angezeigt.
      Nach der Installation von CuxD findest Du ein neues „virtuelles Gerät“. Dieses heisst bei mir z.B. so:

      HM-Sen-EP CUX2801001:1

      Der letzte Teil ist die CUXD-Adresse.
      Grüße,
      Kami

      1. jr

        Hallo kami wie kann / muss ich denn diese virtuelle Gerät erstellen ?

  2. Johannes

    Danke, klapot gut.
    Kann man eigentlich die Zeitdauer zwischen Tastendruck bzw. Programmstart und dem Einschalten des Lichts verkürzen? Dies dauert bei mir zwischen 1 und,5 Sekunden (vermutlich in Abhängigkeit der CCU). Das Schalten via HUE-App geht quasi verzögerungsfrei.

    1. kami

      Ja, die Verzögerung ist deutlich spürbar. Ich vermute es liegt an der relativ schwachen Prozessorleistung der CCU1. Zum Schalten ist ja auch eine etwas aufwändige Prozedur mit Umleitung über die CURL Verarbeitung nötig. Ich habe es bisher nocht nicht geschafft, die Verzögerung abzustellen. Bei mir sind es ca. 1-2 Sekunden (bei 4 Lampen) über eine CCU1. Interessant wären Erfahrungen mit einer CCU2, welche ja wesentlich mehr CPU-Power mitbringt. Hat hier schon jemand Erfahrungen ?

  3. Jens

    Hallo,

    Danke für die ausführliche Beschreibung, aber ich bekomme es leider nicht hin. Gibt es eine Möglichkeit irgendwo zu sehen, woran es hängt? Im log vom CuX- D sehe ich nur:

    May 18 16:00:54 homematic-ccu2 daemon.info cuxd[1530]: system(curl –request PUT –data ‚ {„on“:true,“bri“:108,“hue“:13122,“sat“:211,“xy“:[0.5119,0.4147],“ct“:467,“alert“:“none“,“effect“:“none“,“colormode“:“ct“,“reachable“:true}‘ http://10.0.1.56/api/newdeveloper/lights/1/state

    Ich möchte am Ende 4 Living Colors steuern.
    Über jede Hilfe wäre ich dankbar. Gruß

    1. kami

      Hallo Jens,

      versuche mal, ob Du den Status der Hue mit deinem Browser auslesen kannst:
      Gib mal die folgende URL in deinen Browser ein:

      http://10.0.1.56/api/newdeveloper/lights/1/

      Wobei 10.0.1.56 die IP-Adresse der Bridge in deinem Heimnetz sein sollte und
      „newdeveloper“ Dein API-Key, welcher vorher an der Bridge angelernt wurde.

      Mit diesem Aufruf kannst Du den Status der Hue „1“ abfragen.
      Es sollte in etwa so etwas angezeigt werden:

      {„state“: {„on“:false,“bri“:108,“hue“:13117,“sat“:210,“xy“:[0.5113,0.4145],“ct“:463,“alert“:“none“,“effect“:“none“,“colormode“:“hs“,“reachable“:true}, „type“: „Extended color light“, „name“: „Fernseher“, „modelid“: „LCT001“, „swversion“: „65003148“, „pointsymbol“: { „1“:“none“, „2“:“none“, „3“:“none“, „4“:“none“, „5“:“none“, „6“:“none“, „7“:“none“, „8“:“none“ }}

      Das sind die aktuellen Parameter der Hue 1, welche damit ausgelesen wurden.
      Sollte da etwas anderes stehen, z.B. sowas:

      [{„error“:{„type“:1,“address“:“/lights“,“description“:“unauthorized user“}}]

      dann hat die Registrierung des API-Keys nicht funktioniert.
      Vielleicht kannst Du den Status deiner Hue mal hier posten ?

      Grüße
      Kami

      1. Jens

        Hi Kami,

        vielen Dank für die schnelle Antwort. Ich habe das jetzt mal gemacht. Hier der Output:

        {„state“: {„on“:true,“bri“:254,“hue“:54000,“sat“:234,“xy“:[0.3537,0.1744],“alert“:“none“,“effect“:“none“,“colormode“:“xy“,“reachable“:true}, „type“: „Color light“, „name“: „Color light 4“, „modelid“: „LLC001“, „swversion“: „2.0.0.5206“, „pointsymbol“: { „1“:“none“, „2“:“none“, „3“:“none“, „4“:“none“, „5“:“none“, „6“:“none“, „7“:“none“, „8“:“none“ }}

        Scheint also zu funktionieren. Ich habe übrigens eine CCU2. Und wie gehts jetzt weiter?

        1. kami

          Hallo Jens,
          das sieht erstmal gut aus.
          Dann folgendes prüfen: ist CURL richtig installiert ?

          Ist die richtige CUXD-Adresse angesprochen ?
          In folgendem Script ist die Adresse „CUxD.CUX2801001:1“, dies muss aber nicht mit deiner Installation übereinstimmen. In der CCU sollte unter „Geräten“ ein Eintrag der CUXD zu finden sein, hier kannst Du die Adresse ablesen.

          string jdata=“ {\“on\“:true,\“bri\“:220,\“hue\“:15397,\“sat\“:117}“;
          string curlcommand=“curl –request PUT –data ‚“+jdata#“‚ http://192.168.178.38/api/***API-KEY***/lights/3/state/ „;
          dom.GetObject(„CUxD.CUX2801001:1.CMD_EXEC“).State(curlcommand);

  4. Jens

    Hi Kami,

    jetzt gehts!!! Genial. Es lag am Curl Aufruf. Bei der CCU2 mit installierten CuxD läuft es folgendermaßen:

    string jdata=“ {\“on\“:true,\“bri\“:108,\“hue\“:13122,\“sat\“:211,\“xy\“:[0.5119,0.4147],\“ct\“:467,\“alert\“:\“none\“,\“effect\“:\“none\“,\“colormode\“:\“ct\“,\“reachable\“:true}“;
    string curlcommand=“LD_LIBRARY_PATH=/usr/local/addons/cuxd /usr/local/addons/cuxd/curl –request PUT –data ‚“+jdata#“‚ http://10.0.1.56/api/newdeveloper/lights/3/state/ „;
    dom.GetObject(„CUxD.CUX2801001:1.CMD_EXEC“).State(curlcommand);

    Vielen Dank noch einmal.

    Gruß,
    Jens

    1. mipo

      Danke für den Hinweis mit der CCU2 – funktioniert prima!

  5. Leerzeichen

    Hallo zusammen

    Ich habe gespannt die Infos und Kommentare durchgelesen, scheine aber irgendwo einen Fehler zu haben.
    Bei mir läuft eine CCU2, der aktuelle CuXD 0.67 und Curl 1:1 installiert gemäs dieser Anleitung (http://homematic-forum.de/forum/viewtopic.php?f=19&t=5414&start=8#p35326)
    Den User an der Bridge habe ich 1:1 aus der Philips Anleitung erstellt (http://www.developers.meethue.com/documentation/getting-started)

    Ich habe in CUxD das virtuelle Gerät erstellt und in der CCU2 angelernt.
    Die CUxD Adresse ist identisch, die API und IP Adresse habe ich geändert.

    Weder der Code von Jens, noch von kami funktioniert bei mir.

    Weiss jemand woran es liegen könnte?

    1. kami

      Hast Du mal geprüft, ob der Anlernprozess an der Hue-Bridge mit deinem API-Key erfolgreich war ?
      Bei der folgenden Anfrage (im Browser) sollten keine Hinweise auf „Error“ oder Ähnliches zurückgegeben werden, sondern nur der Status der ersten Lampe:

      http://[IP-Adresse-Bridge]/api/[EUER-API-KEY]/lights/1/

      (Werte in Klammern durch eigene ersetzen)

  6. Leerzeichen

    Hallo Kami

    Ich habe mir die Philips Anleitung durchgelesen und 1:1 umgesetzt, heisst.
    http://192.168.177.130/api/newdeveloper/lights/1
    Wenn ich die Adresse im Brower eingebe erhalte ich erfolgreich die aktuellen Werte der angesprochenen Lampe zurück, das sollte somit funktionieren.

    Ich habe curl vorab gemäss der Anleitung installiert wie ich sie gepostet hatte, erst anschliessend habe ich cuxd installiert und dabei gelesen, dass cuxd ebenfalls curl mitbringt.
    Kann das ggf. dazu führen dass es nicht funktioniert?
    Wobei im Script auf die curl installation in cuxd verwiesen wird.

    Oder liegt es gar am Schalter mit dem ich den Befehl absetzen möchte?
    http://www.elv.de/homematic-funk-wandsender-2fach.html

    1. kami

      CURL ist erst in einer der letzten Versionen in die CuxD-Installation hinzugefügt worden.
      Die Anleitung bezog sich auf frühere Versionen (ohne CURL), daher das Ganze noch separat.
      Prinzipiell sollte es egal sein, über welchen Weg CURL bereitgestellt wird.
      Im Falle der Installation über CuxD bin ich mir aber nicht sicher, über welche Pfade CURL dann angesprochen wird.
      Evtl. sind auch die Berechtigungen nicht vollständig für den Zugriff aus Scripten heraus gesetzt. (Execute)
      Ich würde zunächst die korrekte Funktion von CURL von der Konsole aus testen. (Testaufruf einer URL)
      Dann das Ganze aus einem Script mit Testseite, und dann als letzten Schritt das Gesamtpaket.
      Am Schalter sollte es nicht liegen, Du kannst das Programm in dem das Script ausgeführt wird ja auch manuell über die CCU starten.

  7. Leerzeichen

    Hallo kami

    Ich bin leider etwas unbedarft und kenne mich faktisch noch nicht aus.
    Kannst du es evtl. ein wenig genauer beschreiben?
    Welche Konsole meinst du bzw. wie gelange ich dort hin?
    Wie bzw. wo kann ich eine Testurl aufrufen?
    Wie könnte ich herausfinden ob die Berechtigungen funktionieren?

    Sind alles absolute Anfängerfragen ich weiss, ich finde nur kein Wiki welches diese Fragen beantwortet.

  8. Ralph

    Hallo Kami,

    deine Anleitung ist sehr ausführlich und müsste zum Erfolg führen; bei mir leider nicht.

    Was will ich erreichen?
    Ein Script, dass angesteuert wird, wenn die Rollladen sich schließen.
    Damit sollen dann mehrere HUEs eingeschaltet werden (also ohne Taster, Schalter, etc.).

    Was habe ich gemacht?
    Bridge
    Auf der Bridge habe ich einen User (API) angelegt und kann darüber den Status der Lampen lesen und verändern.

    CUxD
    .. auf die Version 0.9 aktualisiert und darüber mit Gerätetyp (28) System, Funktion Exec mehrere Gerät angelegt. Dabei wird das verwendete Geräte-Icon keinen Einfluss auf die Funktionalität haben?! Vielleicht der Controller? Sowohl mit Taster als auch mit Schalter habe ich Geräte angelegt.

    CCU2
    Im Posteingang der CCU2 standen beide Geräte zur Verfügung und sie wurden eingebunden.
    Müssen dabei Kanal- oder Geräteparameter gesetzt werden?
    Bei der Systemsteuerung ist SSH aktiv (mit PW geschützt).

    CCU2-Programmierung
    Dann habe ich den in deinem Artikel unter „Homematic Scripte“ stehenden Code in „Scripte testen“ kopiert, meine Werte (IP-Adresse, CUxD-Adresse, API-Key) angepasst und ausgeführt.
    Zur Sicherheit läuft die Standardzeile „WriteLine(„Hallo Welt!“)“ als letzte Zeile und wird auch ausgegeben.
    An meiner Beleuchtung hat sich nichts geändert :-((
    Der CUxD-Log sieht so aus:
    Feb 9 08:52:50 ccu2 daemon.info cuxd[6565]: system(curl –request PUT –data ‚ {„on“: true,“bri“: 200,“hue“: 54282 }‘ http://**IP**/api/**eigene API**/lights/2/state/) exit(127) 0s

    Auch Varianten mit den anderen hinzugefügten Geräten und der Neustart der CCU2 haben es nicht hell werden lassen (oder die eingeschalteten Lichter verändert).

    Auch die Variante von Jens (23.05.14) habe ich ausprobiert.

    Hast du die erhellende Idee?!

    Vielen Dank im Voraus
    Ralph

  9. Ralph

    Hallo Kami,

    meine Anfrage hat sich erledigt.

    Alles funktioniert wie beschrieben, WENN ich die Hochkommas des Strings „jdata“ in Hochkommas meines Zeichensatzes ändere.
    Kleine Ursache, große Suche und Unsicherheit.

    Bitte für andere Interessierte veröffentlichen!

    VG Ralph

  10. PashScott

    Hi Kami
    Eine Frage zu den Parametern. Ich suche wie wild ein Umrechner oder Picker für den Integerwert der Farbe zum Übergeben an die hue. 0-65535. Ich finde nichts.
    Kannst du mir auf die Sprünge helfen ?

    VG
    PashScott

    1. kami

      Wenn es nur darum geht eine Lieblingsfarbe einzustellen, hier ein recht einfacher Trick:

      1. gewünschte Farbe mit der hue App einstellen.
      2. anschließend die Farb-Parameter über die Bridge auslesen.

      Diese Parameter kann man dann für die Scripte verwenden.

  11. Marcus

    Hallo Zusammen,

    ich verzweifele gerade ein wenig. Die gesendeten Befehle steuern leider die Lampen nicht.

    Die unter „INFO“ unter CUx angezeigten und vom virtuellen Gerät erzeugten CURL Aufrufe sind korrekt. Ich habe den CURL Befehl dort kopiert und auf der Konsole getestet. Die HUE Lampen lassen sich so steuern.

    Ich drücke den virtuellen Taster und die Konsole zeigt folgendes an:
    Nov 1 13:16:50 homematic-ccu2 daemon.debug cuxd[525]: CUX2801002:1 curl –request PUT –data ‚{„on“:false}‘ http://192.168.2.8/api/3bcab518c685d2769bfe7e6c512766/lights/20/state/
    Nov 1 13:16:50 homematic-ccu2 daemon.info cuxd[525]: system(curl –request PUT –data ‚{„on“:false}‘ http://192.168.2.8/api/3bcab518c685d2769bfe7e6c512766/lights/20/state/) exit(127) 0s

    Folgendes Skript verwende ich:
    string jdata=“{\“on\“:false}“;
    string curlcommand=“curl –request PUT –data ‚“+jdata#“‚ http://192.168.2.8/api/3bcab518c685d2769bfe7e6c512766/lights/20/state/ „;
    dom.GetObject(„CUxD.CUX2801002:1.CMD_EXEC“).State(curl command);

    Die CUX Adresse wird so in der WEB Oberfläche angezeigt. Scheint aber richtig zu sein, denn wenn ich die Adresse ändere, dann wird auch im CUX INFO Fenster keine Übertragung angezeigt.

    Ich vermute den Fehler in der Konfiguration des virtuellen Geräts. Wer kann mir helfen ?

  12. Der eMpTy

    Ich versteh hier nur Hauptbahnhof und hoffe, das mir jemand den richtigen Weg zeigt.

    Wenn ich im Browser eingebe:
    http://192.168.178.xx/api

    bekomme ich immer nur:
    [{„error“:{„type“:4,“address“:“/“,“description“:“method, GET, not available for resource, /“}}]

    Wie macht man diesen Post:

    Make an HTTP POST request of the following to http://YourHueHub/api

    {„username“: „YourHash“, „devicetype“: „YourAppName“}

    Gibt es so was eigentlich auch in einfach?

  13. Nico

    Hallo,
    kann mir jemand sagen mit welchem Befehl ich diese Lichtszene hinbekomme?
    „6“: {
    „state“: {
    „on“: true,
    „bri“: 254,
    „ct“: 156,
    „alert“: „none“,
    „colormode“: „ct“,
    „reachable“: true
    },
    „type“: „Color temperature light“,
    „name“: „Bad“,
    „modelid“: „Surface Light TW“,
    „manufacturername“: „OSRAM“,
    „uniqueid“: „7c:b0:3e:aa:00:14:f2:bd-03“,
    „swversion“: „1131861“
    }
    }
    Vielen Dank in voraus.

  14. Jürgen

    Hallo,

    super Anleitung. Kann man auch Szenen aufrufen?

    LG

    Jürgen

  15. Henning

    Hallo, gibt es einen Grund, warum du das „#“ statt des „+“ verwendest:

    string curlcommand=“curl –request PUT –data ‚“+jdata#“‚ …. “

    statt:

    string curlcommand=“curl –request PUT –data ‚“+jdata + “ …“‚

    Grüße Henning

  16. Patrick

    Hallo,

    ich komme jetzt wirklich nicht mehr weiter. Ich versuche das seit 5 Monaten im Wochentakt immer wieder mit Keinem erfolg.

    Die API Stimmt, kann ich im Browser auslesen, kommt das hier bei Raus.

    {„state“:{„on“:true,“bri“:5,“hue“:41291,“sat“:229,“effect“:“none“,“xy“:[0.1796,0.2390],“ct“:153,“alert“:“none“,“colormode“:“xy“,“reachable“:true},“type“:“Extended color light“,“name“:“Hue Go“,“modelid“:“LLC020″,“manufacturername“:“Philips“,“uniqueid“:“xxxxxxxxxxxxxxxxxxxxxxxx“,“swversion“:“5.38.1.14378″}

    Als Skript nutze ich dieses:

    string jdata=“ {\“on\“:False,\“bri\“:200,\“hue\“:41287,\“sat\“:229,\“xy\“:[0.1799,0.2393],\“ct\“:488,\“alert\“:\“none\“,\“effect\“:\“none\“,\“colormode\“:\“xy\“,\“reachable\“:true}“;
    string curlcommand=“curl –request PUT –data ‚“+jdata#“‚ http://xxx.xxx.xxx.xxx/api/xxxxxxxxxx hier steht die API xxxxxxxxx/lights/4 „;
    dom.GetObject(„CUxD.CUX2801001:1.CMD_EXEC“).State(curlcommand);

    im CUx Deamon kommt das als Zeile an:

    Sep 10 23:24:02 homematic-ccu2 daemon.info cuxd[8296]: system(curl –request PUT –data ‚ {„on“:False,“bri“:200,“hue“:41287,“sat“:229,“xy“:[0.1799,0.2393],“ct“:488,“alert“:“none“,“effect“:“none“,“colormode“:“xy“,“reachable“:true}‘ http://xxx.xxx.xxx.xxx/api/xxxxxxxx nur die halbe API wird angezeigt dann is die Zeile zu ende xxxxxxx

    ich habe alle Hochkommas getausch und den Text neu eingegeben von Hand – > keine wirklung

    auf der CCU läuft 2.21.10 und CUxDeamon hat version 1.5.1

    Ich weiss wirklich nicht mehr weiter, vielleicht sieht ja einer von euch den Fehler.

    Viele grüße aus Köln

    Patrick

  17. Dirk

    Hatte auch den Fehler von Ralph mit exit(127). Pfad und curl stimmten, der Fehler waren bei mir nicht die Hochkommata sondern das Doppel-Minus vor request. Beim Kopieren wurde daraus ein einzelnes. Zeichen weggelöscht, 2x minus hinzugefügt und schon gehts. Danke für die gute Anleitung!

  18. Jan

    Hallo,

    ich habe ein Hue-Addon für Homematic erstellt.
    Wer Lust hat das auszuprobieren, findet es auf GitHub.

    Die Einrichtung ist sehr einfach: Addon runterladen, installieren und Konfigurations-Seite aufrufen.
    Es können auch mehrere Bridges verwendet werden.

    Grüße
    Jan

Schreibe einen Kommentar

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

Sie können diese HTML-Tags verwenden: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>