HM-LC-SW4-WM sicher schalten: on-for-timer, regSet shOffTime

Begonnen von Motivierte linke Hände, 24 März 2015, 17:02:24

Vorheriges Thema - Nächstes Thema

Motivierte linke Hände

Hi,

auch nach vielem Lesen ist mir noch nicht ganz klar: Was ist denn nun die beste Methode, um sicherzustellen, dass eine per HM eingeschaltete Pumpe (an einem HM-LC-SW4-WM) auch nach einer bestimmten Zeit wieder ausgeht (auch wenn FHEM dann zufällig nicht laufen sollte oder die Funkübertragung trotz des bidirektionalen HM-Protokolls nicht funktionieren sollte, z.B. wg. Überschreitens der 1%-Regel)?

set <Schalter> on-for-timer? Oder läuft der Timer da in FHEM und nicht im Aktor?
set <Schalter> regSet shOffTime? Oder wird das Register nicht benutzt (in regList steht was von "unused"...)

Oder noch eine andere?

Danke, Christian
FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

Pfriemler

#1
1. "set <Schalter> on-for-timer x" ist ein FHEM-Befehl. Der wird so an den Aktor übermittelt, der Timer läuft im Aktor. Einmal geschickt, schaltet er auch sicher wieder aus.

2. Für alle direkt mit dem Aktor gepeerten HM-Sender (für jeden gibt es einen eigenen Registersatz im Aktor) solltest Du auf ein korrektes Setzen des betreffenden Registers "shOnTime" achten und ggf. auch "lgOnTime", falls der Aktor etwa bei Tasten auch auf Long reagiert. "Unused" heißt zunächst nur, dass das Register auf dem Maximalwert steht, es also keine Begrenzung der Einschaltzeit (deswegen auch "on") gibt.
Zu set <Schalter> regSet shOnTime gehören natürlich noch die Zeitdauer und der Peer (also der Senderkanal). Programmiert wird aber nur im Aktor. 

3. Als Rettungsschirm kannst Du außerdem einen Watchdog definieren, der den Aktor nach einer (kritischen) on-Zeit ausschaltet. So bliebe auch ein versehentliches "set <aktor> on" von der Befehlszeile dauerfolgenlos. Da HM-Aktoren ihren Zustand immer auch an FHEM weitermelden, funktioniert das auch bei direktem Einschalten etwa am Aktor selbst. Natürlich nur wenn FHEM läuft. Mögliche Nebenwirkung: Bei gezieltem Nachtriggern der Pumpe über die Zeitspanne des Watchdogs hinweg funkt dieser dann "dazwischen". Bei einem Aus- und wieder Einschalten der Pumpe wird der Watchdog zurückgesetzt.



"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Motivierte linke Hände

FHEM 6 in einer KVM VM mit Ubuntu
HM-CFG-USB2, 2xHM-CFG-HMLAN, HM-HMUARTLGW mit 100+ HomeMatic Devices, Geofencing, Fritzbox, Unifi, HUE, Harmony-Hub, Denon-Receiver-Modul, Calendar, GardenaSmartDevice, Shelly, MQTT (zigbee2mqtt, Tasmota und Shelly) und ein wenig 1Wire.

alexmetz

Eine Ergänzungsfrage:

wie kann ich in folgenden Fällen die Restdauer bis zum Ausschalten aus den auslesen:
a) ich habe "set <device> regset shOnTime 3600 self01" gesetzt und am Schalter angeschalten
b) ich habe über fhem "set <device> on-for-timer 3600" gesetzt.

Ich seh da nirgends einen Timer der runterzählt...
LG
Alex.
FHEM auf RaspberryPi 4
Homematic

wkarl

#4
Hallo Alex,
Das ist so. Du kommst nicht an den aktuellen Stand des Countdowns ran. Daher habe ich mir einen Countdown-Zähler programmiert und ihn gestern in die Rubrik Code-Schnipsel gestellt.

Edit: hier der link > http://forum.fhem.de/index.php/topic,39090.0.html

Ciao walter
FHEM 5.7 & TabletUI 2.2 auf Fedora22 Server auf NUC5i5RYK
CUL 868 > FAST EnergyCam
HMLAN > HomeMatic TCs & VDs, Bewegungsmelder, Schalter, Taster, Steckdosen

alexmetz

FHEM auf RaspberryPi 4
Homematic

Bartimaus

Hallo,

ich muss diesen Thread nochmal ausbuddeln. Gibt es eine zeitliche Begrenzung bei on-for-timer bei HomeMatic ? Bei FS20 geht max 4,5h also 16.200s.

LG
LG
B.


FHEM@AMD-Ryzen7-5700U@Debian-LXC (ProxmoxHOST), CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

frank

ich vermute den selben bereich, wie ein get regList bei den timern zeigt. wobei der letzte wert wohl unendlich (unused) bedeutet.
3: shOnTime         |   0 to 111600s     | required | on time special:unused

