Mitsubishi Klimaanlage MELCLOUD

Starte meine IPS-Dienste dauernd neu auf den Test-Systemen. Getestet wurde auf 2 VM und mit Docker auf dem NAS. Bei keinem System gab es beim IPS-Neustart Probleme :confused:

Werde aber mal versuchen das nachzustellen mit Threads immer weiter runter drehen. Dürfte aber selbst bei einem Thread keine Probleme machen, weil die ja dann entweder verzögert abgearbeitet werden oder halt gar nicht. Aber komplett hängen und rot werden dürfte gar kein Thread :confused:

Kann das Verhalten noch jemand anderes beobachten?

Viele Grüße,
Chris

Jo danke Ralf hatte ich gefunden bin mal gespannt mach erstmal auch nen update dann geht der test weiter

Auf allen Systemen bei mir - auch mit 10 Threads keine Probleme beim IPS-Neustart. Werden zwar mal kurz viele Threads belegt, aber das ist ruck zuck wieder leer und alles gut.

Wie „voll“ ist dein IPS denn? Viele Module/Skripte/… die beim IPS-Start was machen? Irgendwas das stören könnte? …?

Weil selbst mein Haupt-Test-System, was richtig richtig voll ist mit allem möglichen Kram und wo extrem viel „Traffic“ ist…arbeitet auch mit 10 Threads noch ganz normal und entspannt.

-Chris-

PS: Weniger als 10 Threads kann man nicht einstellen.

Habe jetzt nochmal mit getestet wenn ich auf 40 stelle habe ich das Problem nicht mehr…
Hab auch nochmal zurück gesetzt dann scheitert es wieder habe den Eindruck das es sich mit dem Tasmota Modul beisst hast du das auch drauf? Aber so ist jetzt wie gesagt alles in Ordnung

Ne, Tasmota hab ich nicht.

Naja, lassen wir mal so stehen. Ich habe bei 10 Threads keine Probleme und kann es nicht nachstellen und bei dir klappt es mit mehr Threads auch.
Wenn du magst kannst du ja irgendwann nochmal versuchen raus zu finden warum es klemmt - und wenn sonst niemand Probleme „anmeldet“, lasse ich das mal auf sich beruhen :slight_smile:

Viele Grüße,
Chris

Hallo,
musste das Modul wieder löschen. Es hat mein IPS andauernd zum absturz gebracht. Es kamen Fehlermeldungen wie: Zu viele Skripte gleichzeitig…
IPS hat sich andauernd aufgehängt sobald man etwas vom Modul angeclickt hat. Fehlerbeschreibung oder screenshot hab ich leider keine.

Verstehe ich nicht :frowning: Selbst mit 10 Threads und einem Account mit 5 Klimaanlagen kann ich das bei mir nicht nachvollziehen :confused:

Was habt ihr denn sonst so alles laufen? Irgendwas das extrem viel/oft was macht? Müsste man ja gut in der Übersicht mit den Threads sehen können.
Wobei es ja bei MartinDIN jetzt zu laufen scheint (in seinem Fall halt mit 40 Threads).

Bei einer Instanz-Erstellung ist etwas mehr los, aber auch nur ein paar Threads. Aber der Timer in der IO-Instanz macht eine Abfrage mit dem Internet und schickt die Antwort dann intern an alle Klimageräte. Hat man also z.B. 5 Klimageräte dann sind ganz kurz max. 6 Threads belegt (aber bis der letzte dran ist, ist der erste auch schon wieder weg). Jeder Thread braucht weniger als 1 Sekunde (bei mir etwa 300 ms) und ist dann wieder frei.
Wenn ich mir das im „Thread-Monitor“ anschaue kann ich nicht mal richtig die Threads sehen und schon sind sie wieder weg/frei.

Mir ist zwar bekannt, aus einem Selbstversuch vor einiger Zeit, dass der Raspberry arg schwach auf der Brust ist und auch mal etwas gemütlich sein kann bei IPS-Installationen in denen etwas mehr los ist, aber ich kann mir beim besten Willen nicht vorstellen, dass die paar Aktionen vom MELCloud Modul den in die Knie zwingen können…
Muss mal schauen, ob ich noch einen Raspberry finde mit dem ich mal testen kann. Aber auch die Docker bei mir haben ja nicht wirklich „Power“ und sollten von der Leistung vergleichbar sein mit dem Raspberry.

>>> Ich habe mal ein Update hochgeladen (im Branch/Zweig „test“), wo ich die Datenübermittlung an die Geräte-Instanzen etwas „entzerre“ durch einen Sleep von 2 Sekunden zwischen den Datenübermittlungen - wenn ihr das bitte nochmal testen könntet.
Dazu einfach im Module Control nach Updates suchen und dann den Branch/Zweig auf „test“ umstellen.

Grüße,
Chris

Hallo Chris

Hab nun das Problem auch und schicke dir mal anbei einen Printscreen. Kam auch nach dem Dienste-Neustart… irgendwo hat es wohl einen Loop oder einen Hänger bei den Includes…

Gesendet von iPhone mit Tapatalk

Ich kann es auf keinem meiner Systeme nachstellen :frowning: Hatte nicht einmal so einen Fall :frowning:

Könnt ihr mir bitte mal das zugehörige Log vom IPS zur Verfügung stellen? Da müsste man doch sehen was so passiert!?

Viele Grüße,
Chris

Im Moment bin ich grad dran und kriege Ips nicht hoch… löschen kann ich das Modul nicht… versuche es mal wohl im Modulverz. Richtig files löschen oder gibt e noch eine andere Art? Schaue mir gerade das log an und sehe nicht gerade gross Fehler.

