Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Stiebel Eltron Adaper: Verdichterstatus true / (null)

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Stiebel Eltron Adaper: Verdichterstatus true / (null)

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

      Ich möchte gerne aus iobroker (v6.10.1) über InfluxDB (InfluxDB v2.7.3) in Grafana (v10.2.0) anzeigen lassen, wann der Verdichter meiner Wärmepumpe (Stiebel Eltron WPL20AC) läuft und wann nicht.
      Im Sinne von 0 oder 1.

      Kann mir jemand auf die Sprünge helfen, wie ich das machen kann? Der Wert ist entweder "true" oder "(null)".
      Im Logging in den Verlaufsdaten wird nur "true" mitgeschrieben.

      Screenshot 2023-11-25 113347.jpgScreenshot 2023-11-25 113601.jpg

      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @Schneider last edited by mickym

        @schneider Machs mal mit einem Alias und in die Konvertierung machst Du dann

        6033fc55-5188-4d96-ae75-d875ef0a03d9-image.png

        val? true: false
        

        a44440a5-d4ae-43d4-b5d3-9ef4e2ae201a-image.png

        S 1 Reply Last reply Reply Quote 0
        • S
          Schneider @mickym last edited by Schneider

          @mickym Danke Dir. Leider klappt es noch nicht.

          Hab ich das bisher richtig gemacht? Zuerst unter "Alias" ein Objekt angelegt und dort dann die ID des Messpunkts eingetragen:

          1.jpg

          2.jpg
          Bei Zustandstyp hatte ich zuerst boolean - das hat auch nicht funktioniert.

          3.jpg

          4.jpg

          Trotzdem bleibts bei "true" oder "(null)".

          Was mache ich noch falsch?

          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @Schneider last edited by mickym

            @schneider Vielleicht erkennt er den Status nicht dann probiere mal diese Konvertierung

            Achso und der Alias sollte als Datentyp boolean haben.

            (val !== undefined) ? true : false
            

            oder wenn das nicht geht prüfe was für ein Datentyp rauskommt bei (null) und bei true in dem Du erst mal konvertierst.

            typeof val
            
            1 Reply Last reply Reply Quote 0
            • S
              Schneider last edited by

              @mickym Leider funktioniert das auch nicht. So zeigt mir der Alias "true" und der Verdichter unter dem Striebel Adapter "false" an:

              1.jpg

              2.jpg

              Ich habe bei der Konvertierung auch mal true und false vertauscht, das funktoniert aber auch nicht.

              Wie / Wo mache ich das mit der Datentypprüfung?
              3.jpg

              mickym 1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active @Schneider last edited by mickym

                @schneider Du gibtst einfach typeof val in die Konvertierungsfunktion ein. Dann siehst Du welcher Datentyp erkannt wird - dies kann man dann später in einer Bedingung abprüfen.

                sprich mit der Konvertierungsfunktion siehst Du dann welche Datentypen erkannt werden.

                ca8da958-47fa-4013-9aa6-102331a92796-image.png

                ab12a6f5-9569-4f08-93db-d3619aee2f30-image.png

                Komischerweise liefert (null) bei typeof den Typ objekt. true/false hingegen boolean.

                Das müsstest Du halt nochmal checken. Wenn es sich so verhält dann kann man einfach auf Typ boolean abprüfen.

                Wenn es sich so verhält kannst Du den alias auf Typ boolean setzen und folgende Konvertierungsfunktion verwenden:

                (typeof val === 'boolean') ? true : false
                

                d3914079-3a13-400e-8fa5-f76b01925cd7-image.png

                Damit sollte bei (null) false kommen, bei true true.

                S 1 Reply Last reply Reply Quote 0
                • S
                  Schneider @mickym last edited by Schneider

                  @mickym
                  23ab1547-7e9d-4d71-9aca-10a862dbc131-grafik.png

                  Wie komme ich in die Ansicht, welcher Datentyp das ist? (Da wo bei dir "string" angezeigt wird)

                  Damit kommt selber Effekt. Alias true, Verdichter false

                  (typeof val === 'boolean') ? true : false 
                  

                  Hat das evtl. was mit der Rolle zu tun? Alias "state", Verdichter indicator.state
                  30f24ef1-50c8-433f-9df2-723c5ed0a08e-grafik.png

                  2f7dc7a5-fe12-4954-83a4-a32b71a92675-grafik.png

                  Wobei das im Objekt steht (boolean)
                  1b03103a-f813-40bf-8bef-28fefb77ff62-grafik.png

                  mickym 1 Reply Last reply Reply Quote 0
                  • mickym
                    mickym Most Active @Schneider last edited by

                    @schneider Nun ich habe einfach typeof val in die Konvertierung eingetragen. Und den Alias auf String. Dann siehst Du doch was für ein Datentyp erkannt wird.

                    False ist Typ boolean. unten drunter ist doch (null) dann schau halt mal was für ein Datentyp das ist. Wie gesagt (null) wurde nicht als boolean erkannt. Bei mir hat also die Konvertierung geklappt. (also boolean = true und (null) = false) Ansonsten bin ich leider mit meiner Weisheit am Ende.

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      Schneider @mickym last edited by

                      @mickym b5b8ca79-083a-4d34-b6e8-51ae6ece02c8-grafik.png

                      (null) scheint boolean zu sein.

                      Oh man.. ich versuche es mal weiter 😵

                      Vielen Dank Dir auf jeden Fall schonmal 🙂

                      mickym 1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @Schneider last edited by

                        @schneider sagte in Stiebel Eltron Adaper: Verdichterstatus true / (null):

                        (null) scheint boolean zu sein.

                        Das ist schon komisch .

                        Probiere höchstens nochmal

                        (val === true) ? true : false
                        
                        paul53 S 2 Replies Last reply Reply Quote 0
                        • paul53
                          paul53 @mickym last edited by

                          @mickym
                          (null) wird gezeigt, wenn der Datenpunkt keinen Zustand hat. Ohne Zustand kann er nicht triggern und somit auch den Alias nicht aktualisieren.

                          S mickym 2 Replies Last reply Reply Quote 0
                          • S
                            Schneider @mickym last edited by

                            @mickym Das ist total seltsam. Ich muss das morgen nochmal alles durchprobieren. Ich hatte eben mit der ersten Variante ein true & false im Alias. Nachdem die Zirkulationspumpe (mit der probiere ich das leichter durch als mit dem Verdichter) dann wieder ausging, steht im Alias wieder (null).

                            1 Reply Last reply Reply Quote 0
                            • S
                              Schneider @paul53 last edited by

                              @paul53 Ah, das erklärt das Verhalten eben.
                              Ähm, hast du dazu ne Lösung? 😉

                              paul53 Tom Mes 3 Replies Last reply Reply Quote 0
                              • paul53
                                paul53 @Schneider last edited by paul53

                                @schneider sagte: hast du dazu ne Lösung?

                                Zyklisches Polling des Datenpunktes per Skript und Schreiben in einen eigenen Datenpunkt unter "0_useradata.0".

                                1 Reply Last reply Reply Quote 0
                                • mickym
                                  mickym Most Active @paul53 last edited by

                                  @paul53 sagte in Stiebel Eltron Adaper: Verdichterstatus true / (null):

                                  @mickym
                                  (null) wird gezeigt, wenn der Datenpunkt keinen Zustand hat. Ohne Zustand kann er nicht triggern und somit auch den Alias nicht aktualisieren.

                                  Na ja schlüssig ist mir das zwar trotzdem nicht, wenn ein Zustand von boolean auf (null) geht, dann sollte doch undefined oder irgendwas dann der Zustand sein und triggern sollte ja das eine Änderung des states stattgefunden hat. Wenn man das nicht triggern kann, dann ist das ja nur mit polling möglich und das finde ich ja nicht gut.

                                  paul53 2 Replies Last reply Reply Quote 0
                                  • paul53
                                    paul53 @mickym last edited by

                                    @mickym sagte: triggern sollte ja das eine Änderung des states stattgefunden hat.

                                    Getriggert wird bei Aktualisierung des Zeitstempels, den es nicht mehr gibt.

                                    1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 @mickym last edited by paul53

                                      @mickym sagte: nur mit polling möglich

                                      Ich vermute, dass man das Polling mit existsState(id) ausführen muss, um keine Warnungen zu erhalten.

                                      const idSrc = 'stiebel-isg.0.Info.STATUSANLAGE.BETRIEBSSTATUS.VERDICHTER';
                                      const idDst = '0_userdata.0.WP.Verdichter.Status';
                                      
                                      var timer = null;
                                      
                                      on({id: idSrc, val: true}, function() {
                                          setState(idDst, true, true);
                                          clearInterval(timer);
                                          timer = setInterval(function() {
                                              if(!existsState(idSrc)) {
                                                  setState(idDst, false, true);
                                                  clearInterval(timer);
                                              }
                                          }, 10000);
                                      });
                                      
                                      1 Reply Last reply Reply Quote 0
                                      • paul53
                                        paul53 @Schneider last edited by paul53

                                        @schneider sagte: ne Lösung?

                                        Man kann auch ausnutzen, dass der Datenpunkt jede Minute mit true aktualisiert wird, solange der Verdichter läuft.

                                        const idSrc = 'stiebel-isg.0.Info.STATUSANLAGE.BETRIEBSSTATUS.VERDICHTER';
                                        const idDst = '0_userdata.0.WP.Verdichter.Status';
                                        
                                        var timer = null;
                                        
                                        on({id: idSrc, val: true}, function() {
                                            setState(idDst, true, true);
                                            clearTimeout(timer);
                                            timer = setTimeout(function() {
                                                setState(idDst, false, true);
                                            }, 70000);
                                        });
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • Tom Mes
                                          Tom Mes @Schneider last edited by

                                          @schneider ich habe auch eine Stiebel Eltron und wollte mir auch per Grafana und iobroker (mit influx DB) eine Übersicht basteln, leider das gleiche Problem wie bei dir, ich sehe nur, wenn auf True gesetzt wird und sonst leere Punkte, somit immer nur "true" und nie ein "false" bzw. "Verdichter ist aus".

                                          Ganz schlau werde ich als iobroker Neuling noch nicht aus den Nachrichten.
                                          Wo gebt ihr den Code an, den zB auch @paul53 hier eingetragen hat?

                                          Ich habe es mit blockly Funktionen versucht, aber es aktualisiert sich nicht:
                                          Screenshot 2023-12-13 122427.png

                                          Ähnliches habe ich auch für meien PV gemacht, um zu visualisieren, ob Strom generiert wird etc. Da funktioniert es, aber da wird auch nicht "null" zurückgegeben, sondern halt Werte über 0 (watt).

                                          Hast du es zum Laufen bekommen?

                                          Tom Mes 1 Reply Last reply Reply Quote 0
                                          • Tom Mes
                                            Tom Mes @Tom Mes last edited by

                                            @tom-mes habe es ebenfalls gelöst mit dem Script von Paul53. Es ist einfach an Stelle von Blockly ein Javascript.
                                            Vielen Dank an @paul53.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            617
                                            Online

                                            32.0k
                                            Users

                                            80.5k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            20
                                            784
                                            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