Hi …
… vielleicht könnt Ihr mir bei einem seltsamen Problem helfen, was mich seit ein paar Monaten wahnsinnig macht und den WAF derzeit tierisch runterzieht …
Zunächst mal meine (relevante) Umgebung:
IPS V. 2.6 #2510 (Unlimited) auf Windows Server 2008 R2 x64 (Intel Atom-Prozessor, 2 GByte RAM, SSD-Platte)
1 x FHZ 1300PC (über USB)
1 x FHZ 1000PC (über Silex-Controller)
1 x Homematic CCU
Jede Menge Sensoren und Aktoren aus dem FS20, HMS, FHT und Homematic Bereich …
1200 Variablen
Das Problem:
Ich weiss nicht genau ab wann, aber mit irgendeiner Änderung in der Umgebung (Instanz, Script, Variable, weiss der Geier …) „hängt“ IP-Symcon für einige Sekunden. Das macht sich dadurch bemerkbar, dass - wenn ich einen Taster drücke, um z.B. das Licht anzuschalten, der Sendebefehl für den Aktor 3-10 Sekunden später ausgesendet wird. Das kann man komplett nachvollziehen, betrachtet man z.B. die LED der FHZen. Beim Druck auf den Taster blinkt die LED kurz und quittiert das Empfangen des Funksignals. In IPS wird der Zustand der zugehörigen Variable aber NICHT aktualisiert und das dahinterliegende getriggerte Skript NICHT ausgeführt. Nach einigen Sekunden erfolgt dann der Funkbefehl an den Aktor, was durch längeres Leuchten der FHZ-LED signalisiert wird und die Variable den Zustand ändert.
Am Anfang dacht ich, das FS20-Signal ging verloren, deswegen drückte ich dann mehrmals den Taster. Nach einigen Sekunden wurde der Aktor dann mehrmals aus- und eingeschaltet. IPS scheint also die Sendesignale in einer Queue zu haben.
Es ist übrigens Egal, ob mit FS20 ausgelöst wird und als Aktor ein Homematic-Gerät geschaltet wird oder umgekehrt. Allerdings scheint der „Übeltäter“ wirklich das FS20-System bzw. die FHZen zu sein, denn im Log werden regelmäßig folgende Einträge gelistet (siehe Anhang SerialPort1.jpg und SerialPort2.jpg). Die „angemeckerten“ Instanzen verweisen auf die beiden FHZ, wobei die FHZ1300PC, die direkt am USB-Port des Servers hängt, öfters protokolliert wird als die andere.
Das Problem scheint auch nicht durch irgendein Skript ausgelöst zu werden, denn unmittelbar davor oder danach gibt es keine Regelmäßigkeiten (Ausführen eines bestimmen Skripts) zu beobachten. Trotzdem ist es so, dass die Einträge immer in einem Abstand von etwa 5 Minuten auftreten. Allerdings nicht immer … manchmal kommt 15 Minuten kein Eintrag und dann gehts wieder los. Auch die Anzahl der Meldungen variiert. Meistens sind es 2-3 Einträge alle 5 Minuten, manchmal aber auch nur einer oder auch mal 5 oder 6 … oder halt mal keine … ganz unterschiedlich.
Ich habe testweise auch mal alle Skript-Trigger deaktiviert, die mir irgendwelche Skripte alle 5 Minuten ausgeführt habe, ohne Erfolg.
Nach einem Neustart des Servers funktioniert das System übrigens immer einige Stunden problemlos, ohne das was „hängt“ oder protokolliert wird. Aber dann gehts irgendwann los …
Noch eine Beobachtung, die vielleicht in dem Zusammenhang steht. Wenn ich mir mit
FHZ_GetFreeBuffer
den FHT-Buffer auslesen lasse, ist nach einem Neustart des Systems der Buffer leer, also FreeBuffer = 10, so wie es sein soll. Im Laufe einiger Tage nimmt dieser Buffer aber kontinuierlich ab, obwohl alle FHT-Konfigurationen gesendet werden. Irgendwann ist FreeBuffer = 1, und das bleibt dann auch so bis zum nächsten Neustart. Ich habe alle Instanzen durchgesucht, es gibt keinen „verwaisten“ FHT mehr, die irgendwas blockieren könnten.
Habt Ihr eine Idee, wie ich dem Problem auf den Grund gehen kann oder gibt es irgendwelche Debugging-Möglichkeiten, an die ich noch nicht gedacht habe?
Danke schon mal für Eure Hilfe …
Viele Grüße …