gibt es probleme? sonst einfach probieren.  :)

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Bartimaus

Ok, danke.

Ich habe ein "set <device> regset shOnTime 30 self02" im Device gesetzt (Aktor).

Ich habe erwartet, das der Aktor nun nach dem einschalten (aus FHEM) nach 30s selbstständig ausschaltet. Dies tut er aber nicht. Habe ich hier vielleicht etwas falsch verstanden ? Sorry, fange mit HM gerade erst an.

LG
B.


FHEM@AMD-Ryzen7-5700U@Debian-LXC (ProxmoxHOST), CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

frank

der ganze registersatz beschreibt das verhalten. und zwar genau für den peer, den du gesetzt hast. self02.

ZitatIch habe erwartet, das der Aktor nun nach dem einschalten (aus FHEM) nach 30s selbstständig ausschaltet.
fhem ist ja nicht self02!
vorhin hast du noch von on-for-timer gesprochen. das benutzt kein register, ist ein nativer befehl, der direckt umgestzt wird.
wenn du über fhem auch einen registersatz benutzen möchtest, musst du ein virtuellen button erzeugen und mit deinem aktor peeren. wenn du diesen dann schaltest (push) sind die registereinstellungen für diesen peer wirksam.
alles klar?
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Otto123

Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Bartimaus

#11
Ja, verstehe so langsam. Self02 ist also der Knopf2 am Aktor (HM-LC-SW4-DR) selber ?

Dh. wenn ich für diesen einen Timer von 1800s eintrage, geht der Aktor nach betätigen dieses Knopfes nach 1800s wieder eigenständig aus ? Unberührt davon ist ein Einschaltbefehl aus FHEM heraus?

Habt Ihr mal nen Link für nen virtuellen Button und wie man den mit dem Aktor verbindet ?

@Otto (`@OttoDanke)
Danke für den Link.


LG
B.


FHEM@AMD-Ryzen7-5700U@Debian-LXC (ProxmoxHOST), CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly

frank

ZitatDh. wenn ich für diesen einen Timer von 1800s eintrage, geht der Aktor nach betätigen dieses Knopfes nach 1800s wieder eigenständig aus ?
nochmal! der ganze registersatz ist zustandig, nicht nur dieser eine timer!!!.
du kannst es auch so einstellen, dass trotzdem dauerhaft eingeschaltet wird, ohne diesen timer zu nutzen.
deswegen kann man bei deiner frage nur spekulieren. antwort: wahrscheinlich ja.

ZitatUnberührt davon ist ein Einschaltbefehl aus FHEM heraus?
jaein!
wenn du während des aktiven timers aus fhem ein on sendest, bleibt der aktor natürlich auf on.
eine aktion ist immer abhängig vom augenblicklichen zustand einer einzigen zustandsmaschine. die letzte aktion setzt die zustandsmaschine auf einen neuen zustand und wird nach aktueller konfiguration abgearbeitet.
ein set on von fhem bedeutet eben dauerhaft on. 

ZitatHabt Ihr mal nen Link für nen virtuellen Button und wie man den mit dem Aktor verbindet ?
leg dir am besten gleich eine vccu an. die ist ausreichend genau beschrieben, wiki und forum, und du bekommst noch weitere coole features. verbinden=peeren.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Otto123

#13
Ergänzend zu Frank:
ich habe das an einer Steckdose probiert (der SW4 ist zu weit weg)
set SD3 regSet intKeyVisib visib
attr SD3 expert 1
set SD3 getConfig

Dann das Register für den Taster
set SD3 regSet shOnTime 10 self01
set SD3 getConfig


Das funktioniert, Taster gedrückt und Licht 10 sec an. Sowas habe ich  schon immer mal gesucht   8)

Aber klar, jeder andere Schaltbefehl ändert den Zustand wieder!

den getConfig Befehl braucht man nicht unbedingt, ging bei mir selbstständig.
Zurücksetzen kann man mit dem Wert 111600 oder unused

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Bartimaus

Danke für Deine Geduld. Der Groschen fällt...  ;D 
Für einen Nichtprogrammierer liest es sich manchmal etwas träger mit den von Euch genutzten Begrifflichkeiten. Da muss man erstmal durchblicken.

Das mit der VCCU teste ich mal, brauche ich aber wahrscheinlich nicht. Befehle aus FHEM heraus werde ich entweder mit "on-for-timer" senden, oder mit einem DOIF und wait-attribut. Befehle aus Tastern (am Aktor selber oder einem verbundenen Sender) werde ich einen eigenen "shOnTime" versehen.

Alles wird gut.
LG
B.


FHEM@AMD-Ryzen7-5700U@Debian-LXC (ProxmoxHOST), CUL1101,FS20,IT,DS18B20,DS2413(Heizungslogger),DS2423(Stromlogger)Homematic,HM-LAN,ZWave,MiniCULs,Shelly