FHEM Forum

FHEM - Hausautomations-Systeme => KNX/EIB => Thema gestartet von: Philipp1596 am 19 April 2019, 13:49:36

Titel: Mehrfaches triggern vom KNX Bus
Beitrag von: Philipp1596 am 19 April 2019, 13:49:36
Hallo zusammen,

ich habe derzeit vor, mehrere Taster zu KNX MDT Glastaster zu tauschen. Die Anbindung habe ich über KNXd und einem TUL Stick gelöst. Das funktioniert soweit auch.
Mein Problem ist jetzt folgendes: Ich möchte die Betätigung einer Taste auf dem Glastaster den Trigger über UDP weiter versenden. Dazu habe ich ein Notify erstellt, welches auf den trigger 0 und 1 des Tasters reagiert. Dieses ruft dann eine sub auf, welche dann den Trigger weiter versendet. Das Problem ist jetzt, dass der Wandschalter bei einer Betätigung 4 mal sendet. Somit wird der Trigger insgesamt 12 mal gesendet, also 4 mal getG1, 4 mal setG1 und 4 mal state.
Mein erster Versuch war, das Notify per attr DisableAfterTrigger für eine kurze Zeit zu deaktivieren, jedoch leider ohne Erfolg. Selbst wenn das attr auf 10 Sekunden steht, wird immer 12 mal gesendet.

Hier meine Konfiguration vom KNX Device
define UG_Sz_Ws_Taste_1_2_Bel_Status KNX 0/0/3:dpt1
setuuid UG_Sz_Ws_Taste_1_2_Bel_Status 5cb364cc-f33f-3457-e101-ba8a7d103045433d
attr UG_Sz_Ws_Taste_1_2_Bel_Status IODev UG_KNX_Gateway
attr UG_Sz_Ws_Taste_1_2_Bel_Status alias Beleuchtung Status
attr UG_Sz_Ws_Taste_1_2_Bel_Status group Wandschalter
attr UG_Sz_Ws_Taste_1_2_Bel_Status room UG Schlafzimmer


Hier mein Notify
define KNXDPT1000ToLoxone notify (UG_Sz_Ws_Tasten_1_2_Bel:.*|UG_Sz_Ws_Schlafen_gehen:.*) {KNXDPT1000ToLoxone("$NAME")}
setuuid KNXDPT1000ToLoxone 5cb5fe03-f33f-3457-3e28-b94b4fbb4591d38c
attr KNXDPT1000ToLoxone alias KNX DPT1000 zu Loxone
attr KNXDPT1000ToLoxone disabledAfterTrigger 3
attr KNXDPT1000ToLoxone group Notify
attr KNXDPT1000ToLoxone room Logik


Hier noch die Events die beim betätigen generiert werden
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel getG1: 1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel last-sender: 1/1/1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel 1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel getG1: 1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel last-sender: 1/1/1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel 1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel getG1: 1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel last-sender: 1/1/1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel 1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel getG1: 1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel last-sender: 1/1/1
2019-04-19 13:50:23 KNX UG_Sz_Ws_Tasten_1_2_Bel 1


Hat jemand einen Tipp für mich, wie das klappt, dass insgesamt nur einmal bei Betätigung gesendet wird?
Vielen dank im Voraus und schöne Ostern! :)
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: JoeALLb am 19 April 2019, 13:57:04
Nimm statt notity DOIF, da kannst du einen wiederaufruf für eine gegebene Zeit, zB 1s, sperren.
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: CoolTux am 19 April 2019, 13:57:35
Schau Dir mal das Attribut disableAfterTrigger beim Notify Device an.
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: CoolTux am 19 April 2019, 13:58:06
Zitat von: JoeALLb am 19 April 2019, 13:57:04
Nimm statt notity DOIF, da kannst du einen wiederaufruf für eine gegebene Zeit, zB 1s, sperren.
Geht beim Notify auch. Siehe meinen Post
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: Philipp1596 am 19 April 2019, 14:02:59
Zitat von: CoolTux am 19 April 2019, 13:57:35
Schau Dir mal das Attribut disableAfterTrigger beim Notify Device an.

