HMLAN Timeout

Begonnen von Joker, 04 November 2014, 19:34:12

Vorheriges Thema - Nächstes Thema

Joker

Hallo,

ich benutze FHEM seit einigen Wochen. Ich habe aktuell nur Homematic Komponenten, nämlich Heizkörper- und Wandthermostate sowie Fensterkontakte. FHEM läuft auf einem Raspberry Pi B, auf dem sonst nichts anderes läuft. Als IO-Gerät benutze ich den HMLAN Adapter.
Es kommt bei mir eigentlich schon seit Anfang an vor, dass sich das HMLAN ab und an disconnected und sofort wieder connected. Dies habe ich nun angefangen zu untersuchen. Dazu habe ich erstmal alles deaktiviert was ich nicht brauche, sowie das LogLevel auf 5 gestellt. Es kommt weiterhin ca. 5x am Tag zum Disconnect.
Hier habe ich einen Log-Auszug von einem der Disconnects von heute. Zu diesem Zeitpunkt war niemand im Haus, es hat also niemand auf FHEM zugegriffen.
2014.11.04 15:51:33 5: Notify loop for Schlafzimmer.Heizkoerperthermostat.Clima measured-temp: 21.3
2014.11.04 15:51:33 4: eventTypes: CUL_HM Schlafzimmer.Heizkoerperthermostat.Clima measured-temp: 21.3 -> measured-temp: .*
2014.11.04 15:51:33 4: eventTypes: CUL_HM Schlafzimmer.Heizkoerperthermostat.Clima ValvePosition: 0 -> ValvePosition: .*
2014.11.04 15:51:33 4: eventTypes: CUL_HM Schlafzimmer.Heizkoerperthermostat.Clima desired-temp: 17.0 -> desired-temp: .*
2014.11.04 15:51:33 5: DbLog: logging of Device: Schlafzimmer.Heizkoerperthermostat.Clima , Type: CUL_HM , Event: measured-temp: 21.3 , Reading: measured-temp , Value: 21.3 , Unit:
2014.11.04 15:51:33 5: DbLog: logging of Device: Schlafzimmer.Heizkoerperthermostat.Clima , Type: CUL_HM , Event: ValvePosition: 0 , Reading: ValvePosition , Value: 0 , Unit:
2014.11.04 15:51:33 5: DbLog: logging of Device: Schlafzimmer.Heizkoerperthermostat.Clima , Type: CUL_HM , Event: desired-temp: 17.0 , Reading: desired-temp , Value: 17.0 , Unit:
2014.11.04 15:51:47 5: HMLAN_Send:  HMLAN1 I:K
2014.11.04 15:51:48 5: HMLAN_Send:  HMLAN1 I:K
2014.11.04 15:51:49 5: HMLAN_Send:  HMLAN1 I:K
2014.11.04 15:51:49 5: HMLAN/RAW: /E28B903,0000,45C19BBE,FF,FFCE,CB861028B9030000000A88D60F0000

