Transmit Probleme: mal wieder oder Fehlalarm?

Begonnen von ToKa, 19 Februar 2018, 20:53:40

Vorheriges Thema - Nächstes Thema

ToKa

Hallo zusammen,

ich habe inzwischen 10 Eurotronic Spirit Heizungsventile im Einsatz - eines ist zu Testzwecken secure inkludiert. Die Ventile funktionieren prima, lassen sich einzeln einstellen und melden brav Temperatur-/Ventiländerungen.

Nun zu meinem "Problem": Ich steuere bei Abwesenheit (residence) die Einstellung der Ventile über ein DOIF und eine eigene Funktion in myUtils. Dadurch werden alle Ventile "zeitgleich" auf eine niedrigere Temperatur eingestellt und bei Rückkehr wieder auf eine höhere bzw. auch auf tmFullPower. Dies führt im Log zu massiven Meldungen mit "no ACK", "transmit queue overflow" etc.

Ich habe das Verhalten schon mit InternalTimer (jedes Ventil durch Schleifenzähler zu einem andere Zeitpunkt) und jetzt mit PrioQueue_add versucht  in den Griff zu bekommen. Aber mit beiden Varianten kommt es zu den massiven Meldungen.

Komischerweise und trotz der Meldungen werden aber an allen Ventilen die Einstellungen vorgenommen! Heißt das, ich kann die Meldungen einfach ignorieren? Gibt es eine Möglichkeit den Timeout zu verändern? Hat das ggf. mit der FLiRS Eigenschaft der Spirits zu tun? Ich bin ratlos...

