Autor Thema: RGB Colorpicker  (Gelesen 4936 mal)

Offline NeuFehm

  • Full Member
  • ***
  • Beiträge: 190
RGB Colorpicker
« am: 01 März 2017, 12:32:08 »
Liebe FHEM-Fans,
ich möchte einen Colorpicker zunächst als Dummy bauen, aber er funktioniert nicht.
define RGBLampe dummy
attr RGBLampe room LED
attr RGBLampe webCmd rgb:rgb ff0000:rgb 00ff00:rgb 0000ff:toggle:on:off
attr RGBLampe widgetOverride RGB:colorpicker,RGB
define colorInit notify global:INITIALIZED {use Color}

Sieht jemand gleich den Fehler?
Raspberry Pi B+
RS 485 Schnittstellen: DIGITUS DA-70157, LINKSPTITE RS485/GPIO Shield for Raspberry Pi
RS485 Geräte: Ultraschallsensor für Zisternenfüllstand (Eigenbau), 4x8 Relais-M-Mastermodule (Eigenbau), 6 T-Module (Schalter und 3 analoge Eingänge) (Eigenbau)
sonstige Hardware: 2 Relay Modul

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 21328
Antw:RGB Colorpicker
« Antwort #1 am: 01 März 2017, 12:41:56 »
du brauchst ein setList attribut damit dein dummy ein rgb kommando bekommt und du musst im widgetOverride auch den kommando namen rgb verwenden statt RGB:attr RGBLampe setList rgb                             
attr RGBLampe widgetOverride rgb:colorpicker,RGB

bei einem dummy kannst du aber beides zusammen fassen und brauchst widgetOverride nicht:attr RGBLampe setList rgb:colorpicker,RGB
falls der rgb wert in ein rgb reading soll und nicht in state musst du noch readingList setzen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, …

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

Offline NeuFehm

  • Full Member
  • ***
  • Beiträge: 190
Antw:RGB Colorpicker
« Antwort #2 am: 01 März 2017, 12:45:00 »
Woher wusstest Du das es funktioniert ;)
Vielen DANK!!!
Raspberry Pi B+
RS 485 Schnittstellen: DIGITUS DA-70157, LINKSPTITE RS485/GPIO Shield for Raspberry Pi
RS485 Geräte: Ultraschallsensor für Zisternenfüllstand (Eigenbau), 4x8 Relais-M-Mastermodule (Eigenbau), 6 T-Module (Schalter und 3 analoge Eingänge) (Eigenbau)
sonstige Hardware: 2 Relay Modul

Offline NeuFehm

  • Full Member
  • ***
  • Beiträge: 190
Antw:RGB Colorpicker
« Antwort #3 am: 01 März 2017, 12:52:13 »
jetzt muss ich noch für das richtige Device (Eigenbau) eine classdef schreiben. Da ich bisher nur "on/off" -Fälle von Lampen hatte, denke ich, dass ich nun ein RGB-Commando einbinden muss in Form von:
set on cmd {hier der individuelle Befehl} # für das Anschalten...
set off cmd {hier der individuelle Befehl} # für das Ausschalten
set rgb cmd {hier der individuelle Befehl, der den Picker berücksichtigt} # für das Setzen der RGB-Werte

Stimmt meine Annahme?
LG Mirko
Raspberry Pi B+
RS 485 Schnittstellen: DIGITUS DA-70157, LINKSPTITE RS485/GPIO Shield for Raspberry Pi
RS485 Geräte: Ultraschallsensor für Zisternenfüllstand (Eigenbau), 4x8 Relais-M-Mastermodule (Eigenbau), 6 T-Module (Schalter und 3 analoge Eingänge) (Eigenbau)
sonstige Hardware: 2 Relay Modul

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 21328
Antw:RGB Colorpicker
« Antwort #4 am: 01 März 2017, 12:53:27 »
da ich dein device nicht kenne kann ich dir nicht sagen was du genau tun musst...
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, …

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

Offline NeuFehm

  • Full Member
  • ***
  • Beiträge: 190
Antw:RGB Colorpicker
« Antwort #5 am: 01 März 2017, 13:16:35 »
Verstehe ich.
Es ist ein Eigenbaudevice. Ich muss dem folgenden String in ASCII senden:
#T!ledabczx(13)(10)
# = Mastererkennung; T = T_Modul; ! = Busadresse
led = Helligkeit mit 255 Schritten aller Ausgänge
a = Helligkeit Ausgang 1
b =  Helligkeit Ausgang 2
c = Helligkeit Ausgang 3
z = Geschwindigkeit der Änderung von 0 bis 255
x = Funktionsbyte (bit1 aktiviert die Rückantwort, bit2 schaltet Ausgang ein)
(13)(10) = Abschlusszeichen

Also im Falle von "set rgb 75FF91"
Aus meiner Sicht also:
set rgb cmd {chr(35).chr(84).chr(33).chr(108).chr(101).chr(100).chr(117).chr(255.chr(145).chr(255).chr(255).chr(13).chr(10)}

Da ich aber die Werte noch dem Picker anpassen muss, denke ich eher an sowas:
set rgb cmd {chr(35).chr(84).chr(33).chr(108).chr(101).chr(100).chr(hex(substr(_$,0,2))).chr(hex(substr(_$,2,2))).chr(hex(substr(_$,4,2))).chr(255).chr(255).chr(13).chr(10)}

weiß aber auch nicht ob die _$ in dem Fall den rgb-Wert enthält?
Aber vlt. ist das auch ein neues Thema?
Raspberry Pi B+
RS 485 Schnittstellen: DIGITUS DA-70157, LINKSPTITE RS485/GPIO Shield for Raspberry Pi
RS485 Geräte: Ultraschallsensor für Zisternenfüllstand (Eigenbau), 4x8 Relais-M-Mastermodule (Eigenbau), 6 T-Module (Schalter und 3 analoge Eingänge) (Eigenbau)
sonstige Hardware: 2 Relay Modul

 

decade-submarginal