Das habe ich bereits probiert, jedoch wird dann trotzdem 12 mal getriggert. Ich habe es testweise auch 10 Sekunden disabled, aber auch das funktioniert nicht.
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: CoolTux am 19 April 2019, 14:11:29
Also das kann ich nicht verstehen. Bei mir triggerst er danach für die x Sekunden nicht mehr.
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: CoolTux am 19 April 2019, 14:15:49
Und wenn Du zusätzlich Dein RegEx etwas besser setzt?


define KNXDPT1000ToLoxone notify (UG_Sz_Ws_Tasten_1_2_Bel|UG_Sz_Ws_Schlafen_gehen):getG1:.1
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: Philipp1596 am 19 April 2019, 14:58:08
Wenn ich die RegEx so anpasse wie du geschrieben hast, dann wird es nur 4 mal getriggert, eben so oft, wie es vom KNX Bus kommt.

Was ich beobachtet habe beim DisableAfterTrigger, dass er erst für die eingestellte Zeit disabled, wenn die 4fachen Trigger vom KNX vorbei sind. Also quasi die 4 Trigger werden durch gelassen und danach wird es für 10 Sekunden deaktiviert. Dann werden die Tastendrücke auch nicht mehr über das notify versendet.
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: JoeALLb am 20 April 2019, 12:16:59
Du bist dir sicher, dass der taster 4x sendet? Könnte diese Multiplikation auch innerhalb FHEM entstehen? (diesen Effekt habe ich manchmal ...)
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: Philipp1596 am 20 April 2019, 15:41:06
Sicher bin ich mir nicht, aber ich gehe davon aus, da auch die Logeinträge 4-fach vom gleichen Taster sind.
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: CoolTux am 20 April 2019, 16:19:06
Zitat von: Philipp1596 am 19 April 2019, 14:58:08
Wenn ich die RegEx so anpasse wie du geschrieben hast, dann wird es nur 4 mal getriggert, eben so oft, wie es vom KNX Bus kommt.

Was ich beobachtet habe beim DisableAfterTrigger, dass er erst für die eingestellte Zeit disabled, wenn die 4fachen Trigger vom KNX vorbei sind. Also quasi die 4 Trigger werden durch gelassen und danach wird es für 10 Sekunden deaktiviert. Dann werden die Tastendrücke auch nicht mehr über das notify versendet.

Sorry aber irgendwie habe ich Probleme das so Recht zu glauben.
Am besten erstmal testen.


define KNXDPT1000ToLoxone notify (UG_Sz_Ws_Tasten_1_2_Bel|UG_Sz_Ws_Schlafen_gehen):getG1:.1 { Log('Test Notify Taster') }
Titel: Antw:Mehrfaches triggern vom KNX Bus
Beitrag von: JoeALLb am 23 April 2019, 08:33:22
Zitat von: Philipp1596 am 20 April 2019, 15:41:06
Sicher bin ich mir nicht, aber ich gehe davon aus, da auch die Logeinträge 4-fach vom gleichen Taster sind.
Hast Du FHEM neu gestartet? Teste das mal.... (Das löst diesen effekt bei mir!)
Ich habe auch den Glastaster, und bei mir sendet er nicht 4x!
Aber man kann ihn sicherlich so einstellen... (sende Flanke, wiederholrate, etc...) . Aber auch dann sollte es nicht imme rgenau 4x sein.
Oder wie sieht deine restliche KNX-Topologie aus? Hast Du mehrere KNX-Router, Gateways oder TUL-Device einzeln oder gemischt im Einsatz?
Oder KNXD?
Hast Du zugriff auf die ETS? Mach dort mal ein en Screenshot des Monitors beim drücken des Tasters...

Unabhängig davon wundert mich das Notify ähnlich wie CoolTux. Zeig noch mal ein Eventlog von dem Testdummy, den er dir geschickt hat.

sG Joe