Hallo zusammen,
ich hoffe jemand kann mir weiterhelfen - das LCN in diesem Haus treibt mich in den Wahnsinn und nichts was ich versucht habe scheint etwas zu ändern / zu verbessern.
Das Problem besteht eigentlich schon immer, wird aber leider immer schlimmer/die Timeouts treten immer häufiger auf. Ich bin an einem Punkt wo einfaches fahren lassen der Rolläden via LCN_ShutterMove Kommando nach Zeitplan nicht zuverlässig funktioniert.
Zu meinem Setup (wenn etwas fehlt bitte gerne Bescheid sagen, ich weiß nicht wirklich was relevant sein könnte):
IP Symcon läuft in Version 6.4 (Rev 6dccc096176c) als Docker Container auf meinem Synology NAS: DSM 7.2. Edition: IP-Symcon Unlimited; Variables Used: 2699. Intel x64 Prozessor.
Läuft super stabil. Keine Crashes (die ich sehen würde). Andere gesteuerte Systeme wie Hue und Homematic laufen absolut stabil/ohne irgendwelche Probleme.
Das NAS (und damit auch der Symcon Container) hat im gleichen VLAN wie die LCN-Visu eine IP-Adresse. NATSupport Switch ist in Symcon gesetzt.
LCN Gateway ist ein LCN-VISU: Version: 3.03 - LCN-PCHK 3.2.3. Scheint für sich genommen stabil zu laufen. Ist zuverlässig erreichbar. Ist alles per Kabel angebunden. Habe nie ein FW-Update dafür seitens LCN auf der Webseite gesehen. Jetzt, seit neuerem, finde ich das gar nicht mehr auf der Webseite. Entweder veröffentlichen sie das nicht mehr oder es ist für mich zu gut versteckt.
Die LCN-Module sind bis auf wenige Ausnahmen schon etwas älter (so ca. 10 Jahre, evtl. etwas mehr). Wenn ich mich recht entsinne habe ich 1 Relais-Blöcke nebst LCN-SH und ein (bzw. das eine) LCN-UPP ersetzen müssen. Keine Ahnung weshalb die gestorben sind. Es sah mir damals nach Hitzetod aus, ich habe es aber nicht wirklich hinterfragt.
Hier die FW-Versionen lt. Symcon:
140719 LCN-SH+
1B060E/0F0B0B / 1F0715 LCN-UPS
010101 LCN-UPP
Insgesamt sind es 30 Module im Bus. Wenn das hilft poste ich gerne Screenshots aus LCN-Pro. Die Module machen nur noch absolute Basisfunktionen: Tastenkommandos ausführen. Die komplette Automatisierung findet in Symcon statt und LCN ist nur (bzw. sollte nur) Befehlsempfänger sein.
Ich bin kein Spezialist, kann jedoch einfache Sachen selbst parametrieren via LCN-Pro. Zum Beispiel Schalter für Licht an/aus, Rampe, Rolläden, soetwas.
LCN-Gateway in Symcon:
-Require Acknowledgement: Aktiv
-Output-Mode: 50 steps
Verschiedene Tipps aus diesem Thread habe ich schon versucht. Danke übrigens allen die dort etwas beigetragen haben falls jemand davon hier mitliest!
Besonders an tomgr das er seine Skripte zum resetten der Module geteilt hat. Das habe ich auch wie beschrieben erfolgreich bei mir eingebaut. Alle LCN-Module die einen Dimmer oder ein Relais bedienen werden via Skript jede Nacht bei mir resettet. Ich sehe auch in LCN-Pro, dass das funktioniert: Zähler werden alle genullt und Updtime läuft wieder ab 0 los.
Wenn sonst niemand Tipps hat/mir weiterhelfen kann würde ich als nächstes mit dem Mut der Verzweiflung das u.g. versuchen.
Wie ich oben schon erwähnt habe, habe ich Probleme mit Timeouts. Im Log sieht das dann etwa so aus:
Date/Time ScriptEngine Result for Event 17192
Warning: Zeitüberschreitung beim warten auf Antwort in /var/lib/symcon/scripts/23492.ips.php on line 66
In der Praxis bedeutet das, dass der betreffende Rolladen oft nicht fährt - alle 2 oder 3 Tage ist einer dabei der nichts macht. Im Falle von SC_MOVE, das ich für eine selbst gescriptete Beschattung nutze (wo ich natürlich viel mehr Kommandos absetze und das auch viel mehr auffällt), macht es gleich nochmal so viel Spaß wenn die Rolläden herunterfahren und kein Stop-Kommando bekommen da Symcon gar nciht mitbekommen hat, dass der Rolladen losgefahren ist.
Für zeitgesteuertes hoch/runter und bei der Beschattung für komplett hoch nutze ich inzwischen, damit der Status wengistens ein paar Mal am Tag mit einer gewissen Wahrscheinlichkeit wieder richtig ist, LCN_ShutterMove.
Das sieht dann ca. so aus: (ich nehme gerne Tipps wie es besser geht, ich bitte euch bei eurer Kritik im Hinterkopf zu behalten, dass ich kein professioneller Programmierer bin/mir alles selbst beibringe bzw. aus den Foren lerne
//dass da ist der ‚require 28652.ips.php‘. Da sind die Funktionen drin: zum Beispiel: das habe ich so gemacht, dass ich den Befehl bei Bedarf wiederholen kann wenn ich einen Timeout bekomme. Aber selbst 3 Mal reicht ab und zu nicht. Die IPS_Sleep mit random 50 bis 250 ms habe ich eingebaut damit der LCN-Bus nach Möglichkeit nicht mehrere Kommandos zeitgleich bekommt/mehr Zeit zu reagieren. Ich kann wirklich nicht sagen ob es hilft oder genau so gut ist wie mit ohne.
function LCN_MV_DWN($ModulID)
{
if (LCN_ShutterMoveDown($ModulID) === false)
{
IPS_Sleep(rand(50, 250));
if (LCN_ShutterMoveDown($ModulID) === false)
{
IPS_Sleep(rand(50, 250));
LCN_ShutterMoveDown($ModulID);
}
}
}
in den Skripten selbst:
require „28652.ips.php“;
IPS_Sleep(rand(50, 250));
LCN_MV_DWN(51973);
IPS_Sleep(150);
LCN_MV_DWN(41915);
IPS_Sleep(150);
LCN_MV_DWN(48662);
IPS_Sleep(150);
LCN_MV_DWN(20424);
Danke schonmal wenn ihr bis hierher in diesem langen Post durchgehalten habt und vielen Dank im Voraus wenn jemand einen Tipp für mich hat!