Nachfolgend ein Log mit verbose 3 (verbose 5 ist verdammt lang):
2018.02.19 20:30:02.028 3: ZWave set E4_az_THKV_Heizkoerper_Wand thermostatSetpointSet 22.0
2018.02.19 20:30:02.063 3: myHeatingControl - set thermostatMode Timer: fhem 'set E1_wz_THKV_Heizkoerper_Fenster tmHeating'
2018.02.19 20:30:02.065 3: ZWave set E1_wz_THKV_Heizkoerper_Fenster tmHeating
2018.02.19 20:30:02.108 3: myHeatingControl - set thermostatMode Timer: fhem 'set E1_wz_THKV_Heizkoerper_Wand tmHeating'
2018.02.19 20:30:02.110 3: ZWave set E1_wz_THKV_Heizkoerper_Wand tmHeating
2018.02.19 20:30:02.133 3: myHeatingControl - set thermostatMode Timer: fhem 'set E2_ez_THKV_Heizkoerper_Fenster tmHeating'
2018.02.19 20:30:02.135 3: ZWave set E2_ez_THKV_Heizkoerper_Fenster tmHeating
2018.02.19 20:30:02.161 3: myHeatingControl - set thermostatMode Timer: fhem 'set E2_ku_THKV_Heizkoerper_Fenster tmHeating'
2018.02.19 20:30:02.163 3: ZWave set E2_ku_THKV_Heizkoerper_Fenster tmHeating
2018.02.19 20:30:02.186 3: myHeatingControl - set thermostatMode Timer: fhem 'set E3_hk_THKV_Heizkoerper_Fenster tmHeating'
2018.02.19 20:30:02.188 3: ZWave set E3_hk_THKV_Heizkoerper_Fenster tmHeating
2018.02.19 20:30:02.212 3: myHeatingControl - set thermostatMode Timer: fhem 'set E4_az_THKV_Heizkoerper_Wand tmHeating'
2018.02.19 20:30:02.214 3: ZWave set E4_az_THKV_Heizkoerper_Wand tmHeating
2018.02.19 20:30:02.236 3: myHeatingControl - set thermostatMode Timer: fhem 'set EG_fl_THKV_Heizkoerper_Wand tmHeating'
2018.02.19 20:30:02.238 3: ZWave set EG_fl_THKV_Heizkoerper_Wand tmHeating
2018.02.19 20:30:02.262 3: myHeatingControl - set thermostatMode Timer: fhem 'set ST_bz_THKV_Heizkoerper_Wand tmHeating'
2018.02.19 20:30:02.264 3: ZWave set ST_bz_THKV_Heizkoerper_Wand tmHeating
2018.02.19 20:30:02.287 3: myHeatingControl - set thermostatMode Timer: fhem 'set ST_sz_THKV_Heizkoerper_Wand tmHeating'
2018.02.19 20:30:02.289 3: ZWave set ST_sz_THKV_Heizkoerper_Wand tmHeating
2018.02.19 20:30:02.313 3: myHeatingControl - Heating_Control_SetTemp Timer: E1_wz_THKV_Heizkoerper_Fenster_hC_01
2018.02.19 20:30:02.457 3: myHeatingControl - Heating_Control_SetTemp Timer: E1_wz_THKV_Heizkoerper_Wand_hC_01
2018.02.19 20:30:02.608 3: myHeatingControl - Heating_Control_SetTemp Timer: E2_ez_THKV_Heizkoerper_Fenster_hC_01
2018.02.19 20:30:02.769 3: myHeatingControl - Heating_Control_SetTemp Timer: E2_ku_THKV_Heizkoerper_Fenster_hC_01
2018.02.19 20:30:02.914 3: myHeatingControl - Heating_Control_SetTemp Timer: EG_fl_THKV_Heizkoerper_Wand_hC_01
2018.02.19 20:30:03.023 3: myHeatingControl - Heating_Control_SetTemp Timer: ST_bz_THKV_Heizkoerper_Wand_hC_01
2018.02.19 20:30:03.205 3: myHeatingControl - Heating_Control_SetTemp Timer: ST_sz_THKV_Heizkoerper_Wand_hC_01
2018.02.19 20:30:04.554 3: ZWave set E4_az_THKV_Heizkoerper_Wand tmFullPower
2018.02.19 20:30:04.578 3: ZWave set E4_bz_THKV_Heizkoerper_Wand tmEnergySaveHeating
2018.02.19 20:30:04.602 3: ZWave set E3_hk_THKV_Heizkoerper_Fenster thermostatSetpointSet 22.0
2018.02.19 20:30:04.625 3: ZWave set E3_hk_THKV_Heizkoerper_Fenster tmFullPower
2018.02.19 20:30:07.029 2: ZWave: No ACK from E4_az_THKV_Heizkoerper_Wand after 5s for sentset:132d064301012200dc2503
2018.02.19 20:30:07.094 2: ZS_zs_THKV_thermostatMode_DOIF_01:  get E4_bz_THKV_Heizkoerper_Wand thermostatMode: Secure operation in progress, executing in background
2018.02.19 20:30:07.136 2: ZWave: No ACK from E2_ez_THKV_Heizkoerper_Fenster after 5s for sentset:1329034001012506
2018.02.19 20:30:07.163 2: ZWave: No ACK from E2_ku_THKV_Heizkoerper_Fenster after 5s for sentset:132a034001012507
2018.02.19 20:30:07.189 2: ZWave: No ACK from E3_hk_THKV_Heizkoerper_Fenster after 5s for sentset:1326034001012508
2018.02.19 20:30:07.239 2: ZWave: No ACK from EG_fl_THKV_Heizkoerper_Wand after 5s for sentset:132b03400101250a
2018.02.19 20:30:07.265 2: ZWave: No ACK from ST_bz_THKV_Heizkoerper_Wand after 5s for sentset:132e03400101250b
2018.02.19 20:30:07.290 2: ZWave: No ACK from ST_sz_THKV_Heizkoerper_Wand after 5s for sentset:132c03400101250c
2018.02.19 20:30:08.013 3: ZWave set EG_fl_THKV_Heizkoerper_Wand thermostatSetpointSet 20.0
2018.02.19 20:30:08.068 3: ZWave set E2_ez_THKV_Heizkoerper_Fenster thermostatSetpointSet 22.0
2018.02.19 20:30:08.123 3: ZWave set E2_ku_THKV_Heizkoerper_Fenster thermostatSetpointSet 20.5
2018.02.19 20:30:08.177 3: ZWave set E1_wz_THKV_Heizkoerper_Wand thermostatSetpointSet 22.0
2018.02.19 20:30:08.231 3: ZWave set E1_wz_THKV_Heizkoerper_Fenster thermostatSetpointSet 22.0
2018.02.19 20:30:08.285 3: ZWave set ST_sz_THKV_Heizkoerper_Wand thermostatSetpointSet 21.0
2018.02.19 20:30:08.341 3: ZWave set ST_bz_THKV_Heizkoerper_Wand thermostatSetpointSet 18.5
2018.02.19 20:30:09.579 2: ZWave: No ACK from E4_bz_THKV_Heizkoerper_Wand after 5s for sentset:1331029840250f
2018.02.19 20:30:09.579 1: E4_bz_THKV_Heizkoerper_Wand: NO_ACK received during secured command: 40010b set E4_bz_THKV_Heizkoerper_Wand tmEnergySaveHeating, command will be removed from security stack
2018.02.19 20:30:09.581 3: ZWave get E4_bz_THKV_Heizkoerper_Wand thermostatMode
2018.02.19 20:30:09.582 2: ERROR: E4_bz_THKV_Heizkoerper_Wand: cleaning commands without ack after 5s
2018.02.19 20:30:09.588 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:10.539 3: ZWave set EG_fl_THKV_Heizkoerper_Wand tmFullPower
2018.02.19 20:30:10.593 3: ZWave set E2_ez_THKV_Heizkoerper_Fenster tmFullPower
2018.02.19 20:30:10.647 3: ZWave set E2_ku_THKV_Heizkoerper_Fenster tmFullPower
2018.02.19 20:30:10.701 3: ZWave set E1_wz_THKV_Heizkoerper_Wand tmFullPower
2018.02.19 20:30:10.756 3: ZWave set E1_wz_THKV_Heizkoerper_Fenster tmFullPower
2018.02.19 20:30:10.810 3: ZWave set ST_sz_THKV_Heizkoerper_Wand tmFullPower
2018.02.19 20:30:12.031 2: ZWave: No ACK from E4_az_THKV_Heizkoerper_Wand after 5s for sentset:132d034001012509
2018.02.19 20:30:12.190 2: ZWave: No ACK from E3_hk_THKV_Heizkoerper_Fenster after 5s for sentset:1326064301012200dc2510
2018.02.19 20:30:12.195 2: ERROR: cannot SEND_DATA to E3_hk_THKV_Heizkoerper_Fenster: transmit queue overflow
2018.02.19 20:30:13.015 2: ZWave: No ACK from EG_fl_THKV_Heizkoerper_Wand after 5s for sentset:132b064301012200c82512
2018.02.19 20:30:13.069 2: ZWave: No ACK from E2_ez_THKV_Heizkoerper_Fenster after 5s for sentset:1329064301012200dc2513
2018.02.19 20:30:13.123 2: ZWave: No ACK from E2_ku_THKV_Heizkoerper_Fenster after 5s for sentset:132a064301012200cd2514
2018.02.19 20:30:13.178 2: ZWave: No ACK from E1_wz_THKV_Heizkoerper_Wand after 5s for sentset:1328064301012200dc2515
2018.02.19 20:30:13.232 2: ZWave: No ACK from E1_wz_THKV_Heizkoerper_Fenster after 5s for sentset:1327064301012200dc2516
2018.02.19 20:30:13.286 2: ZWave: No ACK from ST_sz_THKV_Heizkoerper_Wand after 5s for sentset:132c064301012200d22517
2018.02.19 20:30:13.342 2: ZWave: No ACK from ST_bz_THKV_Heizkoerper_Wand after 5s for sentset:132e064301012200b92518
2018.02.19 20:30:14.585 2: ZWave: No ACK from E4_bz_THKV_Heizkoerper_Wand after 5s for sentset:1331029840251a
2018.02.19 20:30:14.590 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:16.582 3: E4_bz_THKV_Heizkoerper_Wand: secStart older than 6 seconds detected, secUnlock will call Zwave_secEnd
2018.02.19 20:30:17.032 2: ZWave: No ACK from E4_az_THKV_Heizkoerper_Wand after 5s for sentset:132d0340010f250d
2018.02.19 20:30:17.190 2: ZWave: No ACK from E3_hk_THKV_Heizkoerper_Fenster after 5s for set:13260340010f2511
2018.02.19 20:30:18.068 2: ZWave: No ACK from EG_fl_THKV_Heizkoerper_Wand after 5s for sentset:132b0340010f251b
2018.02.19 20:30:18.191 2: ZWave: No ACK from E2_ez_THKV_Heizkoerper_Fenster after 5s for sentset:13290340010f251c
2018.02.19 20:30:18.192 2: ZWave: No ACK from E2_ku_THKV_Heizkoerper_Fenster after 5s for sentset:132a0340010f251d
2018.02.19 20:30:18.192 2: ZWave: No ACK from E1_wz_THKV_Heizkoerper_Wand after 5s for sentset:13280340010f251e
2018.02.19 20:30:18.232 2: ZWave: No ACK from E1_wz_THKV_Heizkoerper_Fenster after 5s for sentset:13270340010f251f
2018.02.19 20:30:18.287 2: ZWave: No ACK from ST_sz_THKV_Heizkoerper_Wand after 5s for sentset:132c0340010f2520
2018.02.19 20:30:18.469 2: ERROR: cannot SEND_DATA to E3_hk_THKV_Heizkoerper_Fenster: transmit queue overflow
2018.02.19 20:30:19.586 2: ZWave: No ACK from E4_bz_THKV_Heizkoerper_Wand after 5s for set:1331029840251a
2018.02.19 20:30:20.343 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:20.343 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:20.343 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_ZWave.pm line 4951.
2018.02.19 20:30:20.343 3: E4_bz_THKV_Heizkoerper_Wand: ignore duplicate answer
2018.02.19 20:30:20.423 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:20.423 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:20.423 3: E4_bz_THKV_Heizkoerper_Wand: ignore duplicate answer
2018.02.19 20:30:20.540 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:20.540 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:20.540 3: E4_bz_THKV_Heizkoerper_Wand: ignore duplicate answer
2018.02.19 20:30:20.551 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:20.554 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:20.554 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:20.555 3: E4_bz_THKV_Heizkoerper_Wand: ignore duplicate answer
2018.02.19 20:30:20.577 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:20.577 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:20.578 3: E4_bz_THKV_Heizkoerper_Wand: ignore duplicate answer
2018.02.19 20:30:20.691 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:20.691 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:20.691 3: E4_bz_THKV_Heizkoerper_Wand: ignore duplicate answer
2018.02.19 20:30:21.003 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:21.003 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:21.003 3: E4_bz_THKV_Heizkoerper_Wand: ignore duplicate answer
2018.02.19 20:30:22.191 2: ZWave: No ACK from E3_hk_THKV_Heizkoerper_Fenster after 5s for set:13260340010f2511
2018.02.19 20:30:22.749 2: ERROR: cannot SEND_DATA to E3_hk_THKV_Heizkoerper_Fenster: transmit queue overflow
2018.02.19 20:30:25.024 2: ZWave: No ACK from E4_bz_THKV_Heizkoerper_Wand after 5s for set:13311698819ed76008e1cce44762483a42838a40defe40b0e52521
2018.02.19 20:30:25.030 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:27.192 2: ZWave: No ACK from E3_hk_THKV_Heizkoerper_Fenster after 5s for set:13260340010f2511
2018.02.19 20:30:29.078 2: ERROR: cannot SEND_DATA to E3_hk_THKV_Heizkoerper_Fenster: transmit queue overflow
2018.02.19 20:30:30.025 2: ZWave: No ACK from E4_bz_THKV_Heizkoerper_Wand after 5s for set:13311698819ed76008e1cce44762483a42838a40defe40b0e52521
2018.02.19 20:30:31.754 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:32.193 2: ZWave: No ACK from E3_hk_THKV_Heizkoerper_Fenster after 5s for set:13260340010f2511
2018.02.19 20:30:33.896 2: ERROR: cannot SEND_DATA to E3_hk_THKV_Heizkoerper_Fenster: transmit queue overflow
2018.02.19 20:30:35.026 2: ZWave: No ACK from E4_bz_THKV_Heizkoerper_Wand after 5s for set:13311698819ed76008e1cce44762483a42838a40defe40b0e52521
2018.02.19 20:30:36.531 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:37.195 2: ZWave: No ACK from E3_hk_THKV_Heizkoerper_Fenster after 5s for set:13260340010f2511
2018.02.19 20:30:40.027 2: ZWave: No ACK from E4_bz_THKV_Heizkoerper_Wand after 5s for set:13311698819ed76008e1cce44762483a42838a40defe40b0e52521
2018.02.19 20:30:41.809 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:41.809 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:42.141 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:42.141 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:42.187 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:42.187 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:42.195 2: ZWave: No ACK from E3_hk_THKV_Heizkoerper_Fenster after 5s for sentset:13260340010f2511
2018.02.19 20:30:42.268 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:42.269 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:42.351 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:42.351 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:42.351 3: E4_bz_THKV_Heizkoerper_Wand: ignore duplicate answer
2018.02.19 20:30:42.477 1: E4_bz_THKV_Heizkoerper_Wand: no stored commands in Internal secMsg found
2018.02.19 20:30:42.477 1: E4_bz_THKV_Heizkoerper_Wand: Error, nonce reveived but no stored command for encryption found
2018.02.19 20:30:42.478 3: E4_bz_THKV_Heizkoerper_Wand: ignore duplicate answer
2018.02.19 20:30:45.971 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:47.997 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:48.244 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:30:48.458 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:30:48.550 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:30:48.617 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:30:48.649 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:30:48.692 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:30:48.722 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:30:48.905 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:30:50.133 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:52.804 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:30:57.002 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:31:00.415 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:31:02.427 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:31:02.885 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:31:03.089 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:31:03.362 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:31:03.469 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:31:05.127 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 80
2018.02.19 20:31:06.525 2: ZWDongle_ProcessSendStack: no ACK, resending message 011d0013311698819ed76008e1cce44762483a42838a40defe40b0e525214a
2018.02.19 20:31:06.532 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:31:08.587 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:31:09.765 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:09.806 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:03, Device: E3_hk_THKV_Heizkoerper_Fenster, Event: reportedState: 80
2018.02.19 20:31:09.806 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:03, Device: E3_hk_THKV_Heizkoerper_Fenster, Event: reportedState: 80
2018.02.19 20:31:09.806 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:03, Device: E3_hk_THKV_Heizkoerper_Fenster, Event: reportedState: 80
2018.02.19 20:31:09.806 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:03, Device: E3_hk_THKV_Heizkoerper_Fenster, Event: reportedState: 80
2018.02.19 20:31:09.806 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:03, Device: E3_hk_THKV_Heizkoerper_Fenster, Event: reportedState: 80
2018.02.19 20:31:09.807 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:06, Device: ST_sz_THKV_Heizkoerper_Wand, Event: reportedState: 99
2018.02.19 20:31:09.807 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:08, Device: E4_az_THKV_Heizkoerper_Wand, Event: reportedState: 99
2018.02.19 20:31:09.807 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:08, Device: E4_az_THKV_Heizkoerper_Wand, Event: reportedState: 99
2018.02.19 20:31:09.807 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:09, Device: E4_az_THKV_Heizkoerper_Wand, Event: reportedState: 99
2018.02.19 20:31:09.807 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:09, Device: E4_az_THKV_Heizkoerper_Wand, Event: reportedState: 99
2018.02.19 20:31:09.807 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:30:47, Device: E4_az_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.807 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:30:47, Device: E4_az_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.807 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:30:47, Device: E4_az_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.807 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:30:47, Device: E4_az_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.808 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:30:47, Device: E4_az_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.808 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:01, Device: ST_sz_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.808 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:02, Device: EG_fl_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.808 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:02, Device: EG_fl_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.808 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:02, Device: EG_fl_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.808 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:02, Device: EG_fl_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.808 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:02, Device: EG_fl_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.808 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:02, Device: EG_fl_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.808 3: DbLog logdb -> Insert into history rejected (possible PK violation) - TS: 2018-02-19 20:31:02, Device: EG_fl_THKV_Heizkoerper_Wand, Event: reportedState: 80
2018.02.19 20:31:09.821 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:09.866 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:09.911 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:09.927 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.053 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.113 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.239 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.257 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.270 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.280 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.340 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.351 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.379 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.464 3: ST_sz_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.823 3: E4_az_THKV_Heizkoerper_Wand: ignore duplicate answer state:dim 99
2018.02.19 20:31:10.831 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:31:11.564 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:11.567 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:11.665 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:11.667 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:11.767 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:11.769 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:11.867 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:11.869 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:11.967 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:11.970 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:11, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:12.070 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:12.072 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:12.200 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:12.202 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:12.301 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:12.304 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:12.748 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:12.750 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:12.854 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:12.856 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:12.955 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: reportedState, Value: 17, Unit:
2018.02.19 20:31:12.957 3: DbLog logdb -> addLog created - TS: 2018-02-19 20:31:12, Device: ST_bz_THKV_Heizkoerper_Wand, Type: ZWAVE, Event: addLog, Reading: desired-temp, Value: 18.5, Unit:
2018.02.19 20:31:13.004 2: ZWDongle_ProcessSendStack: no ACK, resending message 010a0013260340010f2511b9
2018.02.19 20:31:13.008 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:31:13.412 3: ST_bz_THKV_Heizkoerper_Wand: ignore duplicate answer temperature:20.78 C
2018.02.19 20:31:13.495 3: ST_bz_THKV_Heizkoerper_Wand: ignore duplicate answer temperature:20.78 C
2018.02.19 20:31:13.810 3: ST_bz_THKV_Heizkoerper_Wand: ignore duplicate answer temperature:20.78 C
2018.02.19 20:31:13.835 3: ST_bz_THKV_Heizkoerper_Wand: ignore duplicate answer temperature:20.78 C
2018.02.19 20:31:13.852 3: ST_bz_THKV_Heizkoerper_Wand: ignore duplicate answer temperature:20.78 C
2018.02.19 20:31:14.008 3: ST_bz_THKV_Heizkoerper_Wand: ignore duplicate answer temperature:20.78 C
2018.02.19 20:31:14.110 3: ST_bz_THKV_Heizkoerper_Wand: ignore duplicate answer temperature:20.78 C
2018.02.19 20:31:14.285 3: ST_bz_THKV_Heizkoerper_Wand: ignore duplicate answer temperature:20.78 C
2018.02.19 20:31:15.102 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:31:17.028 3: ST_bz_THKV_Heizkoerper_Wand: ignore duplicate answer temperature:20.78 C
2018.02.19 20:31:17.130 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow
2018.02.19 20:31:19.253 2: ERROR: cannot SEND_DATA to E4_bz_THKV_Heizkoerper_Wand: transmit queue overflow