2014.11.04 15:51:49 5: HMLAN_Parse: HMLAN1 R:E28B903   stat:0000 t:45C19BBE d:FF r:FFCE     m:CB 8610 28B903 000000 0A88D60F0000
2014.11.04 15:51:49 5: HMLAN1 dispatch A0FCB861028B9030000000A88D60F0000::-50:HMLAN1
2014.11.04 15:51:50 5: HMLAN_Send:  HMLAN1 I:K
2014.11.04 15:51:51 1: HMLAN_Parse: HMLAN1 new condition timeout
2014.11.04 15:51:51 5: Triggering HMLAN1 (3 changes)
2014.11.04 15:51:51 5: Notify loop for HMLAN1 cond: timeout
2014.11.04 15:51:51 4: eventTypes: HMLAN HMLAN1 cond: timeout -> cond: timeout
2014.11.04 15:51:51 4: eventTypes: HMLAN HMLAN1 Xmit-Events: timeout:6 ok:6 disconnected:6 init:6  -> Xmit-Events: timeout:.* ok:.* disconnected:.* init:.*
2014.11.04 15:51:51 4: eventTypes: HMLAN HMLAN1 prot_timeout: last -> prot_timeout: last
2014.11.04 15:51:51 5: DbLog: logging of Device: HMLAN1 , Type: HMLAN , Event: cond: timeout , Reading: cond , Value: timeout , Unit:
2014.11.04 15:51:51 5: DbLog: logging of Device: HMLAN1 , Type: HMLAN , Event: Xmit-Events: timeout:6 ok:6 disconnected:6 init:6  , Reading: Xmit-Events , Value: timeout:6 ok:6 disconnected:6 init:6  , Unit:
2014.11.04 15:51:51 5: DbLog: logging of Device: HMLAN1 , Type: HMLAN , Event: prot_timeout: last , Reading: prot_timeout , Value: last , Unit:
2014.11.04 15:51:51 1: 192.168.1.24:1000 disconnected, waiting to reappear (HMLAN1)
2014.11.04 15:51:51 5: Triggering HMLAN1 (1 changes)
2014.11.04 15:51:51 5: Notify loop for HMLAN1 DISCONNECTED
2014.11.04 15:51:51 1: HMLAN_Parse: HMLAN1 new condition disconnected
2014.11.04 15:51:51 5: Triggering HMLAN1 (4 changes)
2014.11.04 15:51:51 4: eventTypes: HMLAN HMLAN1 DISCONNECTED -> DISCONNECTED
2014.11.04 15:51:51 4: eventTypes: HMLAN HMLAN1 cond: disconnected -> cond: disconnected
2014.11.04 15:51:51 4: eventTypes: HMLAN HMLAN1 Xmit-Events: timeout:6 ok:6 disconnected:7 init:6  -> Xmit-Events: timeout:.* ok:.* disconnected:.* init:.*
2014.11.04 15:51:51 4: eventTypes: HMLAN HMLAN1 prot_disconnected: last -> prot_disconnected: last
2014.11.04 15:51:51 5: DbLog: logging of Device: HMLAN1 , Type: HMLAN , Event: DISCONNECTED , Reading: state , Value: DISCONNECTED , Unit:
2014.11.04 15:51:51 5: DbLog: logging of Device: HMLAN1 , Type: HMLAN , Event: cond: disconnected , Reading: cond , Value: disconnected , Unit:
2014.11.04 15:51:51 5: DbLog: logging of Device: HMLAN1 , Type: HMLAN , Event: Xmit-Events: timeout:6 ok:6 disconnected:7 init:6  , Reading: Xmit-Events , Value: timeout:6 ok:6 disconnected:7 init:6  , Unit:
2014.11.04 15:51:51 5: DbLog: logging of Device: HMLAN1 , Type: HMLAN , Event: prot_disconnected: last , Reading: prot_disconnected , Value: last , Unit:
2014.11.04 15:51:52 1: 192.168.1.24:1000 reappeared (HMLAN1)
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:A26ED12
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:C
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:+267F5E,00,01,FE1F
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:+26EF71,00,01,00
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:+28B907,00,01,00
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:+28B91B,00,01,00
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:+28B903,00,01,00
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:+286A21,00,01,00
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:+26E039,00,01,00
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:+26E56E,00,01,00
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:Y01,00,
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:Y02,00,
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:Y03,00,
2014.11.04 15:51:52 5: HMLAN_Send:  HMLAN1 I:T1BEB9678,04,00,00000000
2014.11.04 15:51:52 1: HMLAN_Parse: HMLAN1 new condition init
2014.11.04 15:51:52 5: Triggering HMLAN1 (3 changes)
2014.11.04 15:51:52 5: Notify loop for HMLAN1 cond: init


Ich sehe da absolut keinen Grund für den Timeout. Hat jemand eine Idee? Die anderen Disconnects von heute sehen ähnlich aus.

Interessant sind die Zeiten, zu denen heute ein Timeout passiert ist:
09:51
10:06 --> +15min
14:07 --> +4h
14:21 --> +15min
15:21 --> +1h
15:51 --> +30min

Also ich würde sagen, das tritt immer bei vielfachen von 15min auf. Wie kann ich rausfinden was das sein kann?

martinp876

Ich verdaechtige erst einm prasventiv den dblog
Hmlan muss alle 30sec getriggert werden. Das wird alle 25sec gemacht, sind also 5s puffer
Schalte einmal apptime an und pruefe, ob und wer hier kein echtzeit kann und das system blockiert. Dann ueberlege
ueberlege, obdu die funktion brauchst und wie du sie vom fhem prozess fern haeltst

Joker

