Farbverlauf mit Wifilight und LW12

Begonnen von Take-Off, 27 März 2015, 22:57:07

Vorheriges Thema - Nächstes Thema

Take-Off

Hallo zusammen,

nachdem ich nun meine LW12 recht zuverlässig in Betrieb habe, möchte ich noch einen Farbverlauf erstellen.

Momentan habe ich folgenden Code in einem Notify:

S_Zimmer:* set Bed HSV 0,100,100 10 ; set Bed HSV 50,100,100 10 q ; set Bed HSV 100,100,100 10 q ; set Bed HSV 150,100,100 10 q ; set Bed HSV 200,100,100 10 q ; set Bed HSV 250,100,100 10 q ; set Bed HSV 300,100,100 10 q ; set Bed HSV 350,100,100 10 q ;

Soweit sogut, nur wie bringe ich nun das Notify dazu am Ende wieder von vorne anzufangen?
Um irgendwelche Schleifen zu basteln bin ich in Perl noch nicht fit genug. Wäre nett wenn mir da jemand weiterhelfen könnte. :)

Oder bin ich vllt. ganz auf dem falschen Dampfer und die Farbverläufe lassen sich viel einfacher erstellen?  ???

Freundliche Grüße
FHEM auf Raspberry Pi4
CUL868, CUL433, HM-CFG-USB2, HMW-LGW

trfr3ak

Das würde mich auch interessieren. Bist du mittlerweile weiter?
Ich würde gerne verschiedene Farbverläufe definieren, die sich immer wieder wiederholen.
Grüße Jonas


Gesendet von iPad mit Tapatalk

herrmannj


trfr3ak

ok, ich bin jetzt weitergekommen, aber es funktioniert dennoch nicht alles wie gewollt.
Meine Notifys sehen wie folgt aus:

define BettLED.stimmung1 notify BettLED:programm:\stvsim\s100 {fhem("set BettLED HSV 20,100,100 50;;set BettLED HSV 60,80,100 50 q stm1");;}


define BettLED.TVSim notify BettLED:programm:\stvsim\s100 {fhem("set BettLED HSV ".(180+int(rand(180))-int(rand(180))).",".int(rand(21)+80).",".int(rand(30)+71)." ;;set BettLED HSV ".(180+int(rand(180))-int(rand(180))).",".int(rand(21)+80).",".int(rand(30)+71)." ".int(rand(3)+2)." q tvsim");;}


define BettLED.Lagerfeuer notify BettLED:programm:\scampfire\s100 {fhem("set BettLED HSV ".int((rand()*3460)+5460).", ".int(rand(64)+170).", ".int(rand(60)+16)." ". int((rand()+0.1) * 10)." q campfire"}



Leider bleiben alle Notifys nach einer gewissen Zeit stehen und wiederholen sich nicht...

Eine weitere Frage wäre, wie man diese Notifys komfortable, bsp. über einen Dummy aufruft? Also dass man quasi mit WebCmds die einzelnen Programme anklicken kann.

Grüße
Jonas

herrmannj

Hi,

wieso die notifys "stehen bleiben" kann ich Dir leider nicht sagen.

Was ich sehe:
Beim ersten notify stimmt der Programmname "stm1" nicht mit dem trigger des notify überein "tvsim".

Das "neu triggern" ist auch nicht modul spezifisch. Du musst Dir evtl mal die events anschauen, vielleicht wird dann sichtbar warum nicht re-getriggert wird.

vg
joerg

Klouse

#5
Hallo,

komischerweise hatte ich auch Probleme bis ich die Slashes durch Punkte ersetzt habe.




define n_LED1_bsp notify KlouseLED1:programm:.LED1_bsp.100 \
set KlouseLED1 HSV 250,100,30;; \
set KlouseLED1 HSV 360,100,50 25 q;; \
set KlouseLED1 HSV 250,100,30 25 q LED1_bsp


Starte diesen Invervall wie folgt:


set KlouseLED1 HSV 250,100,30 10 s LED1_bsp



Edit: Ajo, start als Notify:

Dummy:

define bsp dummy
attr bsp setList on off


Notify f. On:

define n_bsp notify bsp:on \
set KlouseLED1 HSV 250,100,30 10 s LED1_bsp;; \
define bsp_Off at +01:00:00 set bsp off;; \


Notify f. Off:

define n_bsp_Off notify bsp:off \
set KlouseLED1 off;; \
delete bsp_Off;; \


Sollte so passen, habe es aus meiner config kopiert und ein paar Sachen gestrichen, habe es mit Musik und anderen Spielerein gekoppelt. :)
Deswegen auch einmal mehr verschachtelt als nötig.

LG,

Klaus

trfr3ak

#6
Cool, super tausend dank =)
Jetzt funktioniert alles so wie ich es will.
Btw: hat jemand eine Idee wie man einen Strobo-Effekt umsetzten kann?
Ich fände es auch cool, wenn man hier, oder in einem neuen Thread die Notifys austauschen könnte.
Ich fang mal an:

Rot-Orange-Gelb sanfter Wechsel:
BettLED:programm:.stm1.100 set BettLED HSV 10,100,100 50;set BettLED HSV 40,90,100 50 q stm1

Blau-Grün mittlere Geschwindigkeit:
BettLED:programm:.stm3.100 set BettLED HSV 250,100,100 10; set BettLED HSV 180,100,100 10 q; set BettLED HSV 90,100,100 10 q; set BettLED HSV 30,100,100 q; set BettLED 90,100,100,10 q; set BettLED HSV 180,100,100 10 q stm3


Meine Schlaf-Config (orange-gelb, sehr dunkel, sehr langsamer Wechsel):
BettLED:programm:.sleepy.100 set BettLED HSV 60,100,10 100;set BettLED HSV 80,90,10 100 q sleepy

Grüße
Jonas

herrmannj

Strobo geht nur in dem Rahmen in dem fhem vom timing mitspielt (und das ist nur begrenzt weil andere module halt Zeit brauchen)

Generell die Basis sind harte Wechsel:
set LED HSV 0,100,100 0;
set LED HSV 0,100,100 1 q;
set LED HSV 0,100,0 0 q;
set LED HSV 0,100,0 1 q; 

Das wäre ein rotes blinken.

vg
joerg

Kuzl

Hallo zusammen,

wenn ihr "schnellere" Farbschleifen so im Bereich bis ca. 3 Minuten sucht, könnt ihr euch auch mal das LW12.pm - Modul anschaun. Da wird ein Farbverlauf direkt im LW12 eingestellt und man kann zwischen überblenden strobo und umschalten aussuchen.

Viele Grüße,
Kuzl

Sandmann

Hallo alle, ich bin auch sehr interessiert an diesem "Endlos-Farbverlauf" und habe die "Anleitung" von Klouse für meine Geräte umgeschrieben.
Leider hat sich in den letzten jahren an der Schreibweise doch einiges Geändert. ( z.B. Doppelte ;; )

Nun läuft das bei mir trotz anpassungen nicht richtig.
Kannst Du / Ihr das vlt. mal auf aktuellen Stand bringen ?
Oder gibt es das schon in einem anderen Thread ?

Fur einen guten Tip wär ich echt dankbar.
Sandman
Bis denn dann
Sandman