Homematic Sender + Aktor direkt peeren / regSet / shOnTime / shOnDly

Begonnen von Depechem, 29 April 2017, 19:42:09

Vorheriges Thema - Nächstes Thema

Depechem

Hallo, ich habe mal eine Frage zum direkten peeren von HM Modulen.

Ich möchte gern durch einen HM Sender(HM-RC-Sec4-2) einen HM-Aktor(HM-LC-Sw4-WM) spezielle Schaltmuster mit "regSet" Befehlen geben.
Habe beide gepeert und dannach beide in fhem eingebunden.

Nun meine eigentliche Frage:
Kann man durch einen Tastendruck des HM-Senders den Aktor "kurz einschalten" dann automatisch wieder "ausschalten" dann soll für eine bestimmte Zeit gewartet werden und dann soll der Aktor wieder kurz "ein" und wieder "ausschalten"

Das ganze habe ich damit probiert:
set Kanal 1 regSet shOnTime 0.5 Taste_1
set Kanal 1 regSet shOnDly 300 Taste_1
set Kanal 1 regSet shOnTime 0.5 Taste_1

leider klappt es aber nicht wie gewünscht. Beim Tastendruck geht sofort das " shOnDly" an (also der Aktor schaltet sich nicht ein sondern die Aktor LED blinkt für diese Zeit lang) nach der Zeit schaltet der Aktor wie gewünscht kurz ein und wieder aus(shOnTime 0.5)
wie bekomme ich es nun hin das der Aktor gleich am Anfang einmal einschaltet?

Vielen Dank im voraus
Gruß Thomas
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...

Pfriemler

Da sehe ich keine Lösung. Dein erstes und drittes regSet bewirken das gleiche, nämlich die Einschaltung auf 0.5s zu begrenzen. Programne kann man so nicht schreiben. Für zwei Einschaltvorgänge müsste die state machine zweimal durchlaufen werden. Es gibt zwar zwei davon in vielen Aktoren (long und short) und man könnte sozusagen einen Umweg darüber machen, aber auch das geht nicht. M.W.

"Ä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 ..."

chris1284

du könntest einen virtuellen button der vccu nutzen den du zusätzlich zum button der HM-RC-Sec4-2 mit dem aktor peeren musst

1. HM-RC-Sec4-2 sendet schort -> peered aktor geht für zeit x an (kann mit homematic boardmiteln geschehen)
2. dieser tastendruck lässt ein doif mit attribut wait x triggern welches dann nach den x sekunden den virtuellen button der ccu short pressed und der (auch mit dme vir. button peered) aktor geht wieder für zeit x an.


alternative zum doif einnotify welches ein at definiert

Pfriemler

nach einem FHEM-freien Wochenende :D

Zitat von: chris1284 am 30 April 2017, 07:57:27
2. dieser tastendruck lässt ein doif mit attribut wait x triggern welches dann nach den x sekunden den virtuellen button der ccu short pressed und der (auch mit dme vir. button peered) aktor geht wieder für zeit x an...
Den Steuerbefehl für den Aktor könnte das DOIF auch gleich erledigen, ohne den Umweg über den virtuellen Button.

Eine Alternative wäre, den virtuellen Button durch das DOIF mit einer geringen Verzögerung drücken zu lassen und die peer-Einstellungen für diesen virtuellen Button im Aktor anzupassen, also shOnDelay dafür zu setzen. Dann könnte FHEM in den folgenden 5 Minuten abstürzen und die Aktion würde trotzdem ausgeführt. ;D

Der verzögerte Einschaltbefehl darf aber vermutlich erst gesendet werden, wenn der sofort (per FB) aktivierte An-Status wieder beendet wurde, daher die "geringe Verzögerung". Umgekehrt beendet jedes anderweitige Schalten des Aktors die verzögerte Aktion vorzeitig.