#2
Hm, ich bin nicht mehr 100% sicher, aber ich glaube das Problem war auch schon da bevor ich dbLog benutzt habe. apptime läuft schon eine ganze Weile (seit gestern), und sieht aktuell so aus:
name             function    max  count    total  average maxDly
                              HMLAN1          HMLAN_Ready   2799    132     3341    25.31      0 HASH(HMLAN1)
                              HMLAN1           HMLAN_Read   1279   8522   205360    24.10      0 HASH(HMLAN1)
                 onTerraceDoorStatus          notify_Exec   1214      1     1214  1214.00      0 HASH(onTerraceDoorStatus); HASH(Wohnzimmer.Terrassentuer)
            tmr-HMLAN_KeepAliveCheck   keepAliveCk:HMLAN1    628   3698     1185     0.32     45 keepAliveCk:HMLAN1
                             myDbLog            DbLog_Log    575   2898    34625    11.95      0 HASH(myDbLog); HASH(HMLAN1)
          FHEMWEB:192.168.1.30:61107              FW_Read    496     10      638    63.80      0 HASH(FHEMWEB:192.168.1.30:61107)
                                  lp         logProxy_Get    232     26     4530   174.23      0 HASH(lp); lp; HISTORY; INT; 2014-11-03_00:00:00; 2014-11-04_00:00:01; DbLog:myDbLog:Wohnzimmer.Wandthermostat.Climate:measured-temp; DbLog:myDbLog:Wohnzimmer.Wandthermostat.Climate:desired-temp; DbLog:myDbLog:Wohnzimmer.Wandthermostat.Climate:humidity; DbLog:myDbLog:Wohnzimmer.Heizkoerperthermostat.Clima:ValvePosition; Func:logProxy_WeekProfile2Plot("Wohnzimmer.Wandthermostat.Climate",$from,$to)
                 tmr-HMLAN_KeepAlive     keepAlive:HMLAN1    115   3652     7727     2.12     36 keepAlive:HMLAN1
                             myDbLog            DbLog_Get     84     91     3764    41.36      0 HASH(myDbLog); myDbLog; HISTORY; INT; 2014-11-03_00:00:00; 2014-11-04_00:00:01; Bad.Heizkoerperthermostat.Clima:measured-temp
                         BerndAtHome          DOIF_Notify     55   2898      114     0.04      0 HASH(BerndAtHome); HASH(geofancy)
   Wohnzimmer.Wandthermostat.Climate           CUL_HM_Set     50     18      186    10.33      0 HASH(Wohnzimmer.Wandthermostat.Climate); Wohnzimmer.Wandthermostat.Climate; desired-temp; 20.5
                                  HM         HMinfo_GetFn     41      1       41    41.00      0 HASH(HM); HM; rssi
                       isBerndAtHome            dummy_Set     18      4       36     9.00      0 HASH(isBerndAtHome); isBerndAtHome; off
                 tmr-CUL_HM_ActCheck       ActionDetector     13    152     1680    11.05      3 ActionDetector
                          eventTypes    eventTypes_Notify     12   2898     4847     1.67      0 HASH(eventTypes); HASH(geofancy)
Arbeitszimmer.Heizkoerperthermostat.Clima           CUL_HM_Set      8      6       48     8.00      0 HASH(Arbeitszimmer.Heizkoerperthermostat.Clima); Arbeitszimmer.Heizkoerperthermostat.Clima; ?
     Bad.Heizkoerperthermostat.Clima           CUL_HM_Set      8      5       40     8.00      0 HASH(Bad.Heizkoerperthermostat.Clima); Bad.Heizkoerperthermostat.Clima; ?
Esszimmer.Heizkoerperthermostat.Clima           CUL_HM_Set      8      2       16     8.00      0 HASH(Esszimmer.Heizkoerperthermostat.Clima); Esszimmer.Heizkoerperthermostat.Clima; ?
  Kueche.Heizkoerperthermostat.Clima           CUL_HM_Set      8      2       15     7.50      0 HASH(Kueche.Heizkoerperthermostat.Clima); Kueche.Heizkoerperthermostat.Clima; ?
Schlafzimmer.Heizkoerperthermostat.Clima           CUL_HM_Set      8      6       48     8.00      0 HASH(Schlafzimmer.Heizkoerperthermostat.Clima); Schlafzimmer.Heizkoerperthermostat.Clima; ?
Wohnzimmer.Heizkoerperthermostat.Clima           CUL_HM_Set      8      2       16     8.00      0 HASH(Wohnzimmer.Heizkoerperthermostat.Clima); Wohnzimmer.Heizkoerperthermostat.Clima; ?


