ESP RGBWW Wifi Led Controller - fhem - Modul

Begonnen von pjakobs, 28 Juni 2016, 10:31:13

Vorheriges Thema - Nächstes Thema

pjakobs

Zitat von: Per am 23 Mai 2017, 12:54:22
Also ich kann kein "Pause" auswählen, update behauptet aber, bei 73_LEDcontroller (richtig geschrieben? Habe gerade keinen Zugriff) nix tun zu müssen.
pause ist auch wirklich nur im queue Modus sinnvoll. Dies hier ergibt z.B. ein 10s Grün:
set LED_Bu hsv 60,100,80 0; set LED_Bu pause 10 q;set LED_Bu off 0 q
Zitat von: Per am 23 Mai 2017, 12:54:22
Nein, ich habe rgb + 2x weiss angeschlossen. Auch wenn letztere nur zum Testen und zwei identische, optisch wird das Ergebnis also eher "mau" aussehen.
Aber wenn es mit raw r,g,b,ww,cw geht, reicht mir das fürs Erste. Hoffe ich.

Nach meinen ersten Spielereien mit rgb-Streifen wird das Ganze in Zukunft eher auf 5x weiss hinauslaufen. Ist aber keine Folge des "schlechten Moduls" oder so, ich habe nur festgestellt, das Farbe noch mehr "Spielerei" als Fhem an sich ist ;D.
Mein Wunsch ist es, dass wir Firmware und Modul so erweitern, dass Du die Kanäle sehr flexibel als RGB, RGBW, RGBWW oder W nutzen kannst, und dafür einzelne Devices definierst, das ist dann glaubich genau das, was Du brauchst.

pj

AlexSchei

Moin!

Zitat von: pjakobs am 23 Mai 2017, 18:55:23
... oder W nutzen kannst, und dafür einzelne Devices definierst, ...

Die Funktion wäre der Hammer! Genau das bräuchte ich - dann hätte ich 5-6 Controller weniger im Einsatz!

Gruß
Alex
Intel Nuc mit Proxmox — KNX

Per

Zitat von: pjakobs am 23 Mai 2017, 18:55:23pause ist auch wirklich nur im queue Modus sinnvoll.
Also gehen tut pause, nur im Menü ist es nicht drin?! Habe mir aktuell mit DOIF wait geholfen.

Mit raw konnte ich die weissen Streifen ansprechen, ich hatte nur mal was gelesen von automatischer Mischung und so und war verwundert, dass das bei mir nicht passiert.

Das das mit dem "weiss" aktuell noch nicht geht, ist für mich verkraftbar, da ja abzusehen ist, dass es kommt. Und solange kann ich einen zweiten entbehren (weiss muss ich nicht faden, da kann ich 5x weiss dranhängen), hab ja auf Vorrat gekauft ;).

peble

Guten Abend,

gibt es die Möglichkeit den Controller per Fernbedienung mit verschiedenen Farben einzuschalten?
Ich denke da an eine einfache Möglichkeit für z.B. Kinderzimmer.

mit dem Befehl set LEDController on wird er ja mit den attr defaultColor und anderen Vorgaben eingeschalten 
kann ich dem on Befehl eine andere als defaultColor Farbe zufügen?
wenn ja könnte ich eine 8 Tasten Fernbedienung verwenden und 7 verschiedene Farben einschalten + eine Taste für aus.

Gibt es für den Controller auch Szenarien wie z.B Sonnenaufgang / Sonnenuntergang / oder andere Farbkombinationen?

Danke im Voraus



Cubietruck mit FHEM
1-Wire mit LinkUSBi / Com to 1Wire USB Adapter CUL 868 V3 von busware / ESA2000 Strommessung
Uniroll Gurtwickler über CUL 868 / verschiedeneFS 20 Geräte

pjakobs

Die beiden weiß Kanäle sind ja als Warmweiß und Kaltweiß definiert, ihre relative Helligkeit kannst Du mit dem colortemp Parameter setze. Die absolute gemeinsame Helligkeit über den val Wert.
Und ja, pause funktioniert.

Kurz da auf dem Telefon getippt


pjakobs

Zitat von: peble am 23 Mai 2017, 22:24:23
Guten Abend,

gibt es die Möglichkeit den Controller per Fernbedienung mit verschiedenen Farben einzuschalten?
Ich denke da an eine einfache Möglichkeit für z.B. Kinderzimmer.

