KNX Adressen werden bei AUS Befehl erst EIN geschalten?

Begonnen von Guybrush, 10 September 2023, 18:53:57

Vorheriges Thema - Nächstes Thema

Guybrush

Ich hab seit ein paar Tagen ein Problem, dass beispielsweise das Licht bei mir eingeschaltet wird, wenn ich es global per
set .*Licht off

ausschalte. Das führt hierzu:
2023.09.10 17:44:42 4: KNX_Set: Ankleide.Licht, cmd= off, value= off, translated= 00
2023.09.10 17:44:42 4: KNX_Set: Ankleide.Licht, cmd= last-sender:, value= off, translated= 00
2023.09.10 17:44:42 4: KNX_Set: Ankleide.Licht, cmd= setG1:, value= on, translated= 01
2023.09.10 17:44:43 4: KNX_Set: Ankleide.Licht, cmd= aus, value= off, translated= 00
2023.09.10 17:44:46 4: KNX_Parse -process: IO-name: KNX, device-name: Ankleide.Licht, rd-name: status, gadCode: 0220b, cmd: w
2023.09.10 17:44:46 4: KNX_Parse (wp): Ankleide.Licht, READINGNAME: status, VALUE: inactive, SENDER: 01170
2023.09.10 17:48:17 4: KNX_Parse -process: IO-name: KNX, device-name: Ankleide.Licht, rd-name: mA, gadCode: 06211, cmd: w
2023.09.10 17:48:17 4: KNX_Parse (wp): Ankleide.Licht, READINGNAME: mA, VALUE: 0 mA, SENDER: 01170

Es wird also erst richtig ausgeschaltet, dann aber wieder eingeschaltet und im Anschluss wieder aus, was jedoch nicht immer funktioniert, da der KNX Bus ja irgendwann Kommandos "verschluckt", wenn zuviel in zu kurzer Zeit drauf gesendet wird.

Hat einer eine Idee für mich, woran das liegen kann? Wenn ich das Device direkt anspreche und per set Ankleide.Licht off schalte, tut es genau das was es soll. Es passiert also nur, wenn ich wildcards nutze (bei mir ist die Syntax für Licht immer <Raum>.Licht, so dass ich das dann über .*Licht ansprechen kann)

Hier das Device Ankleide.Licht:
defmod Ankleide.Licht KNX 2/2/10:dpt1.001:operate:set:nosuffix \
2/2/11:dpt1.011:status:listenonly:nosuffix 6/2/17:dpt7.012:mA:listenonly:nosuffix
attr Ankleide.Licht DbLogExclude .*
attr Ankleide.Licht DbLogInclude operate,mA
attr Ankleide.Licht IODev KNX
attr Ankleide.Licht devStateIcon off:FS20.off on:FS20.on
attr Ankleide.Licht event-on-change-reading operate,mA
attr Ankleide.Licht eventMap on:Ein off:Aus
attr Ankleide.Licht group Licht
attr Ankleide.Licht icon light_pendant_light
attr Ankleide.Licht room Dachgeschoss->Ankleide
attr Ankleide.Licht sortby 1
attr Ankleide.Licht stateFormat operate
attr Ankleide.Licht verbose 4
attr Ankleide.Licht webCmd Ein:Aus

setstate Ankleide.Licht Aus
setstate Ankleide.Licht 2023-08-01 15:24:18 IODev KNX
setstate Ankleide.Licht 2023-08-01 15:24:18 getG1 off
setstate Ankleide.Licht 2023-09-10 17:44:46 last-sender 1.1.112
setstate Ankleide.Licht 2023-09-10 17:43:18 mA 105 mA
setstate Ankleide.Licht 2023-09-10 17:44:43 operate off
setstate Ankleide.Licht 2023-08-01 15:24:18 setG1 off
setstate Ankleide.Licht 2023-09-10 17:44:46 state inactive
setstate Ankleide.Licht 2023-09-10 17:44:46 status inactive

Notifys oder sowas gibt es auf Ankleide.Licht nicht.

erwin

Hi,
3 Kommentare zu deinem Problem:
1) cmdref -Set cmd:
Zitat...Do not use wildcards for <deviceName>, the KNX-GW/Bus might be not perfomant enough to handle that.
2) Dein Log zeigt mir, dass du nicht auf der aktuellen Version des Moduls bist, vermutlich eine Version vor 2023/04.

Irritierend ist auch, dass es Readings getG1/setG1 gibt, obwohl die erste Gruppenaddr. den gadnamen "operate" hat. Möglicherweise eine Altlast,...
3) mach bitte mal ein "list .*Licht" und poste das hier
4) evtl. auch einen FHEM restart und nochmals "list*.Licht" - falls du an der definition Ankleide.Licht was geändert hast seit dem letzten FHEM start...

In einem KNX system wäre die richtige Lösung für ein "alle Lichter ein/aus" Problem:
Per ETS eine weitere Gruppenadresse zusätzlich zu den vorhandenen in die betreffenden Aktoren zu programmieren, und diese dazu zu verwenden (OR-Funtion). Alternativ: in manchen aktoren gibts "Central Funktion" - auch damit wird so etwas möglich.

Lösche bitte mal das eventMap Attribut, ich hab da einen Verdacht....(da hat es in der vergangenheit ähnliche Probleme gegeben, mit der aktuellen Version kann ich das nicht nachstellen)
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,...

erwin

Hi,
Zitat...Do not use wildcards for <deviceName>, the KNX-GW/Bus might be not perfomant enough to handle that.
Ich teste gerade eine Version, die dieses Problem fixed, wird aber noch dauern, ich bin nächste Woche auf Urlaub...
"zu schnell hintereinander" set bzw. get cmds werden im KNXIO-Modul (um ca. 0.2 sek) verzögert gesendet.
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,...