Was sagt mir das jetzt? Irgendwie scheint alles was kritisch aussieht von HMLAN selbst zu kommen?

P.S.: HMLAN hat sich seit meinem Post vorhin nochmal Disconnected, Uhrzeit 19:51. Also irgendwas muss da doch regelmäßig passieren??

Puschel74

Hallo,

ich benutze auch DBLog und einen HM-Lan-Adapter und habe keine disconnects.
Ist deine Netzwerkverbindung zum HM-Lan stabil?
Versuch mal ein anderes Netzwerkkabel - wenn du das nicht schon versucht hast.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Hollo

Ich habe auch täglich disconnects des HMLAN; benutze kein dblog und hatte das bis vor einiger Zeit nicht.

Bisher konnte ich keinen Zusammenhang zwischen bestimmten Funktionen/Aufrufen und dem disconnect erkennen.
In Verdacht habe ich noch die "Bildgenerierung" des RSS-Modul, aber dann müsste das eigentlich viel öfter passieren.

Aktuell habe ich zunächst das Logging optimiert, um die Schreibzugriffe zu minimieren und das Log übersichtlicher zu machen.
Vielleicht bringt mir das ja einen Ansatz, ob es meist in Kombination mit etwas anderem passiert.
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

frank

ZitatHMLAN hat sich seit meinem Post vorhin nochmal Disconnected, Uhrzeit 19:51. Also irgendwas muss da doch regelmäßig passieren??
apptime am besten direkt nach disconnect aufrufen (notify). so wie du es aufrufst, ist es nach "max" sortiert und nur die grössten werte werden angezeigt. interessant wäre auch die spalte maxdly. da die meisten einträge unsichtbar sind, hat es so aber füe maxdly keine aussagekraft. wenn du mit option all aufrufst, ist alles dabei.

häufig wird auch das netzwerk blockiert und fhem kann den hmlan nicht erreichen.

es gibt auch noch das modul performancemonitor. sicher schon gefunden.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

topfi

Bei mir sind die disconnects völlig verschwunden, seit ich HMLAN und Raspi einen eigenen Switch spendiert habe, auf dem nur die beiden und das Kabel zur Fritzbox sind. An der Fritzbox hängt dann der Switch mit dem Rest.

Ansonsten hat bei mir immer geholfen:

FHEM stoppen, fscheck aktivieren: touch /forcefsck und Raspi herunterfahren, kurz vom Strom trennen, wieder hochfahren und beobachten.

Deudi

Zitat von: topfi am 05 November 2014, 12:23:50
Bei mir sind die disconnects völlig verschwunden, seit ich HMLAN und Raspi einen eigenen Switch spendiert habe

Kann ich bestätigen. Disconnects waren schon weg, nachdem ich am Switch die Ports mit den HMLAN Adaptern fest auf 100MBit/s eingestellt hatte. Nun habe ich einen alten "dummen" 100MBit Switch exklusiv für Cubietruck und drei HMLAN in Verwendung. Weiterhin habe ich alle zusätzlichen Dienste (Wetter, RSS ...) auf eine zweite FHEM Instanz verlagert.
Disconnects kenne ich gar nicht mehr - was ist das  ;)
Gigabyte Brix, Ubuntu 16.04.3 LTS, Homematic, Z-Wave, EnOcean, Shelly@MQTT, SIGNALduino, JeeLink DAVIS-Sketch

dancatt

Ich habe schon seit dem ich Fhem nutze jede Menge disconnects im Monat. Anfangs mit dem RPI und nun auch mit einem Cubietruck.
Hatte einen Switch mit 100MBit/s an der FritzBox dran. An dem Switch hängt auch nur Fhem und der HMLan. An der FritzBox den entsprechenden Port auch auf 100MBit/s umgestellt => Keine Besserung
Nun einen Switch mit 1GBit/s dran und den Port an der FritzBox auch entsprechend umgestellt => Keine Besserung
Hatte mir auch schon apptime und perfmon zu Gemüte geführt  => Keine nennenswerte Erkenntnisse

Ich werde mir das demnächst aber nochmal mit apptime und perfmon anschauen. Ist bei mir schon eine Weile her.

Ich hatte aber laut Log immer den Eindruck, dass ich die disconnects nur habe, sobald ich über das Webfrontend auf Fhem zugreife.
Cubietruck: FHEM-Server 6.0

