Hallo,
ich hatte so eine Idee, dass man doch über einen Lichtschalter (HM-Unterputz-Taster) jeweils ein anderes Gerät schalten kann, indem man entweder im ausgeschalteten Zustand nochmal auf aus oder im eingeschalteten Zustand nochmal auf ein schalten kann. Ist das überhaupt möglich oder bin ich da auf dem Holzweg?
Ich dachte mir so, ich schalte die Lampe an und wenn ich nochmals auf den Taster drücke, schalte ich damit eine andere Lampe an. Die Überlegung war, dass das DOIF gucken soll, ob die Lampe an ist und ob sie nochmal angeschaltet wird. Wenn dies der Fall ist, soll er eine andere Lampe einschalten. Nun ist für mich die Frage, ob für den DOIF der Zustand zählt, der vor dem ersten und auch zweiten Anschalten richtig erkennt, wenn man die aus an drückt oder ob er dann erst die Änderung wahrnimmt. Also angenommen die Lampe ist aus. Kann ich dem dann sagen, das er die zweite Lampe nicht einschalten soll, wenn die erste Lampe aus war und angeschalten wird?
Mit dem Ausschalten wollte ich das auch machen. Also wenn die Lampe aus ist und ich drücke nochmal auf den Ausschalter, soll er eine andere Lampe einschalten. Er soll sie aber nicht einschalten, wenn die Lampe an ist und ich sie aus schalte.
Hier die Lampen, mit denen ich das gerade teste.Internals:
.eventMapCmd an:noArg aus:noArg
CFGFN
DEF ([KZ_Kinderzimmerlicht] eq "on")(set KZ_Schreibtischlampe an)
DOELSEIF([KZ_Kinderzimmerlicht] eq "aus")()
MODEL FHEM
NAME Licht_KZ
NR 4638
NTFY_ORDER 50-Test_DOIF
STATE initialized
TYPE DOIF
.attraggr:
.attrminint:
READINGS:
2018-11-30 04:48:39 cmd 0
2018-11-30 04:48:39 mode enabled
2018-11-30 04:48:39 state initialized
Regex:
attr:
cmdState:
wait:
waitdel:
condition:
0 ::InternalDoIf($hash,'KZ_Kinderzimmerlicht','STATE') eq "on"
1 ::InternalDoIf($hash,'KZ_Kinderzimmerlicht','STATE') eq "aus"
devices:
0 KZ_Kinderzimmerlicht
1 KZ_Kinderzimmerlicht
all KZ_Kinderzimmerlicht
do:
0:
0 set KZ_Schreibtischlampe an
1:
0
2:
helper:
globalinit 1
last_timer 0
sleeptimer -1
internals:
0 KZ_Kinderzimmerlicht:STATE
1 KZ_Kinderzimmerlicht:STATE
all KZ_Kinderzimmerlicht:STATE
itimer:
uiState:
uiTable:
Attributes:
do always
group 99_Licht_an
icon helper_doif
room 99_DOIF
Internals:
.eventMapCmd an:noArg aus:noArg
.triggerUsed 1
CUL_868_MSGCNT 415
CUL_868_RAWMSG A0E5580025F7DF6FA26BE0101C80050::-82.5:CUL_868:
CUL_868_RSSI -82.5
CUL_868_TIME 2018-11-30 04:36:44
DEF 5F7DF6
IODev CUL_868
LASTInputDev CUL_868
MSGCNT 415
NAME KZ_Kinderzimmerlicht
NOTIFYDEV global
NR 104
NTFY_ORDER 50-KZ_Kinderzimmerlicht
STATE an
TYPE CUL_HM
lastMsg No:55 - t:02 s:5F7DF6 d:FA26BE 0101C80050
protLastRcv 2018-11-30 04:36:44
protRcv 415 last_at:2018-11-30 04:36:44
protSnd 421 last_at:2018-11-30 04:36:44
protState CMDs_done
rssi_CUL_868 cnt:363 min:-96 max:-73 avg:-79.76 lst:-80
rssi_at_CUL_868 cnt:415 min:-99.5 max:-77 avg:-82.21 lst:-82.5
.attraggr:
.attrminint:
READINGS:
2018-11-30 04:36:44 .protLastRcv 2018-11-30 04:36:44
2018-11-30 04:36:44 CommandAccepted yes
2018-11-30 04:36:44 deviceMsg on (to VCCU)
2018-11-30 04:36:44 level 100
2018-11-30 04:36:44 pct 100
2018-11-30 04:36:44 recentStateType ack
2018-11-30 04:36:44 state on
2018-11-30 04:36:44 timedOn off
helper:
HM_CMDNR 85
cSnd 11FA26BE5F7DF60201C80000,11FA26BE5F7DF60201C80000
dlvlCmd ++A011FA26BE5F7DF60201C80000
mId 0069
peerIDsRaw ,00000000
regLst ,0,1,3p
rxType 1
supp_Pair_Rep 0
expert:
def 1
det 0
raw 1
tpl 0
io:
lstRecType 02
newChn +5F7DF6,00,03,00
nextSend 1543549004.77139
nxtSndMcnt 55
prefIO
rxt 0
tgtDly 88
vccu VCCU
lRcTm:
CUL_868 115551312
tnms 582003605
p:
5F7DF6
00
03
00
mRssi:
mNo 55
io:
CUL_868:
-76
-76
prt:
bErr 0
sProc 0
rspWait:
q:
qReqConf
qReqStat
role:
chn 1
dev 1
prs 1
rssi:
CUL_868:
avg -79.7658402203857
cnt 363
lst -80
max -73
min -96
at_CUL_868:
avg -82.2132530120482
cnt 415
lst -82.5
max -77
min -99.5
shadowReg:
tmpl:
Attributes:
IODev CUL_868
IOgrp VCCU
alexaName Kinderzimmerlicht
alexaRoom Kinderzimmer
alias Kinderzimmerlicht
autoReadReg 4_reqStatus
devStateIcon an:rc_GREEN:aus aus:rc_RED:an offline:rc_BLUE:aus
eventMap on:an off:aus
expert 2_raw
firmware 2.8
fp_Diabeck 32,841,1,Kinderzimmerlicht,
fp_Kinderzimmer 193,448,1,Kinderzimmerlicht
genericDeviceType switch
group 02_Kinderzimmer
icon light_ceiling
model HM-LC-Sw1PBU-FM
peerIDs 00000000,
room 00_Diabeck,02_Kinderzimmer,50_Licht,90_Deckenlicht,99_Alles_ein_aus,Alexa,CUL_HM
serialNr OEQ1157776
subType switch
webCmd an:aus
Internals:
.autoSubscribeExpr ^[^/]+\/KZ_Schreibtischlampe\/([^/]+)$
.autoSubscribeTopic +/KZ_Schreibtischlampe/+
.eventMapCmd an:noArg aus:noArg
IODev myBroker
NAME KZ_Schreibtischlampe
NR 115
STATE aus
TYPE MQTT_DEVICE
.attraggr:
.attreocr:
.*
.attrminint:
.qos:
* 0
.retain:
* 0
READINGS:
2018-11-30 04:36:48 ERGEBNIS {"POWER":"OFF"}
2018-11-23 19:46:28 INFO1 {"Module":"Sonoff Basic","Version":"5.10.0f","FallbackTopic":"DVES_807ED8","GroupTopic":"sonoffs"}
2018-11-23 19:46:28 INFO2 {"WebServerMode":"Admin","Hostname":"KZ_Schreibtischlampe-7896","IPAddress":"192.168.52.24"}
2018-11-23 19:46:28 INFO3 {"RestartReason":"Hardware Watchdog"}
2018-11-30 04:02:00 LAUFZEIT {"Zeit":"2018.11.30 04:02:00","Laufzeit":153}
2018-11-29 22:02:00 LWT online
2018-11-30 04:36:48 POWER OFF
2018-11-30 04:48:21 STATUS {"Zeit":"2018.11.30 04:48:20","Laufzeit":153,"VCC":3.148,"POWER":"OFF","WLAN":{"AP":2,"SSID":"DIABECK","RSSI":88,"AP-Mac":"44:4E:6D:1F:D2:47"}}
2018-11-30 04:36:48 state off
2018-11-30 04:48:21 transmission-state incoming publish received
message_ids:
publishSets:
:
topic cmnd/KZ_Schreibtischlampe/POWER
values:
on
off
sets:
off
on
subscribe:
+/KZ_Schreibtischlampe/+
stat/KZ_Schreibtischlampe/ERGEBNIS
tele/KZ_Schreibtischlampe/INFO1
tele/KZ_Schreibtischlampe/INFO2
tele/KZ_Schreibtischlampe/INFO3
tele/KZ_Schreibtischlampe/LAUFZEIT
tele/KZ_Schreibtischlampe/LWT
cmnd/KZ_Schreibtischlampe/POWER
tele/KZ_Schreibtischlampe/STATUS
stat/KZ_Schreibtischlampe/POWER
subscribeExpr:
^[^/]+\/KZ_Schreibtischlampe\/([^/]+)$
^stat\/KZ_Schreibtischlampe\/ERGEBNIS$
^tele\/KZ_Schreibtischlampe\/INFO1$
^tele\/KZ_Schreibtischlampe\/INFO2$
^tele\/KZ_Schreibtischlampe\/INFO3$
^tele\/KZ_Schreibtischlampe\/LAUFZEIT$
^tele\/KZ_Schreibtischlampe\/LWT$
^cmnd\/KZ_Schreibtischlampe\/POWER$
^tele\/KZ_Schreibtischlampe\/STATUS$
^stat\/KZ_Schreibtischlampe\/POWER$
subscribeQos:
+/KZ_Schreibtischlampe/+
cmnd/KZ_Schreibtischlampe/POWER 0
stat/KZ_Schreibtischlampe/ERGEBNIS 0
stat/KZ_Schreibtischlampe/POWER 0
tele/KZ_Schreibtischlampe/INFO1 0
tele/KZ_Schreibtischlampe/INFO2 0
tele/KZ_Schreibtischlampe/INFO3 0
tele/KZ_Schreibtischlampe/LAUFZEIT 0
tele/KZ_Schreibtischlampe/LWT 0
tele/KZ_Schreibtischlampe/STATUS 0
subscribeReadings:
cmnd/KZ_Schreibtischlampe/POWER:
cmd
name POWER
stat/KZ_Schreibtischlampe/ERGEBNIS:
cmd
name ERGEBNIS
stat/KZ_Schreibtischlampe/POWER:
cmd
name POWER
tele/KZ_Schreibtischlampe/INFO1:
cmd
name INFO1
tele/KZ_Schreibtischlampe/INFO2:
cmd
name INFO2
tele/KZ_Schreibtischlampe/INFO3:
cmd
name INFO3
tele/KZ_Schreibtischlampe/LAUFZEIT:
cmd
name LAUFZEIT
tele/KZ_Schreibtischlampe/LWT:
cmd
name LWT
tele/KZ_Schreibtischlampe/STATUS:
cmd
name STATUS
Attributes:
IODev myBroker
alexaName Schreibtischlampe
alexaRoom Kinderzimmer
alias Schreibtischlampe
autoSubscribeReadings +/KZ_Schreibtischlampe/+
devStateIcon an:rc_GREEN:aus aus:rc_RED:an offline:rc_BLUE:aus
event-on-change-reading .*
eventMap on:an off:aus
fp_Diabeck 15,1051,1,Mucke,
fp_Kinderzimmer 84,839,1,Mucke
genericDeviceType light
group 02_Kinderzimmer
icon light_office
publishSet on off cmnd/KZ_Schreibtischlampe/POWER
room 00_Diabeck,02_Kinderzimmer,99_Alles_ein_aus,99_MQTT,Alexa
stateFormat {ReadingsVal($name,"LWT","") eq "offline" ? "offline" : ReadingsVal($name,"state","")}
subscribeReading_ERGEBNIS stat/KZ_Schreibtischlampe/ERGEBNIS
subscribeReading_INFO1 tele/KZ_Schreibtischlampe/INFO1
subscribeReading_INFO2 tele/KZ_Schreibtischlampe/INFO2
subscribeReading_INFO3 tele/KZ_Schreibtischlampe/INFO3
subscribeReading_LAUFZEIT tele/KZ_Schreibtischlampe/LAUFZEIT
subscribeReading_LWT tele/KZ_Schreibtischlampe/LWT
subscribeReading_POWER stat/KZ_Schreibtischlampe/POWER
subscribeReading_STATUS tele/KZ_Schreibtischlampe/STATUS
webCmd an:aus
Ich habe da schon allerhand gelesen, verstehe verschiedene Dinge aber leider doch noch nicht so richtig. Zum Beispiel was ein Reading oder ein Event ist, ob ich state oder STATE angeben muss, ob ich on, ON oder an schreiben soll und das selbe mit off, OFF und aus. Ich fand das nun toll, dass man die Befehle in Deutsch sehen kann. Nun bin ich aber im Zweifel, ob es nicht vielleicht besser ist, alles auf Englisch zu lassen, um dieses Rätsel schon mal ausschließen zu können.
Auch verschiedene Schreibweisen habe ich schon probiert. Ich nehme mir Vorlagen, die für mich passen, verändere die auf meine Bedürfnisse und probiere das meist s lange, bis es funktioniert. Aber hier komme ich irgendwie nicht weiter. Ich vermute auch, dass das, was ich gerade versuche, vielleicht gar nicht möglich ist.
Gruß jw1hal
Deine Idee sollte mittels sequence recht schnell umgesetzt werden können.
help sequence in FHEMWEB eingeben
Zitatstate oder STATE
STATE ist ein Internals, dessen Wert Du mit Value([Devicename]) erhältst.
state ist ein Readings, dessen Wert Du mit Readingsval(...) erhälst.
Das sollte alles im Einsteigerdokument zu finden sein. Beim DOIF sieht der Syntax etwas anders aus.
Ich würde hier erstmal mit einem notify anfangen.
Wenn das Event Taster ein gedrückt, dann prüfe ob Lampe x an war (Oldreading vermute ich) und reagiere entsprechend.
Ich peere Schalter und Lampen, so dass auch ohne FHEM das Licht schaltbar ist.
Zitat von: CoolTux am 30 November 2018, 08:08:46
help sequence in FHEMWEB eingeben
Danke Leon!
Jetzt nutze ich FHEM mittlerweile 3,5 Jahre aber diesen einfachen Weg zur Hilfe kannte ich noch nicht. :-)
Hallo,
ich habe bei mir das schalten verschiedener Lampen über einen kurzen oder langen Tastendruck gelöst, bei Homematic über Direktverknüpfung leicht zu lösen.
Gruß Rolf
Hi,
Wenn der HM Unterputz Taster in Wirklichkeit ein Aktor ist,wird es schwierig. Die Tasten werden nicht an fhem signalisiert sondern der Status. Der kommt mit gewollter, zufälliger Verzögerung.
Gruß Otto
Hallo,
da ich ja nun auf Grund neuer Ideen mehrere Baustellen habe und man auch so noch was zu tun hat, geht nur eines nach dem Anderen. Ich habe mich nun mit dem "sequence" eine ganze Weile beschäftigt, aber nun so viel herum probiert und so viel getestet, dass ich gar nicht mehr weiß, was das alles war. Es führte jedenfalls alles nicht zum Erfolg, so dass ich dies wieder verwarf.
Nun bin ich am Testen mit den kurzen und langen Tastendruck. Ich weiß nicht, ob das überhaupt geht.
Ausgangspunkt ist ja (ich weiß nicht, ob dies schon deutlich wurde) ein "HM-LC-Sw1PBU-FM" mit dem ich einen anderen "HM-LC-Sw1PBU-FM" nur EINschalten möchte, wenn ich nochmal, also nach dem das Licht an ist, oder von mir aus auch lange auf den Schalter drücke.
Ich beschreibe die Örtlichkeiten. Es handelt sich um das Bad, bei dem es zwei "HM-LC-Sw1PBU-FM" gibt, mir denen man das Raumlicht und den Spiegelschrank einschaltet. Der Schalter für das Raumlicht befindet sich im Flur. Man schaltet das Licht beim Betreten des Raumes an und beim Verlassen des Raumes wieder aus. Der zweite Schalter befindet sich hinter/neben dem WC und schaltet den Spiegelschrank über dem Waschbecken an und aus. Nun ist die Überlegung, wenn man gerade da sitzt und just in dem Moment das Badlicht aus geht, weil es jemand von aussen aus Versehen ausschalten könnte, der eigentlich das Flurlicht ausschalten wollte, aber nun den falschen Schalter erwischt hat oder weil irgendein Timer eben gerade aktiv geworden ist, weil Raumlichter nach 3 Stunden ausgehen (der wird es wohl nicht sein) und alles um Punkt 23 Uhr aus geht, dass man mit dem in greifbarer Nähe gelegen Schalter (eben der vom Spiegelschrank) einfach das Badlicht wieder einschalten könnte, indem man entweder 2x an drückt oder lange an drückt. 2x an, geht eben der Spiegelschrank an und den macht man wieder aus und lange drücken, wäre eigentlich noch besser.
Das selbe möchte ich mit dem selben Schalter machen, nur mit dem Ausschalter, also 2x aus oder lange aus, schaltet den Boost der Heizung an. So braucht man nicht erst die Tastensperre des Thermostates entfernen, die Boosttaste drücke und die Tastensperre wieder rein machen.
Nun bin ich wieder fast überzeugt, dass die erste Variante mit dem Licht vielleicht doch direkt von Schalter zu Schalter geht und die Zweite mit der Heizung dann eben mit DOIF oder Notify.
Ich hatte schon mal etwas getestet, aber mit langen Druck leider noch nichts hinbekommen.
So ist es dann passiert, dass ich beim vielen Suchen und Lesen auch auf die Idee gekommen bin die Timer auch direkt in die Schalter zu integrieren. Dabei bin ich aber auch auf ein erneutes Problem gestoßen und vermute, dass dies nur greift, wenn man am Schalter direkt schaltet. Schaltet man über Fhem, geht dieser Timer nicht. Mir ist auch nicht ganz klar was die 4 Schalter nun genau sind und ob man den Timer nur bei einen setzen braucht oder bei allen 4 setzen muss, wie es in einigen Anleitungen bzw. diesem Wiki (https://wiki.fhem.de/wiki/HM-LC-Sw1PBU-FM_Unterputz-Schaltaktor_1-fach) zu lesen ist.
set <device> regSet shOnTime 600 self01
set <device> regSet lgOnTime 600 self01
set <device> regSet shOnTime 600 self02
set <device> regSet lgOnTime 600 self02
Da ich den Timer für kurzen drücken habe möchte und ihm nur für EINschalten brauche, benötigt man sicher nur eine der vier Einstellungen. Aber welche? sh für short = kurz und lg für long = lang ist auch klar. Da müsste ich sh nehmen. Aber ist der EIN-Schalter nun self01 oder self02? Das sind so Dinge, die man nirgendwo so wirklich zu lesen bekommt.
Und genau das hatte ich schon begonnen, aber nicht zu ende getestet. Und da wollte ich nun als Nächstes weiter machen.
Das war dann erst Mal der Zwischenstand, nicht dass es dann heißt, die Fragen nur und melden sich dann nie wieder.
Gruß jw1hal
Guten Abend,
ohne das ich jetzt alles verstanden habe, folgende Grundinfo:
Die Taster sind nicht nach außen abgreifbar, die wirken nur direkt und intern. Nach außen siehst Du den Aktor und nicht die Taster!!!
Dies, obwohl bei HM immer so getan wird als ob die Taster separat sind und mit dem Aktor gepeert sind. Die gepeerten Taster sind self01 und self02.
Ein Aktor hält für jeden Peer extra einen Satz Register, so auch für self01 und self02. Ein Timer den Du dort setzt (oder andere Register von diesem Satz) wirken nur bei Betätigung von diesem Peer.
FHEM ist kein Peer, FHEM hat also keinen Registersatz in dem Aktor.
FHEM kann aber virtuelle Tasten liefern und diese kann man mit dem Aktor peeren.
Du kannst in FHEM direkt steuern oder über diese virtuellen Taster.
War das halbwegs verständlich?
Gruß Otto
Guten Abend,
ehrlich gesagt, NEIN! :-)
Das geht schon los, was ist ein Aktor und was sind die Taster? Wenn ich das Ding aus der Wand nehme, ist das ein Plaste-Klumpen mit ein paar Anschlüssen und nen Loch für die Wippe. Das Loch mit der beinhaltet einen bzw. zwei Taster mit 2 Schaltmöglichkeiten. Bei diesen Grundbegrifflichkeiten geht es immer schon los. Es wird von Aktoren und Tastern gesprochen, so als wenn es zwei verschiedene Dinge sind. Ich habe aber das Gefühl, dass dies Aktor und Taster in einem ist.
Wenn ich also etwas in dem Aktor/Schalter/Taster (wie auch immer man das Ding nun korrekt bezeichnet) in den Registern einstelle, funktioniert das auch nur, wenn ich die Wippe betätige. Soweit habe ich das verstanden.
Wird etwas von Fhem geschalten, zum Beispiel wenn ich die Gruppe Licht an- oder ausschalten möchte, der dieser Schalter angehört, dann ziehen diese im Schalter gesetzten Register nicht.
Hab ich also einen Timer im Schalter gesetzt, funktioniert er, wenn ich direkt den Schalter betätige, aber nicht wenn etwas von Fhem kommt.
Habe ich hingegen einen Timer in Fhem für diesen Schalter, dann funktioniert er, wenn ich den Schalter von Fhem aus betätige und auch wenn ich die Wippe des Schalters betätige.
Soweit ist das für mich klar, wenn ich´s nun richtig verstanden habe.
Also lasse ich die Timer dann doch lieber in Fhem.
Wie kann ich es nun machen oder ist es überhaupt möglich, dass ich mit einem "HM-LC-Sw1PBU-FM" einen anderen Schalte, aber dann auch nicht beide gleichzeitig schalte? So hatte ich mir gedacht, 1x AN drücken Licht an und nochmal 1x AN drücken (obwohl schon an ist; müsste also geprüft werden) zweiten Schalter Licht anschalten. Oder eben mit lange drücken.
Wie kann ich also prüfen, ob das Licht beim nochmaligen Einschalten bereits an war?
Oder müsste man das anders lösen?
Oder geht es gar nicht?
Hallo jw1hal,
das was du vorhast habe ich bei einer Markisen/Rollladenschaltung realisiert. Als Hinweis noch, ich habe zusätzlich noch eingebaut, dass die "Handschaltung" nach einer bzw. zwei Stunden wieder in den Automatikmodus zurückkehrt.
Nachzulesen, inkl. der Definitionen hier:
https://forum.fhem.de/index.php/topic,73127.msg647871.html#msg647871 (https://forum.fhem.de/index.php/topic,73127.msg647871.html#msg647871)
Viel Spaß beim Grübeln ;) und viele Grüße
Gisbert
Moin,
dann versuch ich nochmal anders. Die "Logik" von Homematic kennt ganz grob Sensoren (dazu zählen auch Taster) und Aktoren (das sind die Teile die etwas ausführen z.B. Schalten)
Dein Teil ist (richtig erkannt) zwei Dinge in einem!
Für Deinen Anwendungsfall wäre es gut Du hättest sie getrennt, denn Du willst den Sensor (Taster) unabhängig vom Aktor auswerten. Homematic (die Entwickler) waren leider so, sie haben diese beiden Teile aber direkt zusammengebracht und diese getrennte Auswertung nicht nach außen geführt. Du kannst den Taster nur über den Umweg der Reaktion des Aktors auswerten. Du musst Dir einfach mal noch ein paar Fernbedienungen (Taster) zulegen, experimentieren - dann wird es klarer.
ZitatHabe ich hingegen einen Timer in Fhem für diesen Schalter, dann funktioniert er, wenn ich den Schalter von Fhem aus betätige und auch wenn ich die Wippe des Schalters betätige.
Soweit ist das für mich klar, wenn ich´s nun richtig verstanden habe.
Also lasse ich die Timer dann doch lieber in Fhem.
Die letzte Schlussfolgerung ist nicht sinnvoll, der erste Satz ist falsch (oder Du meinst was Anderes): In FHEM setzt Du on-for-timer an der Wippe wirkt der gesetzte Timer im Register.
Schlussendlich, was Du machen willst geht nur mit Einschränkungen. Ich will Dir nur helfen diese Einschränkungen zu verstehen. :D
Gruß Otto
Hallo
Du hättest noch die Möglichkeit die Firmware zu ändern, da kursiert eine die Taster und Aktor getrennt zur Verfügung stellt. Ist aber nicht ganz so einfach.
Rolf
@Gisbert
Das werde ich mir mal in aller Ruhe anschauen, weil es bissel viel bzw. mit zu vielen anderen Dingen verbunden ist. Danke
@Otto123
Zitat von: Otto123 am 03 Dezember 2018, 09:28:29Die letzte Schlussfolgerung ist nicht sinnvoll, der erste Satz ist falsch (oder Du meinst was Anderes): In FHEM setzt Du on-for-timer an der Wippe wirkt der gesetzte Timer im Register.
Damit meinte ich nicht den on-for-timer, sondern das:
Internals:
DEF ([BW_Badlicht] eq "an") (set BW_Badlicht aus)
DOELSEIF ([BW_Badlicht] eq "aus") ()
MODEL FHEM
NAME BW_Badlicht_timer
NR 120
NTFY_ORDER 50-BW_Badlicht_timer
STATE cmd_2
TYPE DOIF
.attraggr:
.attrminint:
READINGS:
2018-12-03 13:13:02 Device BW_Badlicht
2018-11-08 06:38:03 cmd 2
2018-11-08 06:38:03 cmd_event BW_Badlicht
2018-11-08 06:38:03 cmd_nr 2
2018-12-03 13:13:02 e_BW_Badlicht_STATE aus
2018-12-02 10:09:28 mode enabled
2018-12-02 10:09:28 state cmd_2
2018-12-03 05:42:21 wait_timer no timer
Regex:
attr:
wait:
0:
10800
1:
0
waitdel:
condition:
0 ::InternalDoIf($hash,'BW_Badlicht','STATE') eq "an"
1 ::InternalDoIf($hash,'BW_Badlicht','STATE') eq "aus"
devices:
0 BW_Badlicht
1 BW_Badlicht
all BW_Badlicht
do:
0:
0 set BW_Badlicht aus
1:
0
2:
helper:
event deviceMsg: aus (to VCCU),level: 0,pct: 0,aus,timedOn: aus
globalinit 1
last_timer 0
sleepdevice BW_Badlicht
sleepsubtimer 0
sleeptimer -1
timerdev BW_Badlicht
timerevent deviceMsg: aus (to VCCU),level: 0,pct: 0,aus,timedOn: aus
triggerDev BW_Badlicht
timerevents:
deviceMsg: aus (to VCCU)
level: 0
pct: 0
aus
timedOn: aus
timereventsState:
deviceMsg: aus (to VCCU)
level: 0
pct: 0
state: off
timedOn: aus
triggerEvents:
deviceMsg: aus (to VCCU)
level: 0
pct: 0
aus
timedOn: aus
triggerEventsState:
deviceMsg: aus (to VCCU)
level: 0
pct: 0
state: off
timedOn: aus
internals:
0 BW_Badlicht:STATE
1 BW_Badlicht:STATE
all BW_Badlicht:STATE
itimer:
perlblock:
readings:
trigger:
uiState:
uiTable:
Attributes:
group 99_Timer
icon helper_doif
room 80_Timer,99_DOIF
wait 10800:0
@rvideobaer
Das traue ich mir generell zu, jedoch mache ich so etwas, je nach Fall, ungern und probiere dann doch erst die "normalen" Möglichkeiten auszureizen. Also nur wenn etwas absolut gar nicht geht, ich es aber unbedingt haben will und es eben keinen Weg daran vorbei gibt, mache ich es, wenn du verstehst, wie ich es meine.
So war es zum Beispiel bei den Sonoff´s. Die habe ich gekauft und sofort die andere Firmware drauf gemacht, weil ich unter keinen Umständen den Umweg über China (oder wo auch immer die dann hin telefonieren) machen möchte.
Oder letztens den 868erCUL, weil da was mit der Verschlüsselung der optischen HM-Fensterkontakte war. Da bin ich mir aber noch nicht ganz sicher ...