Hier noch der Auszug aus meiner eigenen Funktion, die die Einstellungen vornimmt:
## Alle Heizungsventile bis auf Badezimmer E4 auf gewünschten Modus setzen
my @THKV_Heizkoerper = devspec2array("TYPE=ZWave:FILTER=NAME=(?!E4_bz_).*_THKV_Heizkoerper_.*");

$i = 1;
foreach(@THKV_Heizkoerper) {
  $cmd = "fhem 'set $_ $event'";
Log $LogLevel, $i." myHeatingControl - set thermostatMode: ".$cmd;

PrioQueue_add(sub(){
## InternalTimer(gettimeofday()+$i*7.5,sub(){
my ($arg1,$LogArg) = @{$_[0]};
Log $LogArg, "myHeatingControl - set thermostatMode Timer: ".$arg1;
eval $arg1;
}, [$cmd,$LogLevel_Debug]);
## }, ["$cmd","$LogLevel_Debug"]);
$i = $i + 1;
}

## Aktuell gültige Temperatur bei zeitgesteuerten Heizungen einstellen
my @THKV_Heizkoerper_hC = devspec2array("TYPE=Heating_Control");
foreach(@THKV_Heizkoerper_hC) {
    Log $LogLevel, $i." myHeatingControl - Heating_Control_SetTemp: ".$_;
 
PrioQueue_add(sub(){
## InternalTimer(gettimeofday()+$i*7.5,sub() {
my ($arg1,$LogArg) = @{$_[0]};
Log $LogArg, "myHeatingControl - Heating_Control_SetTemp Timer: ".$arg1;
Heating_Control_SetTemp("$arg1"); ## SetAllTemps
}, [$_,$LogLevel_Debug]);
## }, ["$_","$LogLevel_Debug"]);
$i = $i + 1;


Beste Grüße
Torsten

RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

rudolfkoenig

PrioQueue hilft hier nicht, da es ziemlich schnell zu abgearbeitet wird, fuer Funktelegramme zu schnell. Es ist nur dazu da, dass FHEM nicht laenger als noetig blockiert wird.

Internaltimer wird sicher helfen, wenn man die Abstaende richtig waehlt. Wenn ich es richtig sehe, hast du es mit 7.5 Sekunden versucht, das ist mehr als ausreichend. Normale ZWave Kommunikation laeuft im Bereich 0.01sec, je nach Anzahl von Router mehr.
Was alles wird mit "Heating_Control_SetTemp("$arg1"); ## SetAllTemps" gesetzt? Klingt nach mehr als einem Befehl, und wenn, dann muesste man diese auch aueinanderziehen. _Eigentlich_ sollte ZWDongle das selbst machen, aber evtl. ist hier noch was im Argen. Kannst du eine ZWDongle-verbose-5 Liste noch anhaengen?

krikan

Zitat von: rudolfkoenig am 20 Februar 2018, 09:57:07
Normale ZWave Kommunikation laeuft im Bereich 0.01sec, je nach Anzahl von Router mehr.
Die Spirit sind FLIRS-Geräte und dann ist die Laufzeit selbst ohne Router deutlich länger.
Bei meinen FLIRS-Geräten (Rauchmelder) ist timeToAck zumeist um eine Sekunde. Das ist genau die Wiederholungszeit für erneute Sendeversuche durch FHEM. Unter Last habe ich bei FIRMWARE_UPDATE-Experimenten das von Toka beobachtete Problem auch festgestellt und versuchsweise die Zeit für erneute Sendeversuche auf timeToAck+1 geändert. Das hat das Problem gelöst, aber es treten eventuell lange Wartezeiten ein.

Bei SECURITY befürchte ich aber noch andere Probleme.

ToKa

Hallo Rudi,

ich habe zunächst einmal nichts verändert und nur verbose 5 eingeschaltet. Das Log ist im Anhang beigefügt. Ich hoffe ja, Du kannst etwas finden und ansonsten würde ich dann wieder auf InternalTimer umstellen. Das Heating_Control_SetTemp ruft natürlich auch wieder meine eigene Perl-Funktion auf, die dann für jedes Ventil die zuletzt gültige Temperatur einstellt.

@Christian: Die Laufzeit bei den Spirits liegt bei mir auch eher über 1 sec und in den geschilderten Situationen dann sogar bei mehreren Sekunden (teilweise wohl den Routern dazwischen geschuldet). Wo kann ich denn die Zeit für die erneuten Sendeversuche einstellen? Ist das ein Parameter oder im Code?

Beste Grüße und danke an Euch Beide!
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

krikan

Zitat von: ToKa am 20 Februar 2018, 19:00:25
Wo kann ich denn die Zeit für die erneuten Sendeversuche einstellen? Ist das ein Parameter oder im Code?
Waren diverse Aenderungen am Code. Bin gerade -nach einem kurzen Blick in den derzeitigen Modul-Code- etwas verunsichert, ob meine damaligen Ergebnisse nicht eher Zufall waren. Direkten Zusammenhang erkenne ich gerade nicht mehr. Evtl. habe ich nicht an den Sendstack-Zeiteinstellungen vom ZWave-, sondern vom ZWDongle-Modul gebastelt. :-\

ToKa

Ok, beim ZWDongle finde ich unter set auch den Parameter Timeouts. Allerdings finde ich keine Beschreibung dazu  :(

Beste Grüße
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

krikan

Zitat von: ToKa am 20 Februar 2018, 19:32:31
Ok, beim ZWDongle finde ich unter set auch den Parameter Timeouts. Allerdings finde ich keine Beschreibung dazu  :(
Das alleine war es nicht. Könnte aber auch Einfluß haben.
timeouts (SerialAPISetTimeouts) hat 2 Parameter:
1. Parameter = ackTimeout in 10ms
2. Parameter = byteTimeout in 10ms
FHEM setzt das beim Start relativ konservativ auf 1 Sekunden bzw. 150ms; bei anderen Programmen werden beide Werte teilweise mit 100ms gesetzt, also
set <ZWDongle> timeouts 10 10

ToKa

Hallo Christian,

danke für die Beschreibung. Kann ja eigentlich nichts passieren, wenn ich die Parameter mal auf höhere Werte setze oder? Muss ich einen Neustart machen?

Gruß
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

krikan

Zitat von: ToKa am 20 Februar 2018, 20:19:13
Kann ja eigentlich nichts passieren, wenn ich die Parameter mal auf höhere Werte setze oder? Muss ich einen Neustart machen?
Nein. Beim Neustart wird das automatisch auf den FHEM-Standardwert gesetzt.

Aber warte vielleicht auch mal auf Rudis Analyse...

ToKa

#9
das mache ich doch gerne

In der Anlage mal noch die Übertragungszeiten der Rauchmelder (Fibaro) und der Ventile (Eurotronic).
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

ToKa

Hallo Rudi,

konntest Du schon Mal das Log auswerten bzw. prüfen, ob im Kontext von flirs Geräten etwas im argen ist?

Macht es Sinn, dass ich mit den timeout werten das ganze Mal durchspiele?

Beste Grüße
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

rudolfkoenig

Sorry, die Aufgabe ist auf dem TODO-Stack nach unten gerutscht. Nach der Analyse:
- an 8 Geraete wird innerhalb von 0.2 Sekunden tmHeating gesendet, ein 9. folgt 1.2 Sekunden spaeter (???).
- da vorher schon Befehle unterwegs waren, sendet FHEM erst jetzt den ersten Befehl an dem Controller, der den Empfang sofort bestaetigt, und auch das sofortige Senden meldet.
- die Antwort vom Geraet kommt 1.25 Sekunden spaeter, und erst jetzt macht FHEM weiter mit dem zweiten Befehl.
- dieser wird 1.37s spaeter vom Geraet quittiert, jetzt geht es mit dem dritten Befehl weiter.
- 1s spaeter meldet das ZWave Modul "No ack after 5s" fuer alle Befehle ab dem 3. (stimmt ja, 1.2+1.25+1.37+1 +Rundungsfehler meinerseits ist 5s)
- Ack vom 3. kommt 0.3s danach, und ZWDongle macht friedlich weiter.
Die Geraete empfangen vermutlich alle die Befehle, aber der Log ist voller Warnungen.

Z.Zt. gibt es jeweils eine Befehls-Warteschlange fuer jedes einzelne ZWave Geraet, und dann nochmal eine fuer den Controller. Da die einzelnen ZWave-Warteschlangen nicht von den Anderen wissen, warnen sie nach 5s. Eigentlich will ich all Warteschlangen zusammenlegen, leider ist die Aufgabe weder einfach, noch spannend, so dass ich sie vor mir herschiebe.

Als Workaround wuerde ich die Befehle mit mind 2sec Abstand an FHEM geben, am einfachsten in dem man alle Thermostate einer Struktur hinzufuegt, "attr Struktur async_delay 2" setzt, und den Befehl ueber die Struktur absetzt. Funktioniert leider nur fuer ein Befehl, nicht wenn man 2+ jeweils an alle schicken will. Und getestet habe ich es auch nicht :)

ToKa

Hallo Rudi,

danke, dass Du Dir die Zeit für die Analyse genommen hast.

Ich werde meine Funktion wieder auf InternalTimer umstellen, dann werden die einzelnen Thermostate bzw. die verschiedenen Befehle wieder zeitversetzt aufgerufen. Vielleicht muss ich noch mit den Wartenzeiten nach oben.

Falls Du doch irgendwann an den Umbau der Warteschlagen gehst, stehe ich gerne zum Testen zur Verfügung.

Beste Grüße
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

we5

gibt es denn bezüglich der Timeouts mehr Informationen oder Neuigkeiten? Mein Z-Wave-Netz ist eigentlich recht stabil, bis auf das Danalock und den Aeotec Garage Door Controller, die beide via SECURITY eingebunden sind und regelmässig solche Fehler schmeissen:

no stored commands in Internal secMsg found

Ist halt doof, wenn die Garage oder die Tür nicht aufgeht oder in der Nacht oder bei Abwesenheit nicht automatisch verschlossen wird. Der Garagentor-Controller war eigentlich recht stabil bisher, jetzt häufen sich wieder die Meldungen und dann passiert erstmal gar nix mehr. Manchmal hilft dann entweder einfach nur warten oder ein reopen auf den Dongle.

Mir würde es ja schon reichen, wenn es eine sichere Methode gibt, solche fehlgeschlagenen Methoden zu überprüfen. Momentan sind das bei mir mehrere Watchdogs und Timer, die das testen. Manchmal wird aber nicht mal der state zB auf "barrierOpen" gesetzt und dann habe ich gar keine Möglichkeit, das wirklich sicher zu testen.

Ich bin kurz davor noch weitere Funktionen zu schreiben, sowas wie "open_with_confidence" die gezielter irgendwelcher temporären at/watchdog-Regeln baut. Das ist noch ausbaufähig.

Insgesamt sind es die einzigen beiden Geräte, die bei mir Unmut erzeugen.

rudolfkoenig

Ich hab kein Neuigkeiten wg. der Timeouts.
Wenn ein "reopen" hilft, dann liegt die Ursache meiner Ansicht nach nicht in den frueher erwaehnten separaten Warteschlangen.