Homematic: HM-USB-CFG2, HM-CFG-LAN, HM-LC-SW1-FM, HM-LC-Sw1-Pl-DN-R1, HM-CC-RT-DN, HM-TC-IT-WM-W-EU, HM-SEC-SC-2, HM-SEC-SD, HM-PB-6-WM55

topfi

Hast Du plotfork aktiviert? Das hilft normalerweise auch.

Joker

ZitatIst deine Netzwerkverbindung zum HM-Lan stabil?
Versuch mal ein anderes Netzwerkkabel - wenn du das nicht schon versucht hast.
Sollte schon stabil sein, habe sonst mit dem Netzwerk keine Probleme. Es ist alles mit CAT7 verkabelt, ordentlich an einem Patchfeld aufgelegt und hängt an einem 24 Port Switch.

Das Logging habe ich schon soweit optimiert dass nur das geloggt wird was ich brauche.

Zitates gibt auch noch das modul performancemonitor. sicher schon gefunden.
Stimmt, der läuft schon die ganze Zeit mit. Allerdings finden sich keine Einträge zu den Zeitpunkten wo die Disconnects stattfinden. Allerdings jetzt was interessantes, habe gestern Abend noch "apptime maxDly" aufgerufen und folgende Ausgabe erhalten:
            tmr-perfmon_ProcessTimer      HASH(0x22f89c0)      1  92552       60     0.00   4100 HASH(0x22f89c0)
                 tmr-HMLAN_KeepAlive     keepAlive:HMLAN1    115   3695     7813     2.11   3540 keepAlive:HMLAN1
              tmr-FW_closeOldClients                           3   1542     1554     1.01    803
                tmr-HMLAN_UpdtMsgCnt       UpdtMsg:HMLAN1      2   2776       45     0.02    188 UpdtMsg:HMLAN1
            tmr-HMLAN_KeepAliveCheck   keepAliveCk:HMLAN1    628   3741     1185     0.32     45 keepAliveCk:HMLAN1
                 tmr-CUL_HM_ActCheck       ActionDetector     13    154     1702    11.05      3 ActionDetector
                    tmr-HMLAN_clearQ      hmClearQ:HMLAN1      1      1        1     1.00      2 hmClearQ:HMLAN1
            tmr-CUL_HM_statCntRfresh        StatCntRfresh      0      1        0     0.00      1
                      ActionDetector           CUL_HM_Set      2      2        4     2.00      0 HASH(ActionDetector); ActionDetector; ?
Arbeitszimmer.Heizkoerperthermostat           CUL_HM_Set      2      4        8     2.00      0 HASH(Arbeitszimmer.Heizkoerperthermostat); Arbeitszimmer.Heizkoerperthermostat; ?
Arbeitszimmer.Heizkoerperthermostat.Clima           CUL_HM_Set      8      6       48     8.00      0 HASH(Arbeitszimmer.Heizkoerperthermostat.Clima); Arbeitszimmer.Heizkoerperthermostat.Clima; ?
           Bad.Heizkoerperthermostat           CUL_HM_Set      3      3        9     3.00      0 HASH(Bad.Heizkoerperthermostat); Bad.Heizkoerperthermostat; ?
     Bad.Heizkoerperthermostat.Clima           CUL_HM_Set      8      5       40     8.00      0 HASH(Bad.Heizkoerperthermostat.Clima); Bad.Heizkoerperthermostat.Clima; ?
                         BerndAtHome          DOIF_Notify     55   2938      114     0.04      0 HASH(BerndAtHome); HASH(geofancy)
     Esszimmer.Heizkoerperthermostat           CUL_HM_Set      3      2        5     2.50      0 HASH(Esszimmer.Heizkoerperthermostat); Esszimmer.Heizkoerperthermostat; ?
Esszimmer.Heizkoerperthermostat.Clima           CUL_HM_Set      8      2       16     8.00      0 HASH(Esszimmer.Heizkoerperthermostat.Clima); Esszimmer.Heizkoerperthermostat.Clima; ?
          FHEMWEB:192.168.1.30:61408              FW_Read      0      1        0     0.00      0
               FileLog_isBerndAtHome          FileLog_Log      1      2        2     1.00      0 HASH(FileLog_isBerndAtHome); HASH(isBerndAtHome)
                                  HM         HMinfo_GetFn     41      1       41    41.00      0 HASH(HM); HM; rssi
                              HMLAN1         HMLAN_Notify      6   2938       31     0.01      0 HASH(HMLAN1); HASH(HMLAN1)
                              HMLAN1           HMLAN_Read   1279   8621   207711    24.09      0 HASH(HMLAN1)