mit dem Befehl set LEDController on wird er ja mit den attr defaultColor und anderen Vorgaben eingeschalten 
kann ich dem on Befehl eine andere als defaultColor Farbe zufügen?
wenn ja könnte ich eine 8 Tasten Fernbedienung verwenden und 7 verschiedene Farben einschalten + eine Taste für aus.

Gibt es für den Controller auch Szenarien wie z.B Sonnenaufgang / Sonnenuntergang / oder andere Farbkombinationen?

Danke im Voraus
Du kannst den Kontroller statt mit "on" einfach mit "set LED hsv..." einschalten und so den Farbwert direkt einstellen. Und auch Sonnen auf- und Untergänge sind leicht gemacht, Du kannst ja mehrere fades mit dem "q" flag zu einer Animation zusammenfügen.

pj

Kurz da auf dem Telefon getippt


peble

Hallo pj

Danke für die Antwort
funktioniert.

mir ist aufgefallen nach einem Neustart kommen bei mir folgende Einträge im LOG
ist das problematisch oder kann man das ignorieren?

2017.05.24 00:24:57 3: LED_Controller_1 DEBUG: doInternalReadingsUpdate: no hsv in cmd hash.
2017.05.24 00:24:57 3: LED_Controller_1 DEBUG: doInternalReadingsUpdate: no hsv in cmd hash.
2017.05.24 00:24:57 3: LED_Controller_1 DEBUG: doInternalReadingsUpdate: no hsv in cmd hash.

2017.05.24 00:26:08 3: LED_Controller_1 (Set) called with hsv, busy flag is 0
2017.05.24 00:26:08 3: LED_Controller_1 DEBUG: Internal hue - helper: 236 and direct: 50
2017.05.24 00:26:08 3: LED_Controller_1 (Set) called with hsv, busy flag is 0
2017.05.24 00:26:08 3: LED_Controller_1 DEBUG: Internal hue - helper: 236 and direct: 50
2017.05.24 00:26:14 3: LED_Controller_1 (Set) called with hsv, busy flag is 0
2017.05.24 00:26:14 3: LED_Controller_1 DEBUG: Internal hue - helper: 194 and direct: 50
2017.05.24 00:26:20 3: LED_Controller_1 (Set) called with hsv, busy flag is 0
2017.05.24 00:26:20 3: LED_Controller_1 DEBUG: Internal hue - helper: 125 and direct: 50
2017.05.24 00:26:21 3: LED_Controller_1 (Set) called with hsv, busy flag is 0
2017.05.24 00:26:21 3: LED_Controller_1 DEBUG: Internal hue - helper: 125 and direct: 50
2017.05.24 00:27:15 3: LED_Controller_1 (Set) called with off, busy flag is 0
2017.05.24 00:27:15 3: LED_Controller_1 DEBUG: Internal hue - helper: 125 and direct: 0
2017.05.24 00:27:15 3: LED_Controller_1 (Set) called with off, busy flag is 0
2017.05.24 00:27:15 3: LED_Controller_1 DEBUG: Internal hue - helper: 125 and direct: 0


auch wenn ich per Fernbedienung schalte kommt:


2017.05.24 22:35:44 3: LED_Controller_1 (Set) called with hsv, busy flag is 0
2017.05.24 22:35:44 3: LED_Controller_1 DEBUG: Internal hue - helper: 161 and direct: 50
2017.05.24 22:35:44 3: LED_Controller_1 (Set) called with hsv, busy flag is 0
2017.05.24 22:35:44 3: LED_Controller_1 DEBUG: Internal hue - helper: 161 and direct: 50
2017.05.24 22:35:48 3: LED_Controller_1 (Set) called with hsv, busy flag is 0
2017.05.24 22:35:48 3: LED_Controller_1 DEBUG: Internal hue - helper: 194 and direct: 50
2017.05.24 22:35:49 3: LED_Controller_1 (Set) called with hsv, busy flag is 1
2017.05.24 22:35:49 3: LED_Controller_1 DEBUG: Internal hue - helper: 194 and direct: 50


mein FHEM läuft auf einem Cubietruck mit Igor Image von 2014
Cubietruck mit FHEM
1-Wire mit LinkUSBi / Com to 1Wire USB Adapter CUL 868 V3 von busware / ESA2000 Strommessung
Uniroll Gurtwickler über CUL 868 / verschiedeneFS 20 Geräte

pjakobs

Soweit ich sehe, hast Du die verbosity auf 5 stehen (entweder am LED device oder global), dreh das mal runter auf 2.

Kurz da auf dem Telefon getippt


peble

