3-faches KNX Telegramm in FHEM obwohl nur 1-fach in KNX gesendet?

Begonnen von Guybrush, 07 Januar 2021, 13:43:48

Vorheriges Thema - Nächstes Thema

Guybrush

Hallo zusammen,

ich hab gerade folgendes Problem. Wenn ich im KNX Bus an meine fiktive Adresse 1/1/1 ein (!) Telegramm mit 1|0 (an/aus) sende, empfängt FHEM diese laut EventMonitor aber 3x. Im Gruppenmonitor in ETS wird aber nur ein einziges Telegramm gesendet - das hatte ich schon überprüft.

Config:

defmod Schlafen.Licht2 KNX xxx/xxx/xxx:dpt1.001
attr Schlafen.Licht2 IODev KNX


EventMonitor:

2021-01-07 13:34:24 KNX Schlafen.Licht2 getG1: on
2021-01-07 13:34:24 KNX Schlafen.Licht2 last-sender: xxx/xxx/xxx
2021-01-07 13:34:24 KNX Schlafen.Licht2 on
2021-01-07 13:34:24 KNX Schlafen.Licht2 getG1: on
2021-01-07 13:34:24 KNX Schlafen.Licht2 last-sender: xxx/xxx/xxx
2021-01-07 13:34:24 KNX Schlafen.Licht2 on
2021-01-07 13:34:24 KNX Schlafen.Licht2 getG1: on
2021-01-07 13:34:24 KNX Schlafen.Licht2 last-sender: xxx/xxx/xxx
2021-01-07 13:34:24 KNX Schlafen.Licht2 on


Das ist insoweit ein Problem, als dass ich ein Event auf Schlafen.Licht2 hab, was nun 3x ausgelöst wird. Das kann aber auch losgelöst davon nicht passen. Hat irgendwer eine Idee, wo man ansetzen kann das Problem zu lokalisieren?

Guybrush

das wird für mich immer irritierender...

da das Problem nur bei dieser Adresse auftrat, habe ich einfach mal das Device in Fhem gelöscht. Im Anschluss habe ich dann nochmal im KNX an diese Adresse etwas gesendet. Der EventMonitor hat dann aber völlig überraschend nur folgendes erfasst:


2021-01-07 14:10:24 TUL KNX UNKNOWNCODE C0ff01w0220301


Das dürfte schon nicht sein? Ich habe danach die Adresse wieder neu angelegt:

defmod Schlafen.Licht2 KNX xxx/xxx/xxx:dpt1.001


und danach wieder ein Telegramm in KNX gesendet. Fhem hat dann nur 1x das Telegramm erfasst. Ich habe danach allerdings wieder mein Notify angelegt (was ich auch gelöscht hatte):

defmod Schlafen.Licht2.Check notify Schlafen.Licht2:getG1:.* {\
Log3 $NAME, 1, "Name: \"$NAME\", Event: \"$EVENT\", Evtpart0: \"$EVTPART0\"";;\
fhem("set Schlafen.Licht2.Hue $EVENT");;\
}


danach werden nun plötzlich 2 Telegramme im Eventmonitor erfasst, wenn ich an die entsprechende KNX Adresse etwas sende.

021-01-07 14:12:21 KNX Schlafen.Licht2 getG1: on
2021-01-07 14:12:21 KNX Schlafen.Licht2 last-sender: xxx/xxx/xxx
2021-01-07 14:12:21 KNX Schlafen.Licht2 on
2021-01-07 14:12:21 KNX Schlafen.Licht2 getG1: on
2021-01-07 14:12:21 KNX Schlafen.Licht2 last-sender: xxx/xxx/xxx
2021-01-07 14:12:21 KNX Schlafen.Licht2 on


Wie kann denn das anlegen eines Notify dazu führen, dass im Eventmonitor nun 2 KNX Telegramme angezeigt werden? Zuvor waren es 3. Das gleiche Phänomen scheint auch aufzutreten wenn ich bei Schlafen.Licht2 nach löschen & neu anlegen dann noch room definiere.