Was heißt das jetzt? Dass der Performancemonitor selbst die Probleme verursacht?  :o ;D
Jedenfalls habe ich den gestern Abend dann deaktiviert und gerade mal "apptime maxDly" eingegeben, jetzt sieht es so aus:
tmr-HMLAN_KeepAliveCheck   keepAliveCk:HMLAN1    412   2899      963     0.33     67 keepAliveCk:HMLAN1
                 tmr-HMLAN_KeepAlive     keepAlive:HMLAN1     50   2851     6110     2.14     65 keepAlive:HMLAN1
              tmr-FW_closeOldClients                           2   1191     1193     1.00     25
                tmr-HMLAN_UpdtMsgCnt       UpdtMsg:HMLAN1      1    714       24     0.03     25 UpdtMsg:HMLAN1
                 tmr-CUL_HM_ActCheck       ActionDetector     13    119     1315    11.05     10 ActionDetector
                    tmr-HMLAN_clearQ      hmClearQ:HMLAN1      3     10       11     1.10      6 hmClearQ:HMLAN1
             tmr-CUL_HM_respPendTout      respPend:28B907     13      1       13    13.00      3 respPend:28B907
            tmr-CUL_HM_complConfigTO CUL_HM_complConfigTO      1      1        1     1.00      2 CUL_HM_complConfigTO
                   tmr-CUL_HM_procQs        CUL_HM_procQs      0      1        0     0.00      2
                      ActionDetector           CUL_HM_Set      3      4       10     2.50      0 HASH(ActionDetector); ActionDetector; ?
Arbeitszimmer.Heizkoerperthermostat           CUL_HM_Set      3      5       14     2.80      0 HASH(Arbeitszimmer.Heizkoerperthermostat); Arbeitszimmer.Heizkoerperthermostat; ?
Arbeitszimmer.Heizkoerperthermostat.Clima           CUL_HM_Set      9      8       65     8.12      0 HASH(Arbeitszimmer.Heizkoerperthermostat.Clima); Arbeitszimmer.Heizkoerperthermostat.Clima; ?
Arbeitszimmer.Heizkoerperthermostat.ClimaTeam           CUL_HM_Set      3      1        3     3.00      0 HASH(Arbeitszimmer.Heizkoerperthermostat.ClimaTeam); Arbeitszimmer.Heizkoerperthermostat.ClimaTeam; ?
Arbeitszimmer.Heizkoerperthermostat.Climate           CUL_HM_Set      3      1        3     3.00      0 HASH(Arbeitszimmer.Heizkoerperthermostat.Climate); Arbeitszimmer.Heizkoerperthermostat.Climate; ?
Arbeitszimmer.Heizkoerperthermostat.Remote           CUL_HM_Set      3      1        3     3.00      0 HASH(Arbeitszimmer.Heizkoerperthermostat.Remote); Arbeitszimmer.Heizkoerperthermostat.Remote; ?
Arbeitszimmer.Heizkoerperthermostat.Weather           CUL_HM_Set      2      1        2     2.00      0 HASH(Arbeitszimmer.Heizkoerperthermostat.Weather); Arbeitszimmer.Heizkoerperthermostat.Weather; ?
Arbeitszimmer.Heizkoerperthermostat.WindowRec           CUL_HM_Set      2      1        2     2.00      0 HASH(Arbeitszimmer.Heizkoerperthermostat.WindowRec); Arbeitszimmer.Heizkoerperthermostat.WindowRec; ?
           Bad.Heizkoerperthermostat           CUL_HM_Set      3      9       27     3.00      0 HASH(Bad.Heizkoerperthermostat); Bad.Heizkoerperthermostat; ?
     Bad.Heizkoerperthermostat.Clima           CUL_HM_Set     10     12       98     8.17      0 HASH(Bad.Heizkoerperthermostat.Clima); Bad.Heizkoerperthermostat.Clima; ?
Bad.Heizkoerperthermostat.ClimaTeam           CUL_HM_Set      3      1        3     3.00      0 HASH(Bad.Heizkoerperthermostat.ClimaTeam); Bad.Heizkoerperthermostat.ClimaTeam; ?
   Bad.Heizkoerperthermostat.Climate           CUL_HM_Set      3      1        3     3.00      0 HASH(Bad.Heizkoerperthermostat.Climate); Bad.Heizkoerperthermostat.Climate; ?


