Stehe auf dem Schlauch ... Homematic Taster zur Lichtszenenänderung

Begonnen von Oliver Lamm, 30 September 2017, 12:49:25

Vorheriges Thema - Nächstes Thema

Oliver Lamm

Hi,
ich habe einen Knoten im Kopf:

Ich habe einen Taster HM-PB-2-WM55-2 in FHEM über eine CCU2 eingebunden (erstmal ein Taster als    
HMCCUCHN):
defmod WZ.Esstischlampen HMCCUCHN NEQ1541054:1
attr WZ.Esstischlampen IODev CCU2
attr WZ.Esstischlampen ccureadingfilter (LOWBAT|UNREACH|PRESS)
attr WZ.Esstischlampen ccureadingformat datapoint
attr WZ.Esstischlampen group Schalter
attr WZ.Esstischlampen room Wohnzimmer
attr WZ.Esstischlampen statedatapoint PRESS_SHORT
attr WZ.Esstischlampen statevals press:true
attr WZ.Esstischlampen substitute 1|true:pressed


Ich sehe auch den Event im log wenn ich den Schalter drücke:

2017-09-30 12:47:15 HMCCUCHN WZ.Esstischlampen 1.PRESS_SHORT: pressed
2017-09-30 12:47:15 HMCCUCHN WZ.Esstischlampen pressed
2017-09-30 12:47:15 HMCCUCHN WZ.Esstischlampen hmstate: pressed


Nun habe ich verschiedene Lichtszenen, nennen wir sie mal LichtAus, Licht20, Licht50, Licht100.
Ich würde gerne über den Taster mit jedem Druck eine Szene weiterschalten, wenn Licht100 erreicht ist soll wieder LichtAus benutzt werden.
Wie geht man sowas sinnvoll an ?
Erste Idee war ein Zähler und den dann mit DoIF auswerten, geht das eleganter ?

Ratlos, Oli

amenomade

Ich würde es mit DOIF machen:
([WZ.Esstischlampen:"pressed"] and ([$SELF] eq  "cmd_4" or [$SELF] eq "initialized"))
  (set Licht10blabla)
DOELSEIF ([WZ.Esstischlampen:"pressed"] and [$SELF] eq  "cmd_1")
(set Lich20blabla)
DOELSEIF ([WZ.Esstischlampen:"pressed"] and [$SELF] eq  "cmd_2")
(set Licht50blabla)
DOELSEIF ([WZ.Esstischlampen:"pressed"] and [$SELF] eq  "cmd_3")
(set Lich100blabla)


...etwas in der Art.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Oliver Lamm