Es tritt, wie gesagt, nur bei dieser Adresse auf. Sonst werden alle KNX Adressen sauber erfasst (also nur so oft, wie sie gesendet werden...)

frober

Warum hast du dein Logging so komplex geschrieben?

Probiere es mal so:
defmod Schlafen.Licht2.Check notify Schlafen.Licht2:getG1:.* {\
Log3 ($NAME, 1, "Name: $NAME, Event: $EVENT, Evtpart0: $EVTPART0");;\
fhem("set Schlafen.Licht2.Hue $EVENT");;\
}


Raspi 3b mit Raspbian Bullseye und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

Guybrush

Zitat von: frober am 07 Januar 2021, 17:40:43
Warum hast du dein Logging so komplex geschrieben?

Probiere es mal so:
defmod Schlafen.Licht2.Check notify Schlafen.Licht2:getG1:.* {\
Log3 ($NAME, 1, "Name: $NAME, Event: $EVENT, Evtpart0: $EVTPART0");;\
fhem("set Schlafen.Licht2.Hue $EVENT");;\
}


ich habs ja nur escaped. das mach ich eigentlich immer so... das ist aber ja nicht die Ursache für das Problem. Das Problem tritt nur bei dieser einen KNX Adresse / Device auf. Sonst nirgends. Ich verstehe nicht, wo das Problem liegen kann. FHEM restartet habe ich noch nicht, da ich eigentlich erstmal die Ursache finden wollte. Hilft ja nicht unbedingt, wenns einfach verschwindet...

frober

Zitat von: Guybrush am 08 Januar 2021, 13:32:44
ich habs ja nur escaped. das mach ich eigentlich immer so... das ist aber ja nicht die Ursache für das Problem. Das Problem tritt nur bei dieser einen KNX Adresse / Device auf. Sonst nirgends. Ich verstehe nicht, wo das Problem liegen kann. FHEM restartet habe ich noch nicht, da ich eigentlich erstmal die Ursache finden wollte. Hilft ja nicht unbedingt, wenns einfach verschwindet...

Der Gedanke war, dass vielleicht das Auflösen der Variablen hier nocheinmal triggern.
Sonst habe ich keine Idee.
Raspi 3b mit Raspbian Bullseye und relativ aktuellem Fhem,  FS20, LGW, PCA301, Zigbee, MQTT, MySensors mit RS485(CAN-Receiver) und RFM69, etc.,
einiges umgesetzt, vieles in Planung, smile

********************************************
...man wächst mit der Herausforderung...

erwin

für das Phänomen gibts etliche Möglichkeiten.....
1) durch copy oder rename / defmod des KNX devices - es werden evtl. nicht alle internen daten-strukturen  des alten devices gelöscht, und dann existiert ein 2tes / 3tes "unsichbares" device, dass auf diese KNX_adresse reagiert! Abhilfe: fhem neu starten.
2) es gibt/gab knxd versionen, die messages bis zu 3mal wiederholt haben, wenn sie kein "ack" von einem realen KNX Gerät bekommen haben, FHEM schickt jedenfalls kein ACK!
     weiß leider nicht mehr, welche versionen das waren, die aktuelle knxd funktioniert bei mir.
3) und noch andere....
in einem beitrag schreibst du von Adresse 1/1/1, dann wieder:
Zitat2021-01-07 14:10:24 TUL KNX UNKNOWNCODE C0ff01w0220301
, was adresse 2/2/3 ist, alle anderen xxx's du, das ist nicht hilfreich. Der unknowncode ist völlig normal, wenn du kein device mit 2/2/3 definiert hast.
Hilfreich wär ein list <device> im Fehlerfall, Auszug aus dem Eventmonitor und wenn da nichts sichtbar wird, verbose 5!
l.g.erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...