Gesendet von iPhone mit Tapatalk

Man sieht vorwiegend Temperatur Einträge von MELCloud…

Gesendet von iPhone mit Tapatalk

Was ich vor dem Neustart in den letzten Tagen änderte:

Auf die Power on und off Variable mehrere Actionsscripte definiert… dann dem aktualisierungsinterval für die MELCloud Sync etwas reduziert…

Gesendet von iPhone mit Tapatalk

Zum „harten“ Entfernen von Modul einfach im Verzeichnis „module“ den Ordner „MELCloud“ löschen und dann IPS wieder starten.

Also lief das Modul erst normal bei dir? War da auch mal ein IPS-Neustart dabei, oder war das der erste Neustart und dabei hing dann dein IPS?

Kannst du mir die komplette Log-Datei bitte mailen? Irgendwas muss bei euch anders sein als auf allen meinen Systemen. Der kleinere Timer-Intervall kann es nicht sein, hatte zum Test immer einen Intervall von 1 Minute.

Worauf läuft dein IPS?

EDIT: Was sind denn die ganzen Script Ausführungen im Foto? Was wird da bei dir gemacht?

Grüße,
Chris

RunScript wird wohl dein Modul sein :wink:
Immer wenn IPS etwas mit einer Instanz eines PHP-Moduls macht, folgt so ein Logeintrag.
Michael

:slight_smile: genau

Also ja habe das Modul mehrere Tage im Einsatz gehabt und mehrfach Dienst gestartet lief noch. Nach etwa den genannten Änderungen und Neustart soeben ging es nicht mehr… und kamen die Fehler. Kann dir den Startteil des Logs senden. Schau rein aber leider konnte ich keine direkten Fehler sehen. Aber es scheint als generiert das Modul beim Start x Abfragen welche hängen bleiben und dann halt alle Prozesse blockieren.

Gesendet von iPhone mit Tapatalk

Konnte es noch über die Module deinstallieren aber musste nach dem Start ganz fix sein :slight_smile:

Gesendet von iPhone mit Tapatalk

>> Danke :slight_smile:

@all: Ich kann es zwar leider nicht nachstellen, habe aber eine Idee wie ich das Problem beim Neustart lösen könnte. Mal sehen, ob ich das heute noch schaffe. Ich melde mich, wenn das Update online ist.

Viele Grüße,
Chris

Hey Chris geniess Weihnachten! Ist schon ein Wunder das jemand sich dem annahm und es lösen konnte. Kann locker auch ein paar weitere Wochen warten bis das wieder geht :wink:

Gesendet von iPhone mit Tapatalk

>>> UPDATE ONLINE <<<

So ihr Lieben…
…ich habe Stunden über Stunden versucht das optimale Ergebnis rauszuholen. Das Ergebnis seht ihr, wenn ihr das Modul auf die eben veröffentlichte Version aktualisiert.

Was habe ich gemacht?
> Das Modul so optimiert, dass beim IPS-Start deutlich weniger Threads belegt werden (dafür werden aber auch die Geräte-Variablen beim IPS-Start nicht aktualisiert, sondern erst beim nächsten Timer-Intervall) - das gleiche gilt beim Modul-Update.
> Allgemein habe ich die interne Kommunikation zwischen den Instanzen so weit wie möglich reduziert.

Das Problem ist - reicht es so nicht aus, dann muss ich das Modul komplett umbauen! So schön wie das mit der eigenen IO-Instanz ist, die die komplette Kommunikation mit der MELCloud übernimmt…
…aber IPS/PHP ist einfach nicht dafür geschaffen! Das funktioniert nur, wenn IPS auf einer Maschine mit ausreichend Power läuft (ein Raspberry reicht da wohl nicht aus).
Denn selbst wenn die Kommunikation mit der MELCloud auf ein Minimum reduziert ist - es bringt gar nichts! Denn jede interne Kommunikation zwischen den Modul-Instanzen belegt ebenfalls Threads…und damit kommt IPS dann bei euch nicht klar.

Denn der Ablauf ist wie folgt:
1.) IO ruft Daten von der MELCloud ab (1 Thread) und verteilt diese an alle Geräte Instanzen (1 Thread je Gerät). Dies passiert innerhalb von Millisekunden.
2.) Jedes Gerät fragt (zumindest bei der Einrichtung und beim IPS-Start, bzw. jetzt etwas verzögert) dann nochmal beim IO spezielle Geräte-Detail-Infos ab (2 Threads je Gerät, weil Gerät + IO jeweils 1 Thread belegen).
3.) Der IO holt die Geräte-Info von der MELCloud ab und schickt das zurück an das Gerät.

Das jeweils einzeln für 1 Gerät für sich wäre überhaupt kein Problem, aber weil alles intern über den IO kommuniziert wird, läuft alles innerhalb kürzester Zeit ab und belegt gleichzeitig zusätzliche Threads…und blockiert(e) so dann ggf. das IPS (je nach verfügbaren Threads und Leistung vom System).

Ich bin auf eure Tests und Berichte gespannt und hoffe, dass es jetzt gut und stabil bei euch läuft.

Viele Grüße,
Chris

PS: Anmerkung an mich >> NIE WIEDER ein Modul bauen was die Kommunikation über einen eigenen IO macht und deshalb intern zwischen den Instanzen immer wieder Daten austauschen muss und so Threads belegt.

Keine Rückmeldungen zum letzten Update?
Ist es so ok mit den Threads? Oder „nur“ besser? Keine Änderung? Probleme komplett behoben bei euch? …?

Viele Grüße,
Chris