Philips HUE Modul

Was bringen dir den die Schalter, du musst doch die Werte in Kombination übermitteln. Dafür musst du HUE_SetValues nutzen. Beim Webfrontend wird immer nur 1 Wert gesetzt HUE_SetValue.

Oder wie stellst du dir das vor?

Für die anderen im Forum, ich lasse mir das noch etwas einfallen um das sauber zu händeln. Ich würde aber die Gruppen nicht überspringen, da ja noch Lampen reinkommen könnten. Ich werde später mal Testen ob die API einen Fehler schickt wenn ich Werte ändere. Wenn nicht würde ich die Gruppen anlegen und Schaltbar machen halt nur ohne Effekt bis eine Lampe in der Gruppe ist.

Ich hatte an eine Variable für Transitiontime gedacht mit einem Slider. Dieser steht im Standard auf 0 kann aber verstellt werden dann wird eben wenn ein Befehl bei der Lampe gesendet wird die jeweils eingestellte Transitiontime mit Übertragen z.B. beim einschalten der Lampe.

Das gleiche gilt für den Alert Button da gibt es eben drei Auswahlen.
“none” – The light is not performing an alert effect.
“select” – The light is performing one breathe cycle.
“lselect” - The light is performing breathe cycles for 15 seconds or until an „alert“: „none“ command is received.

Standard ist none. Wenn man dann doch mal draufdrückt wird eben der passende Alert abgesetzt. So habe ich das zumindest bei mir im Webfront.

Der Branch groups hat eben ein Update erhalten. Leere Gruppen sollte kein Problem mehr sein. Die Gruppe wird minimal angelegt.

Hm, also irgendwie hab ich da noch ein Problem, bzw. bin zu blöd.

Versuche mal gerade mittels script die hue zu schalten:

$lightId = 38196 /*[Beleuchtung Sonstige\Philips hue\WZ hinten]*/;

HUE_SetValues($lightId, array('COLOR_TEMPERATURE' => '153', 'BRIGHTNESS' => '255'));

Geht aber gar nicht, alle light instanzen sind plötzlich mit einem roten Ausrufezeichen versehen, und anschließend steht der alte Wert wieder drin…
Hab das wohl noch nicht so ganz geblickt…
Ach ja, bin noch auf dem master branch.

Wenn alle Lampen ein Ausrufezeichen haben, das die Bridge einen Fehler gemeldet.

Aber der Grund dürfte sein, dass der Wertebereich im Master nocht 0-100 (%) ist. In der neunen Version „groups“ ist der Werte Bereich 0-255. Die COLOR_TEMPERATURE wird automatisch aus dem Wertebereicht 0-255 berechnet. Hintergrund für die Wahl ist, dass ich die Slider von Symcon nutze.

Das hatte ich vorher auch schon probiert, habe dann aber die Beschreibung der Key´s auf deiner Github Seite gelesen…

Dann müsste es doch so funktionieren:

HUE_SetValues($lightId, array('COLOR_TEMPERATURE' => '40', 'BRIGHTNESS' => '60'));

Tut es aber leider auch nicht :frowning:

Hm okay, gebe ich die Werte einzeln rüber funktioniert es, nur im Array nicht :confused:

HUE_SetValue($lightId, 'COLOR_TEMPERATURE',365);
HUE_SetValue($lightId, 'BRIGHTNESS',179);

Aber sie müssen wirklich so übermittelt werden wie du beschrieben hast:


// COLOR_TEMPERATURE -> Farbtemperatur (153 bis 500)
// BRIGHTNESS -> Helligkeit in (0 bis 255

Hallo FONZO,

vielen vielen dank für das Script aus #314.

Funktioniert einwandfrei. Da ich aber eh nur ein Gerät bei einem langen Tastendruck schalten möchte langen mir 5s als Aktualisierungszeit des Scripts. Ich lese nun die Variabel „Event“ aus und schalte bei 4003 = langer Tastendruck ein Homematic Aktor aus. Dies geschieht zwar mit etwas Verzögerung, was aber für mich völlig OK ist.

Allerdings und das hatte ich schon von Anfang an beim Einbinden des HUE-Moduls (nicht des Scripts aus #314) erhalte ich folgende Fehlermeldung:

14.12.2016 22:09:10*| ScriptEngine*| Result for Event 18239
<br />
<b>Notice</b>:  Undefined index: bri in <b>/var/lib/symcon/modules/SymconHUE/HUELight/module.php</b> on line <b>174</b><br />

Könnte mir jemand erklären was hier falsch ist und wie ich die Fehlermeldung beseitigen kann ?

Danke

Gruss

Pentti

Schön das es funktioniert ich habe das selber gar nicht getestet ;). Weist Du zufällig für was welche Zahl steht, dann könnte ja noch gleich ein passendes Variablenprofil mit angelegt werden? Bei mir steht z.B. 4002 und 37, 4003 sagtest Du ja ist ein langer Tastendruck. Wie sind Deine Erfahrungen bisher gibt es Probleme bei der Bridge wenn Du in einem kurzen Zeitintervall das Skript ausführst? Wie lange ist momentan die Reaktionszeit bzw. wie oft führst Du das Skript denn momentan aus?