Danke
Hatte global verbose auf 3
hab mal auf 2 runtergestellt jetzt sind die Einträge weg.
Kann das also ignoriert werden
Cubietruck mit FHEM
1-Wire mit LinkUSBi / Com to 1Wire USB Adapter CUL 868 V3 von busware / ESA2000 Strommessung
Uniroll Gurtwickler über CUL 868 / verschiedeneFS 20 Geräte

Pythonf

Ich habe eine Übergangslösung für die Farbtemperatursteuerung zwischen alle RGB LEDs bis hin zu rein WW LEDs.
Ich verwende den Kontroller mit einem RGBW 4in1 LED Streifen mit einer Warmweißen LED. Ich kann die Farbtemperatur über folgendes cmdalias steuern:
set RGBW_.* ct .* AS {
my $A = 1023-$EVTPART2;
my $B = $EVTPART2;
fhem("attr $EVTPART0 comment raw $A,$A,$A,$B,$B -- $EVENT");
fhem("set $EVTPART0 raw $A,$A,$A,$B,$B");
}

Ein Wert von 550 entspricht in etwa einem Wert von 6500K (im Vergleich zu Philips Hue) und ein Wert von 1023 in etwa 3000 K (Herstellerangabe). Wenn man noch die roten LED maximal dazu mischt erreicht man einen Wert von ca 2000K (ebenfalls im Vergleich zu Hue).
Eine exakte Berechnung der Farbtemperatur braucht sicherlich eine Kalibrierung der jeweiligen Leuchtmittel aber es wäre bestimmt ein schönes Feature des FHEM-Moduls, an welchem vielleicht noch andere Interesse hätten. Vielleicht kommt dann auch ein einfacheres "Alexa, mach das Licht im Wohnzimmer warmweiß"  ;)
Vielleicht hat ja noch jemand Interesse daran.
Grüße
Fabian

Pythonf

Sicherlich in keiner Weise Farbtechnisch korrekt, aber es funktioniert. Die Funktionen lassen sich nach eigenen Bedrüfnissen anpassen.
set RGBW_.* ct .* AS {

my $R = (-1.023 * $EVTPART2) + (3*1023);
my $WW = (-0.12775 * $EVTPART2) + (1406.25);
my $RGB = ( 0.25575* $EVTPART2 ) - 767.25 ;

if ($R > 1023) {$R = 1023};
if ($WW > 1023) {$WW = 1023};
if ($RGB > 1023) {$RGB = 1023};

if ($R < 0) {$R = $RGB};
if ($WW < 0) {$WW = 0};
if ($RGB < 0) {$RGB = 0};
$R = int($R);
$WW = int($WW);
$RGB = int($RGB);

fhem("set $EVTPART0 raw $R,$RGB,$RGB,$WW,$WW");
}

peble

Gibt es eine Möglichkeit bei dem Controller vordefinierte Farben mit einem Schalter durchzuschalten?
Das sollte doch mit DOIF möglich sein

ich habe folgendes versucht haut aber noch nicht hin evtl. hat jemand schon sowas am laufen oder eine andere Möglichkeit dafür

Was ich will: an einem Schalter (TRX_HOMEEASY) mehreren Farben nacheinander durchschalten bzw. auswählen

define LED_2 DOIF ([TRX_HOMEEASY:"on"] and [LedController LED_Controller_4 rgb:000000])
(set LED_Controller_4 rgb 2ed400)
DOELSEIF ([LedController LED_Controller_4 rgb:2ed400])
(set LED_Controller_4 rgb 00c9d4)
DOELSEIF ([LedController LED_Controller_4 rgb:00c9d4])
(set LED_Controller_4 rgb 0027d4)
DOELSEIF ([LedController LED_Controller_4 rgb:0027d4])
(set LED_Controller_4 rgb bb00d4)
DOELSEIF ([LedController LED_Controller_4 rgb:bb00d4])
(set LED_Controller_4 rgb d40000)
DOELSEIF ([LedController LED_Controller_4 rgb:d40000])
(set LED_Controller_4 rgb off)
Cubietruck mit FHEM
1-Wire mit LinkUSBi / Com to 1Wire USB Adapter CUL 868 V3 von busware / ESA2000 Strommessung
Uniroll Gurtwickler über CUL 868 / verschiedeneFS 20 Geräte

Per

Du musst den Schalter [TRX_HOMEEASY:"on"] and in jedem Zweig triggern:

define LED_2 DOIF ([TRX_HOMEEASY:"on"] and [LedController LED_Controller_4 rgb:000000])
(set LED_Controller_4 rgb 2ed400)
DOELSEIF ([TRX_HOMEEASY:"on"] and [LedController LED_Controller_4 rgb:2ed400])
(set LED_Controller_4 rgb 00c9d4)
DOELSEIF ([TRX_HOMEEASY:"on"] and [LedController LED_Controller_4 rgb:00c9d4])
(set LED_Controller_4 rgb 0027d4)
DOELSEIF ([TRX_HOMEEASY:"on"] and [LedController LED_Controller_4 rgb:0027d4])
(set LED_Controller_4 rgb bb00d4)
DOELSEIF ([TRX_HOMEEASY:"on"] and [LedController LED_Controller_4 rgb:bb00d4])
(set LED_Controller_4 rgb d40000)
DOELSEIF ([TRX_HOMEEASY:"on"] and [LedController LED_Controller_4 rgb:d40000])
(set LED_Controller_4 rgb off)


Und du sollst Code-Tags verwenden!

Wenn du das Licht bei jedem Zwischenschritt ausschalten willst, musst du die Farben Zwischenspeichern, weil er ja sonst immer bei 000000 anfängt.
Außerdem solltest du noch einen Zweig dafür nutzen, was passiert, wenn keine "glatten" Werte anliegen.

dolittle

Hallo,
jetzt habe ich mich auch mal mit dem Controller beschäftigt und mir sind zwei Dinge aufgefallen.


  • Der Controller erscheint immer disconnected. Ist das normal? Warum?
  • Das Device wird in FHEM nicht automatisch aktualisiert. Wenn ein Farbwerte gesetzt wird, bleibt das reading unverändert. Somit ist auch eine verlässliche "ist" Anzeige in der UI nicht möglich.

Hier ist die Definition meines Controllers
defmod gang.sideboard.light LedController gang-dim
attr gang.sideboard.light event-on-change-reading 1
attr gang.sideboard.light room Beleuchtung,Gang
attr gang.sideboard.light webCmd on:off


Könnt Ihr mir einen Tip geben, was ich falsch mache?

Vielen Dank im Voraus

Cybers

Zitat von: peble am 25 Oktober 2017, 22:45:30
Gibt es eine Möglichkeit bei dem Controller vordefinierte Farben mit einem Schalter durchzuschalten?
Das sollte doch mit DOIF möglich sein

ich habe folgendes versucht haut aber noch nicht hin evtl. hat jemand schon sowas am laufen oder eine andere Möglichkeit dafür

Was ich will: an einem Schalter (TRX_HOMEEASY) mehreren Farben nacheinander durchschalten bzw. auswählen

define LED_2 DOIF ([TRX_HOMEEASY:"on"] and [LedController LED_Controller_4 rgb:000000])
(set LED_Controller_4 rgb 2ed400)
DOELSEIF ([LedController LED_Controller_4 rgb:2ed400])
(set LED_Controller_4 rgb 00c9d4)
DOELSEIF ([LedController LED_Controller_4 rgb:00c9d4])
(set LED_Controller_4 rgb 0027d4)
DOELSEIF ([LedController LED_Controller_4 rgb:0027d4])
(set LED_Controller_4 rgb bb00d4)
DOELSEIF ([LedController LED_Controller_4 rgb:bb00d4])
(set LED_Controller_4 rgb d40000)
DOELSEIF ([LedController LED_Controller_4 rgb:d40000])
(set LED_Controller_4 rgb off)

@peble: mit Each kannst du das elegant lösen. Das hier ist mein DEF des Notify:
Taster4.3_sKurzerLangerDruck:partial_1 set LEDStripes_Schlafzimmer {(Each("LEDStripes_Schlafzimmer","on/RGB 9E5058/RGB 5E395C/RGB 4D330B/RGB ED8E00/RGB 56DB2E/RGB ED6002/RGB 753612/RGB 61A4AB/RGB 76ADA6/RGB 111461/RGB 4D1B46/RGB E3280B/RGB 46187A/HSV 60,62,100/HSV 180,62,100/HSV 300,62,100","/"))}

Gruß Sascha
FHEM 6.2 auf Raspberry PI 4 / Smartvisu
Eltako Serie 14: FAM14, FGW14-USB, FSB14, FSR14-4x, FSR14-2x, FDG14, FTS14-EM in Kombination mit Jung F50 24V Tastern
1-Wire Temperatursensoren
aus alter Zeit:
Gott sei Dank nur noch 3 Homematic Jalousie- & Schaltaktoren! Wer sich mit Funk auskennt, legt Kabel