Nun kann man sich anhand des Zielszenarios aussuchen, was optimal ist. Ich tippe mal auf Öffnungsbefehl für ein (Garagen-)tor mit automatischer Schließung nach 5 Minuten? Dafür wäre ein solches Konstrukt aber so oder so eher kontraproduktiv.

Ganz ohne Hilfe von FHEM, nur mit Registern, sehe ich da aber nach wie vor kein Land.

"Ä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 ..."

papa

Schon mal mit shOffTime probiert ?


shOnDly 0
shOnTime 0.5
shOffDly 0
shOffTime 300


Sollte er jetzt nicht die OffTime warten, bis wieder angeschalten wird ?
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

martinp876

Ihr setzt doch nur die Zeiten. Das ist notwendig, nicht hinreichend.
shSwJtOff on
shSwJtOnDly on

Usw. Einsteigerdoc lesen.
Ich rate dringend templates an

Pfriemler

ZitatSchon mal mit shOffTime probiert ?
Normalerweise unused = undendlich. Wird diese bspw. auf 300 gesetzt, wird der Aktor alle 300 Sekunden sich selbst einschalten. Aber  eben nicht nur einmal.
So könnte man einen selbsttätigen Blinker bauen: Tastendruck lässt Aktor blinken. Ausschalten mit einer anderen gepeerten Taste.

ZitatshSwJtOff on
überspringt den Einschaltverzögerer und schaltet sofort ein.
ZitatshSwJtOnDly on
gemeint ist sicher shSwJtDlyOn, aber das ist default on.
Was soll das bringen?

Nochmal: Das Ziel ist, auf einen short-Trigger kurz einzuschalten, zu warten und nochmal einmalig kurz einzuschalten. Das Template dafür möchte ich gern sehen!
"Ä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 ..."

papa

Hm - ich habe verstanden, dass das Problem die Verzögerung beim ersten Anschalten ist. Das nur exakt 2 mal geschaltet werden soll, habe ich so nicht rausgelesen. Das geht mit der Statemachine des HM-LC-Sw4-WM nicht.

Man könnte aber vielleicht zwei Kanäle zusammen schalten und dann unterschiedliche Delays für jeden Kanal verwenden. Also den Aktor mit Kanal1 und Kanal2 peeren und dann Kanal1 sofort anschalten für Zeit X. Der Kanal2 kriegt ein Delay von Y und schaltet dann auch für Zeit X ein.
BananaPi + CUL868 + CUL433 + HM-UART + 1Wire

Pfriemler

Zitat von: papa am 03 Mai 2017, 08:36:03
Man könnte aber vielleicht zwei Kanäle zusammen schalten und dann unterschiedliche Delays für jeden Kanal verwenden. Also den Aktor mit Kanal1 und Kanal2 peeren und dann Kanal1 sofort anschalten für Zeit X. Der Kanal2 kriegt ein Delay von Y und schaltet dann auch für Zeit X ein.
Das ist zwar sehr unkonventionell, aber bisher die beste Lösung ... dass ich nicht darauf gekommen bin ... 8)
"Ä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 ..."

Depechem

Zitat von: papa am 03 Mai 2017, 08:36:03
Hm - ich habe verstanden, dass das Problem die Verzögerung beim ersten Anschalten ist. Das nur exakt 2 mal geschaltet werden soll, habe ich so nicht rausgelesen. Das geht mit der Statemachine des HM-LC-Sw4-WM nicht.

Man könnte aber vielleicht zwei Kanäle zusammen schalten und dann unterschiedliche Delays für jeden Kanal verwenden. Also den Aktor mit Kanal1 und Kanal2 peeren und dann Kanal1 sofort anschalten für Zeit X. Der Kanal2 kriegt ein Delay von Y und schaltet dann auch für Zeit X ein.


Genau so habe ich es auch gemacht und läuft  ;-)
RaspberryPi2 / FHEM / 3 Wand-Tablets mit Tablet UI / HM USB / verschiedene HM-Aktoren / JeeLink USB für WS1600 und mehrere LaCrosse Sensoren / HEOS ...