FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: micomat am 28 August 2023, 20:44:12

Titel: HM-PB-2-WM55 Doppelklick?
Beitrag von: micomat am 28 August 2023, 20:44:12
Hallo zusammen,

ich möchte gerne einen hm-pb-2-wm55 nutzen um:
1 short: Rollo Runter
2 short: Rollo hoch
1 long: Markise runter
2 long: Markise hoch

Wenn ich jetzt aber den Rollo stoppen will, fehlt mir ein drittes "Event". Ich dachte an den Doppelklick, es scheint aber, dass der hm-pb-2-wm55 das nicht kann?
Oder hat jemand eine Idee, die mir dieses dritte Event darstellen könnte?

Danke
Markus
Titel: Aw: HM-PB-2-WM55 Doppelklick?
Beitrag von: frank am 28 August 2023, 20:59:16
wenn der taster mit hm aktoren gepeert wäre, kann man ein stop durch erneutes drücken der taste realisieren.
Titel: Aw: HM-PB-2-WM55 Doppelklick?
Beitrag von: micomat am 29 August 2023, 09:05:12
Das ist aber hier leider nicht der Fall
Titel: Aw: HM-PB-2-WM55 Doppelklick?
Beitrag von: Otto123 am 29 August 2023, 13:20:27
Auszug Eventmonitor
2023-08-29 13:13:35 CUL_HM TasterDIS_Btn_02 Long 1_11 (to xxx)
2023-08-29 13:13:36 CUL_HM TasterDIS_Btn_02 Long 2_11 (to xxx)
2023-08-29 13:13:39 CUL_HM TasterDIS_Btn_02 Long 1_12 (to xxx)
2023-08-29 13:13:39 CUL_HM TasterDIS_Btn_02 Long 2_12 (to xxx)
2023-08-29 13:13:39 CUL_HM TasterDIS_Btn_02 Long 3_12 (to xxx)

Triggerst Du auf DeinTaster:Long.3_.* oder DeinTaster:Long.5_.* - falls das einer wirklich bedienen kann :)

Zitat von: micomat am 29 August 2023, 09:05:12Das ist aber hier leider nicht der Fall
Die Frage ist warum nicht: Markise, HM - klingt nach Jalousie Aktor und alles wäre gut.
Titel: Aw: HM-PB-2-WM55 Doppelklick?
Beitrag von: micomat am 31 August 2023, 12:16:54
Zitat von: Otto123 am 29 August 2023, 13:20:27
Zitat von: micomat am 29 August 2023, 09:05:12Das ist aber hier leider nicht der Fall
Die Frage ist warum nicht: Markise, HM - klingt nach Jalousie Aktor und alles wäre gut.


Weil die Markise via KLF200 (SomfyIO) über Funk gesteuert wird :)
Titel: Aw: HM-PB-2-WM55 Doppelklick?
Beitrag von: Pfriemler am 13 September 2023, 11:38:32
Spät, aber nicht minder herzlich: Mit "sequence" kann man sowas wunderbar machen:

defmod seqMoveEGRightBlindUp sequence Wz6TasterRightDown:Short.* 2 :Short.* 2 :Short.*erzeugt ein Event, wenn der betreffende Taster dreimal mit einem Abstand von höchstens zwei Sekunden gedrückt wird.
Entsprechend fährt:
defmod nfyEGWzRolloRechtsWandtaster notify seqMoveEGRightBlindUp.* set RolloEGWzReDF dawndas Rollo nach oben, wenn der Taster, mit dem ich das Deckenlicht ausschalten und dimmen kann, 3x in Folge kurz gedrückt wird. (Der erste und zweite kurze Druck wird im Dimmer direkt verwendet zum 1. Starten des (bewusst langsamen) Ausschaltdimmvorgangs, ein zweiter Klick schaltet das Licht dann sofort aus.
Da am Morgen beim Öffnen des Rollos das Licht sowieso aus ist, ist das eine wunderbare Nebennutzung des vorhandenen Tasters... Ein dreimaliges kurzes Tippen könnte auch hier alles stoppen was gerade fährt.

Ich finde die Long_Variante von Otto aber auch gut, ich nutze sogar ein Long_9.* für das Einschalten des Magnetventils für den Schlauch in den Vorgarten. So lange drückt sonst keiner auf dem Schließtaster für die Garage rum ...

jm2c
Titel: Aw: HM-PB-2-WM55 Doppelklick?
Beitrag von: martinp876 am 17 September 2023, 18:47:13
nun - als Freunde einfacher vorgehensweisen und nutzung möglichst weniger spezialfuktionen würde ich dass notify zum Toggeln bewegen. Toggel "down/stop/down/stop" "up/stop/up" machen alles meine taster (insbesondere Rollo)
Also wie immer. 1. Requirements : wie soll es funktionieren und dann 2. wie setze ich es um.

mein Requirement wäre also
Rollo stop- Btn1-short => Rollo Runter
Rollo runter- Btn1-short => Rollo stop
Rollo hoch- Btn1-short => Rollo stop

Rollo stop- Btn2-short => Rollo hoch
Rollo runter- Btn2-short => Rollo stop
Rollo hoch- Btn2-short => Rollo stop

Bei Markise das gleiche mit Lang.
=>keine Beeinflussing untereinander

Notaus:
AnyButton extralong = Rollo Stop / Markise Stop (das hilft, wenn man dernös wird. Kann sich meine Frau besser merken,...

==> als Requirement wäre das bei mir gesetzt - ich verfluche alle Rollos welche stop selektiv nach Richtung anbieten.

Realisierung könnte dann sein:
Notify für TasterDIS_Btn_0. mit Event "Btn_0._(Short|Long|Long 9_)

dann muss man den Status des Aktors rücklesen - sonst kein Toggeln.
Usercode ist dann in etwas so
$EVENT =~m/.*Btn_0(.) (.*?)_/;my ($btn,$evt)=($1,$2);
if($evt eq "Long 9") {fhem("set Rollo,Markise stop")}
elsif($bnt==1 && $evt eq "short" && RolloStatus eq "stop"){fhem("set Rollo runter")}
elsif($bnt==1 && $evt eq "short" && RolloStatus ne "stop"){fhem("set Rollo stop")}
elsif($bnt==2 && $evt eq "short" && RolloStatus eq "stop"){fhem("set Rollo hoch")}
elsif($bnt==2 && $evt eq "short" && RolloStatus ne "stop"){fhem("set Rollo stop")}
... markise anfügen mit long

damit kann ich genau lösen was ich will.

Ich hatte vor längerem eine Elegantere Lösung vorgeschlagen - wie das im Notify dann m.E. auch wirklich übersichtlich aussieht und m.E. wirklich elegant von Sofa aus konfigurierbar ist. Aber das reicht auch.
Ich nutze meine eigene Variante von Notify, somit habe ich die nachbildung nicht mehr 1:1