Hallo,

bin gerade auf der Arbeit, deshalb so aus dem Kopf heraus. Wenn Du noch was im detail brauchst schicke ichs heute abend.

im Prinzip steht

100x für die Ein Taste
200x für die heller dimm Taste
300x für die dunkler dimm Taste
400x für die aus Taste

die x stehen dann für die 3 Zustände (1)kurzer, (2)mittellanger und (3)langer Tastendruck

Also mittlerer Tastendruck auf Ein ist dann 1002.

Ich habe mein Script mit dem Taster auf Variablenänderung getriggert. Es wird also bei jeder Variablenänderung gestartet. Also dann wenn jemand den Taster drückt

Bei Deinem Script zur Einbindung führe ich alle 5sec aus. Insofern hatte ich bei der Bridge keine Probleme.
In FHEM hatte ich aber früher 1 oder 2 sekunden, da waren auch keine Probleme.

Im WC geht das Licht bei mir halt nach 5sec erst aus. Damit kann ich aber leben.

ehe Fragen kommen :slight_smile:

WC = worst case

Danke für die Info, das heißt das man ja dann im Prinzip schon den Taster nutzen kann um alle möglichen Geräte die mit IP-Symcon ansteuerbar sind zu schalten allerdings halt mit der Verzögerung des Anfrageintervalls an die HUE Bridge.
Die vierstelligen Codes gelten ja für den ZLLSwitch. Weist Du zufällig auch die Codes für den ZGPSwitch (den runden mit den drei Knöpfen)? Der hat anscheinend 2stellige Codes zumindest wird bei mir z.B. 34 angezeigt.

So einen runden habe ich leider nicht.
Kanns Dir nicht sagen

Hab gerade nochmal im FHEM Forum geschaut.
Bei den x ist mir ein kleiner Fehler passiert.

Richtig muss es heißen:

Zitat FHEM-Forum:
[i]0 entspricht INITIAL_PRESSED - dem initalen Tastendruck (von FHEM nicht nutzbar/empfangbar)

1 entspricht HOLD - dem Event während die Taste gehalten wird (für FHEM wenig sinnvoll)

2 entspricht SHORT RELEASED - dem von FHEM abfragbaren Event nachdem ein kurzer Tastendruck beendet ist

3 entspricht LONG RELEASED - dem von FHEM abfragbaren Event nachdem ein langer Tastendruck beendet ist

Die ON Taste lang zu drücken erzeugt auf der Bridge nacheinander beispielsweise folgende Events: 1000 - 1001 - (1001) - 1003[/i]

Gut ich habe im Skript in #314 mal ein Variablenprofil hinzugefügt. Falls noch jemand weis was die Codes bei dem Runden Schalter bedeuten kann das ja noch ergänzt werden.

Hi Fonzo,

kannst Du mir mal die Fehlermeldung erklären und nen Tipp geben wie ich die weg bekomme ?
Hat allerdings mit dem Schalter jetzt nichts zu tun:

14.12.2016 22:09:10*| ScriptEngine*| Result for Event 18239
<br />
<b>Notice</b>: Undefined index: bri in <b>/var/lib/symcon/modules/SymconHUE/HUELight/module.php</b> on line <b>174</b><br />

Das kommt wohl vor wenn $state[‚bri‘] nicht existiert warum auch immer. Wenn man die Fehlermeldung vermeiden will hilft es nur eine Abfrage einzubauen bevor SetValueInteger ausgeführt wird. Das kann aber am besten Traxanos machen, wenn Du das von Hand ergänzen willst müsstest Du Zeile 173 durch diese 3 Zeilen ersetzten.


if(isset(($state['bri']))
{
SetValueInteger($briId, round($state['bri'] * 100 / 254));
}

Das hat aber den Nachteil das Du dann das Modul nicht mehr updaten kannst weil Du von Hand Änderungen durchgeführt hast.

Interessant wäre daher eher rauszufinden warum $state[‚bri‘] nicht existiert bzw. noch eine Abfrage ins Modul einzubauen. Du kannst das von Hand ergänzen oder warten was Traxanos dazu sagt oder eventuell im Modul ergänzt.

Das mit dem „BRI“ habe ich schon für die Gruppen optional gemacht im Branch „groups“. Wenn genug testen, würde ich den Inhalt nach Master schieben. Vor allem weil ich die Wertebereiche einheitlich auf 0-255 angepasst habe beim lesen und schreiben.

@Penttis
Bei was für einer Lampe gibt es denn keinen Heligkeitswert.

@All
Ich habe eben die Dokumentation vom Branch „groups“ erweitert um die neuen Funktionen. Wenn ich kein negatives Feedback bekomme geht es die Tage nach Master.

Kann gerne nachher mal auf den „groups“ gehen und testen, aber das wird vermutlich nicht mein Problem mit der array Übergabe lösen, oder?