Also eigentlich alles gut oder? Hatte aber trotzdem wieder Disconnects den Tag über  :P

Jetzt werde ich vielleicht mal die Vorschläge mit dem Switch probieren, auch wenn ich das wirklich überhaupt nicht verstehen würde. Das würde ja heißen, der Switch würde die Pakete mehrere Sekunden verzögern, und da müsste man so einen Switch schon gehörig kaputt konfigurieren dass sowas passiert.

ZitatHast Du plotfork aktiviert? Das hilft normalerweise auch.
Sagt mir jetzt nix, wo finde ich da was dazu? Klingt irgendwie als würden dann Plots im Hintergrund laufen, aber wie gesagt, die Disconnects passieren ja auchtagsüber wenn niemand irgendwelche Plots erzeugt.

frank

ZitatStimmt, der läuft schon die ganze Zeit mit. Allerdings finden sich keine Einträge zu den Zeitpunkten wo die Disconnects stattfinden.
das kannst du nur mit global verbose=5 rausfinden.

tmr-perfmon_ProcessTimer      HASH(0x22f89c0)      1  92552       60     0.00   4100 HASH(0x22f89c0)
das modul hat fhem maximal 1ms beschäftigt (max) und wurde von fhem 4,1s (maxdly) verzögert. also wurde hier eine 4,1 sec verzögerung vom performancemonitor festgestellt. hättest du die option all benutzt, könnte man den übeltäter mit 4,1s erkennen.

ZitatAlso eigentlich alles gut oder? Hatte aber trotzdem wieder Disconnects den Tag über
4,1 s stillstand ist zwar alles andere als gut, erklärt aber den disconnect nicht, wenn wdtimer vom hmlan auf 25 eingestellt ist. demnach kommem die blockaden von ausserhalb.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Joker

Zitat von: frank am 05 November 2014, 20:08:58
das kannst du nur mit global verbose=5 rausfinden.
Ja, ist mir klar, ich sehe ja auch ab und zu mal "possible freeze starting...", aber eben nicht zu den Zeiten wo die Disconnects stattfinden.

Zitattmr-perfmon_ProcessTimer      HASH(0x22f89c0)      1  92552       60     0.00   4100 HASH(0x22f89c0)
das modul hat fhem maximal 1ms beschäftigt (max) und wurde von fhem 4,1s (maxdly) verzögert. also wurde hier eine 4,1 sec verzögerung vom performancemonitor festgestellt. hättest du die option all benutzt, könnte man den übeltäter mit 4,1s erkennen.
4,1 s stillstand ist zwar alles andere als gut, erklärt aber den disconnect nicht, wenn wdtimer vom hmlan auf 25 eingestellt ist. demnach kommem die blockaden von ausserhalb.
Achso ist das zu lesen, dann habe ich das falsch verstanden. Was genau heißt "Option all"? "apptime all" anscheinend nicht, das nimmt er nicht...

topfi

Zitat von: Joker am 05 November 2014, 19:42:35
Sagt mir jetzt nix, wo finde ich da was dazu? Klingt irgendwie als würden dann Plots im Hintergrund laufen, aber wie gesagt, die Disconnects passieren ja auchtagsüber wenn niemand irgendwelche Plots erzeugt.
Das war für dancatt gedacht:
"Ich hatte aber laut Log immer den Eindruck, dass ich die disconnects nur habe, sobald ich über das Webfrontend auf Fhem zugreife."

Seinerzeit hatte ich disconnects, wenn SVG_Plots aufgerufen wurden. Mit attr FHEMWEB plotfork 1 wird die Berechnung der Plots auf mehrere Threads aufgeteilt, was damals bei mir geholfen hat.

frank

ZitatWas genau heißt "Option all"? "apptime all" anscheinend nicht, das nimmt er nicht...
zb "apptime max all" -> commandref.

Zitat"Ich hatte aber laut Log immer den Eindruck, dass ich die disconnects nur habe, sobald ich über das Webfrontend auf Fhem zugreife."
ich habe auch festgestellt, dass andfhem, über handy (gprs) auf fritzbox mit fhem, oft disconnects auslöst. je nachdem wie das aktualisierungsverhalten der app konfiguriert ist, erscheinen die disconnects dann ziehmlich regelmässig. vor allem läuft die app auch gerne im hintergrund.

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html