Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Neuer Adapter: ioBroker.stiebel-lwz / ioBroker.stiebel-isg

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Neuer Adapter: ioBroker.stiebel-lwz / ioBroker.stiebel-isg

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      JB_Mystery last edited by

      Hallo Michael,

      ich habe meine Scripte jetzt endlich umgestellt. Hat leider länger gedauert als gedacht, da wenig Zeit. Es funktioniert alles super.
      Jedoch kann es bei mir vorkommen, dass ich auf einmal mehr als 5 Parameter ändern muss. Damit versuche ich einen Heizungstart zu erzwingen. Zu dieser Zeit und auch zu anderen Zeiten, wenn viele Werte geändert werden, bekomme ich die nachfolgenden Errors.

      Error Stiebel ISG.jpg

      Ich vermute, dass das ISG zu dieser Zeit überfordert ist. Kann es sein, dass du jede Änderung einzeln versuchst zu bearbeiten und damit das ISG überfordert ist? Wenn ja, würde ich den Vorschlag machen, gewisse Änderungen von Werten in einer Zeit zu sammeln und dann gemeinsam zu übertragen. Evtl. kann ja auch nur das Einlesen aller Werte nach einer Wertänderung gebündelt werden.
      Vielen Dank für Rückmeldung.

      Jörg

      P.s.: Ich bin die nächsten Wochen unterwegs und kann leider nichts testen.

      unltdnetworx 2 Replies Last reply Reply Quote 0
      • unltdnetworx
        unltdnetworx Developer @JB_Mystery last edited by

        @JB_Mystery
        Versuchen ist relativ. Das ISG macht es nicht anders. Aber ich hab eine Idee. Momentan werden alle Werte nach jedem Speichern abgerufen. Entweder ich schränke den Abrufintervall ein oder ich versuche nur die Seite abzurufen, auf der die Änderung angezeigt wird. Da es keine API gibt, kann ich das nicht anders lösen.

        1 Reply Last reply Reply Quote 0
        • unltdnetworx
          unltdnetworx Developer @JB_Mystery last edited by unltdnetworx

          @JB_Mystery
          Hallo Jörg,
          ich habe jetzt eine 10 Sekunden-Verzögerung vor das Neuladen der Einstellungen gesetzt. Diese wird bei jedem neuen Befehl zurückgesetzt. Also solltest du alle Befehle senden können und nach 10 Sekunden werden dann einmalig alle Einstellungen neugeladen anstatt pro Befehl einmal. Das sollte erhebliche Verbesserung bei deinem Problem bringen. Falls es an einer Überlastung liegen sollte. Evtl. kannst du auch eine Sekunde Pause zwischen den Befehlen setzen?

          Welche Befehle sind das denn um den Heizungsstart zu erzwingen? Es sollte doch schon reichen das Warmwasser auf Maximum zu setzen, sofern das mehr als 3 Grad (Standard Hysterese-Wert?) liegt und der Verdichter eine Zeit lang nicht gelaufen ist.

          Gib bitte kurz Rückmeldung, ob es klappt oder evtl. sogar neue Probleme gibt, dann kann ich die Versionsnummer erhöhen.

          1 Reply Last reply Reply Quote 0
          • J
            JB_Mystery last edited by

            Hallo Michael,
            der Fehler besteht leider immer noch. Wie wird denn der Error Null erzeugt?
            Habe bei mir nochmals nachgeschaut. Ich versuche vor einem definierten WW-Bedarf (Sonnenpeak) einen Heizbedarf herraus zu fordern. Dazu passe ich die folgenden Werte an, wenn sie nicht schon so stehen (Hysteresen verkleinern, Fusspunkt nach oben und Pumpenzyklen auf max). Dadurch wird ein Überprüfen auf Heizbedarf erzeugt. Hintergrund ist der, dass ich die Verdichterstarts reduzieren will. Wenn vor einem WW-Betrieb ein Heizbetrieb war, wird dieser danach nahtlos weitergeführt ohne den Verdichter neu zu starten.

            if (getState("stiebel-isg.0.Einstellungen.HEIZEN.HYSTERESEN.val162").val != Hys1 - 0.5) setState("stiebel-isg.0.Einstellungen.HEIZEN.HYSTERESEN.val162", Hys1 - 0.5);
            if (getState("stiebel-isg.0.Einstellungen.HEIZEN.HYSTERESEN.val163").val != Hys2 - 0.5) setState("stiebel-isg.0.Einstellungen.HEIZEN.HYSTERESEN.val162", Hys2 - 0.5);
            if (getState("stiebel-isg.0.Einstellungen.HEIZEN.HYSTERESEN.val167").val != Asym) setState("stiebel-isg.0.Einstellungen.HEIZEN.HYSTERESEN.val162", Asym);
            if (getState("stiebel-isg.0.Einstellungen.HEIZEN.HEIZKURVE HK1.val16").val != Fusspunkt + 1) setState("stiebel-isg.0.Einstellungen.HEIZEN.HEIZKURVE HK1.val16", Fusspunkt + 1);
            if (getState("stiebel-isg.0.Einstellungen.FACHMANN.PUMPENZYKLEN.val154").val != Pumpemax) setState("stiebel-isg.0.Einstellungen.FACHMANN.PUMPENZYKLEN.val154", Pumpemax);
            

            Nach dem Überprüfen, zum WW-Betrieb, mache ich diese Anpassung wieder Rückgängig und zusätzlich natürlich noch die WW-Werte.

            if (getState("stiebel-isg.0.Einstellungen.WARMWASSER.WW-TEMPERATUREN.val161").val != WWTemp) setState("stiebel-isg.0.Einstellungen.WARMWASSER.WW-TEMPERATUREN.val161", WWTemp);
            if (getState("stiebel-isg.0.Einstellungen.WARMWASSER.GRUNDEINSTELLUNG.val60").val != WWHysmax) setState("stiebel-isg.0.Einstellungen.WARMWASSER.GRUNDEINSTELLUNG.val60", WWHysmax);
            

            Ansonsten habe ich aber keine Probleme feststellen können. Ich war jetzt auch nur 2 Tage zuhause zum Testen und bin jetzt erst wieder ab Mai zum Testen bereit. Sorry dafür.
            Evtl. hast du ja weitere Ideen woran diese Errors liegen können. Vielen Dank schonmal.

            1 Reply Last reply Reply Quote 0
            • unltdnetworx
              unltdnetworx Developer last edited by

              Also ich vermute, dass es an zu vielen gleichzeitigen Aufrufen liegt. Die Werte können nur einzeln geschrieben werden, das lässt sich leider nicht anders lösen. Du könntest vllt. eine kurze Wartezeit einbauen. Vllt. 1-2 Sekunden. Im Moment rufst du im Prinzip 5 mal gleichzeitg das PHP-Skript auf und willst die Werte schreiben.

              1 Reply Last reply Reply Quote 0
              • J
                JB_Mystery last edited by

                Damals habe ich dies so gemacht und da schreibt man meiner Meinung nach mehrere Werte gleichzeitig ins ISG (kann mich aber auch irren):

                sendRequest2ISG('data=[{"name":"val154","value":"' + parseFloat(Pumpemax) + '"},{"name":"val162","value":"' + parseFloat(Hys1 - 0.5) + '"},{"name":"val163","value":"' + parseFloat(Hys2 - 0.5) + '"},{"name":"val167","value":"' + parseFloat(Asym) + '"},{"name":"val16","value":"' + parseFloat(Fusspunkt + 1) + '"}]');
                

                oder so:

                var Daten = "data=[";
                    Daten += '{"name":"val161","value":"42"}';
                    Daten += ',{"name":"val162","value":"' + parseFloat(Hys1) + '"},{"name":"val163","value":"' + parseFloat(Hys2) + '"},{"name":"val167","value":"' + parseFloat(Asym) + '"},{"name":"val16","value":"' + parseFloat(Fusspunkt + 0.5) + '"}';
                    Daten += ',{"name":"val154","value":"' + parseFloat(Pumpe) + '"},{"name":"val60","value":"2,5"}]';
                    sendRequest2ISG(Daten);
                

                mit dieser Funktion:

                function sendRequest2ISG(data) {
                    var request = require('request');
                        request.post(
                            {
                                url:     'http://x.x.x.x/save.php',
                                form: data
                            },
                            function(error, response, body)
                            {
                            if (!error && response.statusCode === 200) console.log("ISG response: " + JSON.stringify(body));
                            else {
                                console.log("error during ISG request: " + error);
                                console.log("response.statusCode: " + response.statusCode);
                                console.log("response.statusText: " + response.statusText);
                            }
                        });
                }
                

                Kannst es dir ja nochmals anschauen. Wenn du bei deinem Adapter keine andere Möglichkeit siehst, dann werde ich mein Schreiben der Werte natürlich verzögern.
                Ab jetzt geht's im Mai weiter.

                unltdnetworx 1 Reply Last reply Reply Quote 0
                • unltdnetworx
                  unltdnetworx Developer @JB_Mystery last edited by unltdnetworx

                  @JB_Mystery
                  Habe gerade eine neue Version eingestellt. (1.4.4)
                  Jetzt werden Befehle für 5 Sekunden gesammelt und dann gemeinsam an das ISG übermittelt, außerdem werden die Fehler jetzt besser geloggt. Habe deinen Code fürs Logging als Vorlage verwendet.

                  1 Reply Last reply Reply Quote 0
                  • J
                    JB_Mystery last edited by

                    @unltdnetworx
                    Habe deine neue Version jetzt seit ein paar Tagen am laufen und es sind keine Meldungen mehr aufgetaucht. Ich denke du kannst es so veröffentlichen. Da ich mir aber auch die Logs etwas angeschaut habe, habe ich die Aktualisierungsrate doch auch etwas nach oben gesetzt. Dies hilft auch und stört mich nicht. Es war echt dauerhaft traffic zum ISG.
                    Noch etwas in anderer Sache: Der Code ist nicht von mir, sondern er stammt von den ersten Scriptversuchen zum ISG. Den Autor kann ich gerade aber nicht mehr nennen.
                    Vielen Dank für die Anpassungen.

                    unltdnetworx 1 Reply Last reply Reply Quote 0
                    • unltdnetworx
                      unltdnetworx Developer @JB_Mystery last edited by

                      @JB_Mystery
                      Super, vielen Dank für die Rückmeldung.

                      1 Reply Last reply Reply Quote 0
                      • Q
                        Qlink last edited by

                        @unltdnetworx

                        Bei mir taucht kein Betriebsstatus für Kühlung in iobroker auf.
                        Wird der noch nicht abgefragt ?
                        stiebel eltron.PNG

                        unltdnetworx 1 Reply Last reply Reply Quote 0
                        • unltdnetworx
                          unltdnetworx Developer @Qlink last edited by

                          @Qlink
                          Kannst du mir von der Weboberfläche des ISG einen Screenshot schicken? Ich habe leider keine Kühlung und kann daher nicht nachvollziehen, wie ich diesen Wert abfragen muss.

                          1 Reply Last reply Reply Quote 0
                          • Q
                            Qlink last edited by

                            @unltdnetworx

                            Das ist ja genau das Problem an den Betriebsstati.
                            Diese werden traurigerweise im WebUI des ISG gar nicht angezeigt.

                            Ich kann nicht sehen, ob gerade die Heizung läuft, ob Warmwasser aufgeheizt wird oder ob die Kühlung läuft.

                            Mein einziger Indikator ist aktuell die Symbolanzeige an meiner FES Komfort:
                            stiebel-eltron-bedieneinheit-fes-komfort-fuer-lwz-303-403-227664.jpg

                            Da werden mir dann entsprechend die Symbole angezeigt, falls gerade geheizt, gekühlt, etc. wird:

                            FES.png

                            Der Status müsste also genau so abfragbar sein wie Heizen. Im WebUI sehe ich dazu aber wie gesagt leider auch nix.

                            unltdnetworx 1 Reply Last reply Reply Quote 0
                            • unltdnetworx
                              unltdnetworx Developer @Qlink last edited by

                              @Qlink
                              Wenn ich das richtig im Kopf habe, wird das schon angezeigt. Aber nur im Betrieb. Das ganze ist auf der Startseite zu finden. Ein Eintrag mit einem Punkt davor glaub ich.

                              1 Reply Last reply Reply Quote 0
                              • nik82
                                nik82 Most Active last edited by

                                Wenn ich mich da kurz einklinken darf:

                                Es wird schon angezeigt unter Diagnose-Status am ISG.
                                Und im IOBroker sieht man den Datenpunkt erst wenn es im ISG auch einmal aufgetaucht ist.

                                Hier ein Beispiel:
                                Das steht im ISG:
                                isg.JPG

                                Den Datenpunkt Filterwechsel hatte ich Monate nicht im Iobroker, jetzt steht er aber drin,
                                weil es im ISG einmal aufgetaucht ist:

                                iobroker.JPG

                                1 Reply Last reply Reply Quote 0
                                • Q
                                  Qlink last edited by

                                  ahh okay, d.h. ich muss noch ein paar Wochen warten bis sich die Kühlung mal aktiviert und dann sollte ich den Status auch in iobroker haben richtig ?

                                  Wie ist das mit der Lüftungsstufe ?

                                  Ich würde mir gerne in VIS anzeigen, welche Lüftungsstufe gerade aktiv ist. (also ob Stufe 1, 2 oder 3)
                                  Und später eventuell auch mal steuerbar machen über vis ...

                                  Ich kann dazu aber auch keinen passenden Status finden.

                                  Nur die Volumenströme:

                                  lueften.PNG

                                  oder sollte die Stufe bei "Lueften" angezeigt werden ? Hier wird mir aber gar kein Wert angezeigt, obwohl aktuell gerade die Stufe 1 aktiv ist ...
                                  lueften2.PNG

                                  1 Reply Last reply Reply Quote 0
                                  • nik82
                                    nik82 Most Active last edited by

                                    Genau so ist es.
                                    Und die Lüftungsstufen findest du unter Einstellungen - Lüften - Lüftungsstufen:

                                    lüftung.JPG

                                    1 Reply Last reply Reply Quote 0
                                    • Q
                                      Qlink last edited by

                                      ja, das hab ich auch gefunden.
                                      Da sehe ich aber nur welche Stufen ich eingestellt habe.

                                      Ich hätte gerne den Status, welche Stufe gerade jetzt (also live) aktiv ist ...

                                      unltdnetworx 1 Reply Last reply Reply Quote 0
                                      • unltdnetworx
                                        unltdnetworx Developer @Qlink last edited by

                                        @Qlink
                                        Das geht glaub ich nicht. Du siehst ja auch im ISG nicht welche Stufe aktiv ist.

                                        Ich hab mir z.B. eine Anwesenheiterkennung gebastelt, die bei Abwesenheit nach 30 Minuten die Lüftungsanlage auf 0 setzt. Dazu setze ich einfach die Stufe für Tag und Nacht auf 0. Wann Tag und Nacht ist, kannst du ja selbst definieren.

                                        1 Reply Last reply Reply Quote 0
                                        • nik82
                                          nik82 Most Active last edited by

                                          Das siehst du genau damit, stell doch dein ISG mal um, dann ändert sich ja auch die Einstellung.
                                          Wenn du Programme im ISG aktiviert hast wo unterschiedliche Tag und Nacht Stufen konfiguriert sind, dann musst du ein Script schreiben (Wenn Volumenstrom > 200, dann setze Variable auf Lüfterstufe 3 oder so ähnlich).
                                          Dein ISG zeigt ja auch nicht die aktuelle Lüfterstufe an, sondern nur den aktuellen Volumenstrom.

                                          unltdnetworx 1 Reply Last reply Reply Quote 0
                                          • Q
                                            Qlink last edited by

                                            Alles klar.
                                            Ich hatte gehofft, dass ich mir den Umweg über ein Script ersparen kann, aber wenns nicht anders geht, dann eben per Script Workaround.

                                            Besten Dank für eure Hilfe!

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            846
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            17
                                            419
                                            62789
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo