Moinsen,
ich habe soeben auf meiner Vu+ Uno 4k mit Enigmalight und einem HueBridge Emulator und einer selbstgebauten ESP8266 Lösung als LED Lampe das Ambilight zum laufen bekommen.
Bei mir waren die Punkte des Keys das Problem.
Ich habe mittels der Anleitung hier und teilen der Anleitung aus dem Dreamboard dann die Funktion herstellen können.
Effektiv hab ich nur das Useranlegen von dor - denn bei mir kam als ich mit dem API Debugger (http://<IP der Bridge>/debug/clip.html) mal die commandos aus dem Pythonscript ausführte immer nur "unauthorized user".
Somit mittels:
Und dem Click auf "Post" einen neuen User angelegt und aus dem Ergebnis den Usernamen genommen und als "key" in dem Python script an den 2 Stellen hinterlegt.
Schwups schon ging es mit der Anleitung von Seite 1.
Da ich mit meinem Emulator der Bridge die aktuellste App und auch Hue Sync am PC nutzen kann - sollte das für alle Bridgebesitzer ebenfalls gehen.
Mit dem Debugger bekommt man auch sehr angenehm die nötigen Lampennummern und Co.
Irgendwie fehlte oben auch noch der Codeblock zum anlegen des Users (ein Edit scheint nicht machbar zu sein nach X Minuten...)
Habe auch noch eine Änderung umgesetzt.
Das hier:
Schaltet immer alle Lampen die es global gibt ab... für micht nicht sinnvol, da noch andere Räume existieren.
Habe dort die Gruppe von genau dieser Lampe angegeben - einfach die "0" zu dem ersetzen was eure Gruppe ist, dann wird da auch nicht einfach anderes abgeschaltet (vor allem wird es das dauerhaft solange der Zweig der Schleife ausgeführt wird - denke das bau ich auch noch um zu einmalig bis der obere Zweig mal wieder genutzt wurde)
Tja schade das mit dem Edit (alternativ bin ich gerade unfähig)
Also ich hab nun 3 Stellen geändert:
- Es zielt nicht mehr auf eine Lampe sondern auf eine Entertainmentgruppe (Mittels HUE App erstellt)
- Es schaltet nicht mehr solange der Loop läuft dauerhaft ab sondern nur einmal
- Es schaltet nur die Entertainment Gruppe ab
Somit laufen alle anderen Hue Lampen und gehen nicht ständig aus
Anleitung:
1. Enigmalight installieren
2. Curl vom Feed installieren (opkg install curl) (wenn überhaupt nötig - war bei mir bereits installiert)
4. Die "enigmalight_hue_LR.py" oder "enigmalight_hue_1x.py" und "rgb_xy.py" in den "\home\elight-addons\wifilight\philips_hue" Ordner kopieren (anderer Ordnerpfad ist auch möglich, muss dann nur in der config angepasst werden!)
5. enigmalight.conf nach /etc kopieren
- User in der Bridge anlegen
Den da zurück bekommenen usernamen nutzen als "key" für die enigmalight_hue_1x.py (oder wieviele Lampen ihr da auch drin habt oder welche Version ihr da nutzt).
- Infos einholen -
Mit dem API Debugger (http://<IP der Bridge>/debug/clip.html) die Entertainmentgruppennummer ausfindig machen:
Diese wird ebenfalls in der enigmalight_hue_1x.py oder ähnlich lautend benutzt.
Mit dem API Debugger die "Gamut" Art/den Typ der Lampe herausfinden
- enigmalight_hue_1x.py anpassen-
In der unten angehängten Version sind Änderungen in folgenden Zeilen Änderungen zu machen:
Gamut: 7 & 13
Entertainmentgruppenummer: 18 & 59
Username(variable heißt key): 15 & 59
Meine enigmalight_hue_1x.py:
Alles anzeigen
ich habe soeben auf meiner Vu+ Uno 4k mit Enigmalight und einem HueBridge Emulator und einer selbstgebauten ESP8266 Lösung als LED Lampe das Ambilight zum laufen bekommen.
Bei mir waren die Punkte des Keys das Problem.
Ich habe mittels der Anleitung hier und teilen der Anleitung aus dem Dreamboard dann die Funktion herstellen können.
Effektiv hab ich nur das Useranlegen von dor - denn bei mir kam als ich mit dem API Debugger (http://<IP der Bridge>/debug/clip.html) mal die commandos aus dem Pythonscript ausführte immer nur "unauthorized user".
Somit mittels:
Und dem Click auf "Post" einen neuen User angelegt und aus dem Ergebnis den Usernamen genommen und als "key" in dem Python script an den 2 Stellen hinterlegt.
Schwups schon ging es mit der Anleitung von Seite 1.
Da ich mit meinem Emulator der Bridge die aktuellste App und auch Hue Sync am PC nutzen kann - sollte das für alle Bridgebesitzer ebenfalls gehen.
Mit dem Debugger bekommt man auch sehr angenehm die nötigen Lampennummern und Co.
Irgendwie fehlte oben auch noch der Codeblock zum anlegen des Users (ein Edit scheint nicht machbar zu sein nach X Minuten...)
Habe auch noch eine Änderung umgesetzt.
Das hier:
Schaltet immer alle Lampen die es global gibt ab... für micht nicht sinnvol, da noch andere Räume existieren.
Habe dort die Gruppe von genau dieser Lampe angegeben - einfach die "0" zu dem ersetzen was eure Gruppe ist, dann wird da auch nicht einfach anderes abgeschaltet (vor allem wird es das dauerhaft solange der Zweig der Schleife ausgeführt wird - denke das bau ich auch noch um zu einmalig bis der obere Zweig mal wieder genutzt wurde)
Tja schade das mit dem Edit (alternativ bin ich gerade unfähig)
Also ich hab nun 3 Stellen geändert:
- Es zielt nicht mehr auf eine Lampe sondern auf eine Entertainmentgruppe (Mittels HUE App erstellt)
- Es schaltet nicht mehr solange der Loop läuft dauerhaft ab sondern nur einmal
- Es schaltet nur die Entertainment Gruppe ab
Somit laufen alle anderen Hue Lampen und gehen nicht ständig aus
Anleitung:
1. Enigmalight installieren
2. Curl vom Feed installieren (opkg install curl) (wenn überhaupt nötig - war bei mir bereits installiert)
4. Die "enigmalight_hue_LR.py" oder "enigmalight_hue_1x.py" und "rgb_xy.py" in den "\home\elight-addons\wifilight\philips_hue" Ordner kopieren (anderer Ordnerpfad ist auch möglich, muss dann nur in der config angepasst werden!)
5. enigmalight.conf nach /etc kopieren
- User in der Bridge anlegen
Den da zurück bekommenen usernamen nutzen als "key" für die enigmalight_hue_1x.py (oder wieviele Lampen ihr da auch drin habt oder welche Version ihr da nutzt).
- Infos einholen -
Mit dem API Debugger (http://<IP der Bridge>/debug/clip.html) die Entertainmentgruppennummer ausfindig machen:
Diese wird ebenfalls in der enigmalight_hue_1x.py oder ähnlich lautend benutzt.
Mit dem API Debugger die "Gamut" Art/den Typ der Lampe herausfinden
- enigmalight_hue_1x.py anpassen-
In der unten angehängten Version sind Änderungen in folgenden Zeilen Änderungen zu machen:
Gamut: 7 & 13
Entertainmentgruppenummer: 18 & 59
Username(variable heißt key): 15 & 59
Meine enigmalight_hue_1x.py:
Python-Quellcode: enigmalight_hue_1x.py
- import sys
- import os
- import time
- import json
- import httplib
- from rgb_xy import Converter
- from rgb_xy import GamutC # or GamutB, GamutC (you must look for the type of your lamps)
- counter = 12
- off = 0
- def popen():
- converter = Converter(GamutC)
- spidev = file( os.getcwd()+'/aufruf.log', "wb")
- key = "Username vom angelegten User HIER einfügen"
- ip = "Bridge IP"
- url = '/api/' + key + '/groups/'
- lurl = url + '5/state' # die 1 ersetzen mit der Nummer deiner Entertainmentgruppe
- #Ebenfalls Gruppennummer und key in Zeile 59 angeben!
- MINIMAL_VALUE=0.000000000
- while True:
- eingabe = sys.stdin.readline()
- if len(eingabe)>0:
- global counter
- counter += 1
- off = 1
- try:
- lr,lg,lb,x = eingabe.split(' ')
- except ValueError:
- spidev.write("Not enough input parameter, do you have the same amount of lights (channels) in your enigmalight config?")
- spidev.flush()
- raise
- lr = (float(lr))*255
- lg = (float(lg))*255
- lb = (float(lb))*255
- lll = calcLuminance(lr,lg,lb)
- if (counter>=13):
- connection = httplib.HTTPConnection(ip, timeout=10)
- lparams = {'xy': converter.rgb_to_xy(lr,lg,lb), 'colormode': 'xy', 'bri': int(lll), 'on': True}
- connection.request('PUT', lurl, json.dumps(lparams))
- response = connection.getresponse()
- connection.close()
- counter=0
- else:
- if off == 1:
- off = 0
- os.system("curl -d '{\"on\":false}' -X PUT 192.168.0.15/api/bec6b0821d9d11ea86adb827ebcb496a/groups/5/action")
- break
- def calcLuminance(r,g,b):
- LUM_VALUE=5
- luminance=1
- if (r + g + b > 1):
- luminance= r + g + b + LUM_VALUE
- if (luminance>=255):
- luminance=254
- return luminance
- import time
- time.sleep(1)
- popen()
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von hgdo () aus folgendem Grund: 3 Beiträge zusammengefasst