WifiLight Statussync mit Hue möglich?

Begonnen von Steeeve, 04 Oktober 2014, 17:52:08

Vorheriges Thema - Nächstes Thema

Steeeve

Hallo Leute!

Da der WifiLight Thread ja echt schon elendslange ist, fange ich hier mit meiner Frage einen neuen an, ich hoffe das ist OK!

Die Aufgabenstellung ist eigentlich ganz einfach:
Ich habe ein LED-Lichtband und mehrere Hue Lampen, das Band ist über da Modul WifiLight.pm eingebunden die Hue über deren Modul.
Besteht hier die Möglichkeit,  EINE Hue Lampe Bsp: HueDevice1 im Status automatisch mit einem dem LedStrip zu synchronisieren.

Also Hue mit Farbe "hier einsetzen" an und Strip geht mit einer Farbe die (theoretisch) dieser entspricht auch ein.

WifiLight wird ja leider im Gegensatz zu den Hue, wo die Farbe mit XY und was weiß ich noch definiert ist, mit HSV bzw. RGB angesteuert.

Kann man xy irgendwie in HSV oder so konvertieren?

Vielen Dank

Steeeve

justme1968

je nach hue device kannst du diese auch direkt mit rgb und hsv steuern. versuch einfach mal ein set <hue device> rgb RRGGBBundset <hue device> hsv  HHSSVVRRGGBB und HHSSVV jeweils 6 Byte hex.

wenn du es umgekehrt möchtest kannst du auf jedes hue device ein get <hue device> rgb oder get <hue device> RGBmachen und dann z.b. mitmy( $h, $s, $v ) = Color::rgb2hsv($r,$g,$b); in hsv werte umrechnen. letzteres ist eventuell nicht besonders genau weil der farbraum der hue bulbs nicht berücksichtig wird.

ich könnte für das hue modul noch ein get <hue device> hsv einbauen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Steeeve

Hi André.
Ich würde gerne von den hue ausgehen als Quelle. von daher wäre get ... hsv sicher optimal.

ich probier es inzwischen mit get rgb

Danke.

steeeve

Steeeve

#3
Auf die schnelle hab ich mir jetzt mal das gebastelt:

sub syncHueToWifiLight {
  my $huedevice = $_[0];
  my $wifilightdevice = $_[1];

  my $ret = "";
  my $color = fhem "get $huedevice RGB";
  fhem "set $wifilightdevice RGB $color";
  $ret = $color;
}


und in der 99_MyUtils.pm ergänzt und so ausgeführt (funktioniert, farbe in der näheren Entfernung):

{syncHueToWifiLight('HUEDevice8', 'LightStrip') }

jetzt stellt sich mir die frage, wann ich das ausführe (at)...

lg
Steeeve

justme1968

per notify auf das huedevice. am besten auf state.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Steeeve

und dann dort die Funktion aufrufen und in der Funktion auf einAus usw. der Hue manuell eingehen?

gruss
Steeeve

justme1968

ja. genau. in der art.

aus bekommst du am sichersten über das onoff reading.

bis alles geht solltest du noch drauf achten das du wirklich nur state erwischst und nicht auf alle anderen readings triggerst.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Steeeve

#7
so, da wirds jetzt schwierig, das funktioniert leider nicht:

define lightstripToHue notify HUEDevice8:state.*{syncHueToWifiLight('HUEDevice8', 'LightStrip') }

herrmannj

Hi,

ZitatDa der WifiLight Thread ja echt schon elendslange ist, fange ich hier mit meiner Frage einen neuen an, ich hoffe das ist OK!
absolut  :)
so wie Andre das schreibt sollte es gehen
hue:
get <hue device> RGB

wifilight
set <wifilight> RGB ...

wenn die hue ein RGB event erzeugt (weiß ich nicht) könntest Du das per notify direkt an wifilight durchreichen.

vg
jörg


justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

herrmannj

add:

"wir" könnten mit sowas auch in den neuen "Beleuchtung" umziehen. Hat Boris ja extra so nett eingerichtet (danke). Vielleicht mag's jemand verschieben ...

vg
Jörg

Steeeve

Da wollte ich es eh posten, aber da war es so leer, da habe ich mich nicht getraut  ;D

Steeeve

Sorry, ich bin grad beim Suchen, habe aber echt gerade keinen Tau, wie ich an so ein Event komme...

gruss
Stephan

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

herrmannj

Zitat von: justme1968 am 04 Oktober 2014, 19:57:46
es gibt ein RGB event.

gruß
  andre

dann sollte:
define syncLights notify hue:RGB.* set wifilight RGB $EVTPART1
passen

vg
jörg

NAchtrag: teamwork  :)