Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter stiebel-isg v1.4.x GitHub

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.8k

Test Adapter stiebel-isg v1.4.x GitHub

Geplant Angeheftet Gesperrt Verschoben Tester
stiebel-isgtest
203 Beiträge 12 Kommentatoren 23.7k Aufrufe 14 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M maodch

    @unltdnetworx

    Habe jetzt ein Backup eingespielt mit der isg 1.4.9, dem alten jController (1.5.14 statt 2.1.1) und sogar dem altem NPM (10.16.3 statt 10.18.1), aber das Verhalten nicht mehr vorhanden.
    Den Abfrage-Intevall habe ich bei 60 Sekunden belassen (script -> isg-adapter), also so wie mit den Fehlern.

    Ev. liegt es am jController, oder muss ja fast.

    Werde das jetzt noch über Nacht laufen lassen (sind jetzt 3h ohne Fehler), dann wieder die andere Version verwenden. Wenn dann alles wieder buggy wird, hat es wohl mit den obigen 2 Kandidaten etwas zu tun. Wenn jetzt plötzlich alles geht, dann weiss ich auch nicht mehr :dizzy_face:

    Trotzdem verstehe ich noch immer nicht, dass ich einen Fehler erhalte, beim "getState().val", als wäre der State "null".
    Wie handelst du den am isg Adapter wenn ich fragen darf? Wenn bei der Abfrage all 60 Sekunden nichts kommt, und der State existiert, gibst du "null" in den State nehme ich an? Ansonsten würde mir ja der j-script Adapter keinen Fehler werfen.
    Wäre es da allenfalls eine gute Option, z.B. 2-3 Retries zu machen bevor der State mit null befüllt wird, gerade weil das isg (Hardware) soooooo träge und unresponsive ist?

    S Offline
    S Offline
    SaschaS
    schrieb am zuletzt editiert von
    #108

    @maodch @unltdnetworx

    Moin zusammen,
    ich glaube ich habe mit einem ähnlichen Problemkind zu kämpfen. Wenn ich versuche Daten mit "getState().val" bzw. "getState().ack" abzugreifen und die Datenpunkte vom stiebel-isg Adapter nicht belegt werden, weil im Moment der Abfrage die Variable vom ISG nicht benutzt wird, dann wird im Datenpunkt kein Wert bzw. auch nicht "false" eingetragen.

    Beispiel:

    console.log('Ausgabe1: ' + getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN').ack);
    console.log('Ausgabe2: ' + getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.SCHALTPROGRAMM_AKTIV').ack);
    

    liefert:

    19:16:14.337	info	javascript.0 (25315) Stop script script.js.ISG.Test
    19:16:14.448	info	javascript.0 (25315) Start javascript script.js.ISG.Test
    19:16:14.464	warn	javascript.0 (25315) at script.js.ISG.Test:1:28
    19:16:14.465	info	javascript.0 (25315) script.js.ISG.Test: Ausgabe1: undefined
    19:16:14.465	info	javascript.0 (25315) script.js.ISG.Test: Ausgabe2: true
    19:16:14.465	info	javascript.0 (25315) script.js.ISG.Test: registered 0 subscriptions and 0 schedules
    

    Gibt es denn die Möglichkeit adapterseitig ein "false" zu setzen, wenn Datenpunkte vom ISG nicht belegt werden? Andere Lösungswege sind auch willkommen.

    unltdnetworxU 1 Antwort Letzte Antwort
    0
    • S SaschaS

      @maodch @unltdnetworx

      Moin zusammen,
      ich glaube ich habe mit einem ähnlichen Problemkind zu kämpfen. Wenn ich versuche Daten mit "getState().val" bzw. "getState().ack" abzugreifen und die Datenpunkte vom stiebel-isg Adapter nicht belegt werden, weil im Moment der Abfrage die Variable vom ISG nicht benutzt wird, dann wird im Datenpunkt kein Wert bzw. auch nicht "false" eingetragen.

      Beispiel:

      console.log('Ausgabe1: ' + getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN').ack);
      console.log('Ausgabe2: ' + getState('stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.SCHALTPROGRAMM_AKTIV').ack);
      

      liefert:

      19:16:14.337	info	javascript.0 (25315) Stop script script.js.ISG.Test
      19:16:14.448	info	javascript.0 (25315) Start javascript script.js.ISG.Test
      19:16:14.464	warn	javascript.0 (25315) at script.js.ISG.Test:1:28
      19:16:14.465	info	javascript.0 (25315) script.js.ISG.Test: Ausgabe1: undefined
      19:16:14.465	info	javascript.0 (25315) script.js.ISG.Test: Ausgabe2: true
      19:16:14.465	info	javascript.0 (25315) script.js.ISG.Test: registered 0 subscriptions and 0 schedules
      

      Gibt es denn die Möglichkeit adapterseitig ein "false" zu setzen, wenn Datenpunkte vom ISG nicht belegt werden? Andere Lösungswege sind auch willkommen.

      unltdnetworxU Offline
      unltdnetworxU Offline
      unltdnetworx
      Developer
      schrieb am zuletzt editiert von unltdnetworx
      #109

      @SaschaS
      Das geht leider nicht, weil die Werte im ISG nicht auf einen bestimmten Wert gesetzt werden, sondern einfach nicht mehr auftauchen.

      Das Problem wurde schon mal in diesem oder einem anderen Thread erörtert. Du könntest z.B. die letzte Änderung auswerten. Die Werte verfallen im Moment nach der doppelten Abrufzeit. Alternativ mit einem Script bei undefined auf false setzen.

      Gruß, Michael
      Weitere Infos im Profil.
      Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        maodch
        schrieb am zuletzt editiert von
        #110

        @SaschaS

        Musste es auch schmerzhaft lösen, aber es tut so:
        if(wertvonisg == null){WriteLog("NULL wurde von der ISG gemeldet",2);}

        sprich, halte die Daten (letzte Version) selber vor, und wenn die neuen Daten "null" sind, verwende die alten, bis du neue bekommst.

        Aber schon komisch, das Thema hat sich erst seit geringer Zeit aufgetan, au meinen alten Raspis läuft das ohne zu motzen, ausser, wenn der Adapter neu gestartet wird, taucht die gleiche Meldungsliste auf, dann aber nie mehr.

        unltdnetworxU 1 Antwort Letzte Antwort
        0
        • M maodch

          @SaschaS

          Musste es auch schmerzhaft lösen, aber es tut so:
          if(wertvonisg == null){WriteLog("NULL wurde von der ISG gemeldet",2);}

          sprich, halte die Daten (letzte Version) selber vor, und wenn die neuen Daten "null" sind, verwende die alten, bis du neue bekommst.

          Aber schon komisch, das Thema hat sich erst seit geringer Zeit aufgetan, au meinen alten Raspis läuft das ohne zu motzen, ausser, wenn der Adapter neu gestartet wird, taucht die gleiche Meldungsliste auf, dann aber nie mehr.

          unltdnetworxU Offline
          unltdnetworxU Offline
          unltdnetworx
          Developer
          schrieb am zuletzt editiert von
          #111

          @maodch
          Hast du die PN gelesen?

          Gruß, Michael
          Weitere Infos im Profil.
          Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

          M 1 Antwort Letzte Antwort
          0
          • unltdnetworxU unltdnetworx

            @maodch
            Hast du die PN gelesen?

            M Offline
            M Offline
            maodch
            schrieb am zuletzt editiert von
            #112

            @unltdnetworx
            Sorry, erst jetzt. Danke.

            1 Antwort Letzte Antwort
            0
            • S Offline
              S Offline
              SaschaS
              schrieb am zuletzt editiert von
              #113

              @maodch @unltdnetworx
              Erst einmal Danke für die schnelle Antwort. Ich scheue mich noch ein wenig auf Grund meiner Unerfahrenheit in geladene Adapter (also den Stiebel-ISG) einzugreifen und Datenpunkte zu beschreiben.

              Auch bin ich verwirrt, wo ich obigen Code zu implimentieren habe. Die If-Abfrage müsste doch dann auch in die schedule() mit rein. Dann erhalte ich doch auch nach Ablauf der Zeit wieder eine Warnung im Log. Könnt ihr noch einmal weiterhelfen. Danke :-)

              Bislang sieht mein Code so aus:

              schedule("* * * * *", function () {
                  const HEIZKREISPUMPE = "stiebel-isg.0.Info.IST_SOLLWERTE.STATUS.HEIZKREISPUMPE";
                  var VORLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VORLAUFTEMP').val;
                  var RÜCKLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.RÜCKLAUFTEMP').val;
                  var SPREIZUNG = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.SPREIZUNG').val;
                  var ISTWERT_HK1 = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.ISTWERT_HK1').val;
                  var VOLUMENSTROM = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VOLUMENSTROM').val;
                  //var HEIZKREISPUMPE = false;
              
                  // pump active, valid temperatures only
                  if (getState(HEIZKREISPUMPE).notExist) {
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VORLAUFTEMP',0,true);
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_RÜCKLAUFTEMP',0,true);
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_SPREIZUNG',0,true);
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_ISTWERT_HK1',0,true);
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VOLUMENSTROM',0,true);
                  
                  console.log("Die HKP läuft aktuell nicht. ");
                  }
                  else
                  {
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VORLAUFTEMP',VORLAUFTEMP,true);
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_RÜCKLAUFTEMP',RÜCKLAUFTEMP,true);
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_SPREIZUNG',SPREIZUNG,true);
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_ISTWERT_HK1',ISTWERT_HK1,true);
                  setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VOLUMENSTROM',VOLUMENSTROM,true);
              
                  console.log("Die HKP ist aktiv. Die VL beträgt " + VORLAUFTEMP);    
                  }; 
              }; 
              
              unltdnetworxU 1 Antwort Letzte Antwort
              0
              • S SaschaS

                @maodch @unltdnetworx
                Erst einmal Danke für die schnelle Antwort. Ich scheue mich noch ein wenig auf Grund meiner Unerfahrenheit in geladene Adapter (also den Stiebel-ISG) einzugreifen und Datenpunkte zu beschreiben.

                Auch bin ich verwirrt, wo ich obigen Code zu implimentieren habe. Die If-Abfrage müsste doch dann auch in die schedule() mit rein. Dann erhalte ich doch auch nach Ablauf der Zeit wieder eine Warnung im Log. Könnt ihr noch einmal weiterhelfen. Danke :-)

                Bislang sieht mein Code so aus:

                schedule("* * * * *", function () {
                    const HEIZKREISPUMPE = "stiebel-isg.0.Info.IST_SOLLWERTE.STATUS.HEIZKREISPUMPE";
                    var VORLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VORLAUFTEMP').val;
                    var RÜCKLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.RÜCKLAUFTEMP').val;
                    var SPREIZUNG = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.SPREIZUNG').val;
                    var ISTWERT_HK1 = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.ISTWERT_HK1').val;
                    var VOLUMENSTROM = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VOLUMENSTROM').val;
                    //var HEIZKREISPUMPE = false;
                
                    // pump active, valid temperatures only
                    if (getState(HEIZKREISPUMPE).notExist) {
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VORLAUFTEMP',0,true);
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_RÜCKLAUFTEMP',0,true);
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_SPREIZUNG',0,true);
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_ISTWERT_HK1',0,true);
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VOLUMENSTROM',0,true);
                    
                    console.log("Die HKP läuft aktuell nicht. ");
                    }
                    else
                    {
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VORLAUFTEMP',VORLAUFTEMP,true);
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_RÜCKLAUFTEMP',RÜCKLAUFTEMP,true);
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_SPREIZUNG',SPREIZUNG,true);
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_ISTWERT_HK1',ISTWERT_HK1,true);
                    setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VOLUMENSTROM',VOLUMENSTROM,true);
                
                    console.log("Die HKP ist aktiv. Die VL beträgt " + VORLAUFTEMP);    
                    }; 
                }; 
                
                unltdnetworxU Offline
                unltdnetworxU Offline
                unltdnetworx
                Developer
                schrieb am zuletzt editiert von unltdnetworx
                #114

                @SaschaS
                Am Besten erstellst du eigene Datenpunkte. Die Info Datenpunkte im ISG sind ohnehin nicht beschreibbar.

                Gruß, Michael
                Weitere Infos im Profil.
                Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                S 1 Antwort Letzte Antwort
                0
                • unltdnetworxU unltdnetworx

                  @SaschaS
                  Am Besten erstellst du eigene Datenpunkte. Die Info Datenpunkte im ISG sind ohnehin nicht beschreibbar.

                  S Offline
                  S Offline
                  SaschaS
                  schrieb am zuletzt editiert von
                  #115

                  @unltdnetworx Habe ich ja bereits größtenteils. Würde ich auch beibehalten. Aber ich muss ja mit getsState() auf die Heizkreispumpe vom Adapter zugreifen. Und wenn diese keinen Wert verzeichnet, dann gibt es doch die Warnung im Log.

                  unltdnetworxU 1 Antwort Letzte Antwort
                  0
                  • unltdnetworxU Offline
                    unltdnetworxU Offline
                    unltdnetworx
                    Developer
                    schrieb am zuletzt editiert von
                    #116

                    Es gibt jetzt eine neue Version im Masterbranch. Es werden nun zusätzliche Felder aus bestimmten Heizungen unterstützt. Basierend auf der WPL25A.

                    Wer kann, bitte gerne testen und hier kurzes Feedback geben.

                    Gruß, Michael
                    Weitere Infos im Profil.
                    Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                    1 Antwort Letzte Antwort
                    0
                    • S SaschaS

                      @unltdnetworx Habe ich ja bereits größtenteils. Würde ich auch beibehalten. Aber ich muss ja mit getsState() auf die Heizkreispumpe vom Adapter zugreifen. Und wenn diese keinen Wert verzeichnet, dann gibt es doch die Warnung im Log.

                      unltdnetworxU Offline
                      unltdnetworxU Offline
                      unltdnetworx
                      Developer
                      schrieb am zuletzt editiert von
                      #117

                      @SaschaS
                      Der Fehler kommt aus deinem Script, richtig?

                      Du könntest es mit try und catch versuchen.

                      Etwa so:

                      try {
                         var VORLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VORLAUFTEMP').val;
                         setState('eigenerDatenpunkt',VORLAUFTEMP,true);
                      }
                      catch  (e) {
                         setState('eigenerDatenpunkt',0,true);
                      }
                      

                      Gruß, Michael
                      Weitere Infos im Profil.
                      Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                      S 1 Antwort Letzte Antwort
                      0
                      • M Offline
                        M Offline
                        maodch
                        schrieb am zuletzt editiert von
                        #118

                        @unltdnetworx

                        Also, ich habe das Update nun rund 24h getestet und hatte keine Zwischenfälle.
                        Auch die Werte wurden vom System mehrmals verändert und funktionierten.

                        Also von meiner Seite aus, super Arbeit:+1: :+1: :+1:

                        1 Antwort Letzte Antwort
                        0
                        • M Offline
                          M Offline
                          maodch
                          schrieb am zuletzt editiert von
                          #119

                          @unltdnetworx

                          mir ist jetzt im Langzeitbetrieb noch etwas aufgefallen.
                          Alle states motzen nicht mehr, ausser :
                          getState "stiebel-isg.0.Info.ANLAGE.HEIZUNG.AUSSENTEMPERATUR" not found (3)

                          Immer der, egal was du davon willst, der schlägt auf.
                          In der alten Version macht dieser State keinen Mux, in der neuen, immer trouble.
                          Kannst du das ev. noch fixen?

                          unltdnetworxU 1 Antwort Letzte Antwort
                          0
                          • M maodch

                            @unltdnetworx

                            mir ist jetzt im Langzeitbetrieb noch etwas aufgefallen.
                            Alle states motzen nicht mehr, ausser :
                            getState "stiebel-isg.0.Info.ANLAGE.HEIZUNG.AUSSENTEMPERATUR" not found (3)

                            Immer der, egal was du davon willst, der schlägt auf.
                            In der alten Version macht dieser State keinen Mux, in der neuen, immer trouble.
                            Kannst du das ev. noch fixen?

                            unltdnetworxU Offline
                            unltdnetworxU Offline
                            unltdnetworx
                            Developer
                            schrieb am zuletzt editiert von unltdnetworx
                            #120

                            @maodch
                            Werden da denn Werte bei dir geschrieben? Ich denke, bei mir wird der aktualisiert.
                            Evtl. den Wert mal löschen. Wird er dann neu erzeugt?

                            Gruß, Michael
                            Weitere Infos im Profil.
                            Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                            1 Antwort Letzte Antwort
                            0
                            • unltdnetworxU Offline
                              unltdnetworxU Offline
                              unltdnetworx
                              Developer
                              schrieb am zuletzt editiert von unltdnetworx
                              #121

                              Bei mir heißt der Wert stiebel-isg.0.Info.ANLAGE.HEIZEN.AUSSENTEMPERATUR und wird sowohl neu erstellt, als auch aktualisiert. :male-detective:

                              Gruß, Michael
                              Weitere Infos im Profil.
                              Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                              1 Antwort Letzte Antwort
                              0
                              • M Offline
                                M Offline
                                maodch
                                schrieb am zuletzt editiert von
                                #122

                                @unltdnetworx

                                Habe den State gelöscht, und er kam wieder, aber genau gleich.
                                Interessant ist aber, dass der State der einzige ist der Gross/Klein geschrieben wird, alle anderen sind UPPERCASE.

                                Habe selbes auch auf meinem Backupsystem, eim Raspy4. Auch dort, sieht der State genau gleich aus.

                                ![Bild Text](3c1d465d-9d45-467b-9052-af75d556525f-grafik.png Bild Link)

                                1 Antwort Letzte Antwort
                                0
                                • unltdnetworxU Offline
                                  unltdnetworxU Offline
                                  unltdnetworx
                                  Developer
                                  schrieb am zuletzt editiert von
                                  #123

                                  Wegen der Groß-/Kleinschreibung hatte ich ursprünglich mal angefangen, die Namen zu übersetzen auch auf Englisch. Aber mit immer mehr Dynamik hab ich das wieder entfernt und offensichtlich den Eintrag vergessen.

                                  Hat aber keine Auswirkungen.

                                  Gruß, Michael
                                  Weitere Infos im Profil.
                                  Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                                  1 Antwort Letzte Antwort
                                  0
                                  • unltdnetworxU unltdnetworx

                                    @SaschaS
                                    Der Fehler kommt aus deinem Script, richtig?

                                    Du könntest es mit try und catch versuchen.

                                    Etwa so:

                                    try {
                                       var VORLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VORLAUFTEMP').val;
                                       setState('eigenerDatenpunkt',VORLAUFTEMP,true);
                                    }
                                    catch  (e) {
                                       setState('eigenerDatenpunkt',0,true);
                                    }
                                    
                                    S Offline
                                    S Offline
                                    SaschaS
                                    schrieb am zuletzt editiert von
                                    #124

                                    @unltdnetworx try und catch bringen nichts. Sobald ich getState().val verwende und bei den unten abgebildeten Werten kein State vorhanden ist, erhalte ich Warnings im Log. Egal ob getstate().val/.lc/.ack/.q/ts

                                    javascript.0	2020-02-01 15:14:36.341	warn	(25315) at script.js.ISG.Test:5:28
                                    javascript.0	2020-02-01 15:14:36.341	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                    javascript.0	2020-02-01 15:14:36.340	info	(25315) script.js.ISG.Test: Ausgabe5: undefined
                                    javascript.0	2020-02-01 15:14:36.340	warn	(25315) at script.js.ISG.Test:4:28
                                    javascript.0	2020-02-01 15:14:36.339	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                    javascript.0	2020-02-01 15:14:36.339	info	(25315) script.js.ISG.Test: Ausgabe3: undefined
                                    javascript.0	2020-02-01 15:14:36.339	warn	(25315) at script.js.ISG.Test:3:28
                                    javascript.0	2020-02-01 15:14:36.338	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                    javascript.0	2020-02-01 15:14:36.338	info	(25315) script.js.ISG.Test: Ausgabe2: null
                                    javascript.0	2020-02-01 15:14:36.337	warn	(25315) at script.js.ISG.Test:2:28
                                    javascript.0	2020-02-01 15:14:36.337	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                    javascript.0	2020-02-01 15:14:36.336	info	(25315) script.js.ISG.Test: Ausgabe1: undefined
                                    javascript.0	2020-02-01 15:14:36.336	warn	(25315) at script.js.ISG.Test:1:28
                                    javascript.0	2020-02-01 15:14:36.335	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                    

                                    Wurden in früheren Versionen vom Adapter für das ISG nicht auch "false"-Werte geschrieben?

                                    bd623804-69d8-43fb-97cf-68f9a15fa68a-image.png

                                    unltdnetworxU 1 Antwort Letzte Antwort
                                    0
                                    • S SaschaS

                                      @unltdnetworx try und catch bringen nichts. Sobald ich getState().val verwende und bei den unten abgebildeten Werten kein State vorhanden ist, erhalte ich Warnings im Log. Egal ob getstate().val/.lc/.ack/.q/ts

                                      javascript.0	2020-02-01 15:14:36.341	warn	(25315) at script.js.ISG.Test:5:28
                                      javascript.0	2020-02-01 15:14:36.341	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                      javascript.0	2020-02-01 15:14:36.340	info	(25315) script.js.ISG.Test: Ausgabe5: undefined
                                      javascript.0	2020-02-01 15:14:36.340	warn	(25315) at script.js.ISG.Test:4:28
                                      javascript.0	2020-02-01 15:14:36.339	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                      javascript.0	2020-02-01 15:14:36.339	info	(25315) script.js.ISG.Test: Ausgabe3: undefined
                                      javascript.0	2020-02-01 15:14:36.339	warn	(25315) at script.js.ISG.Test:3:28
                                      javascript.0	2020-02-01 15:14:36.338	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                      javascript.0	2020-02-01 15:14:36.338	info	(25315) script.js.ISG.Test: Ausgabe2: null
                                      javascript.0	2020-02-01 15:14:36.337	warn	(25315) at script.js.ISG.Test:2:28
                                      javascript.0	2020-02-01 15:14:36.337	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                      javascript.0	2020-02-01 15:14:36.336	info	(25315) script.js.ISG.Test: Ausgabe1: undefined
                                      javascript.0	2020-02-01 15:14:36.336	warn	(25315) at script.js.ISG.Test:1:28
                                      javascript.0	2020-02-01 15:14:36.335	warn	(25315) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZKREISPUMPE" not found (3)
                                      

                                      Wurden in früheren Versionen vom Adapter für das ISG nicht auch "false"-Werte geschrieben?

                                      bd623804-69d8-43fb-97cf-68f9a15fa68a-image.png

                                      unltdnetworxU Offline
                                      unltdnetworxU Offline
                                      unltdnetworx
                                      Developer
                                      schrieb am zuletzt editiert von
                                      #125

                                      @SaschaS
                                      Nein, können sie nicht, weil das ISG den Wert einfach nicht mehr anzeigt. Daher kann ich ihn auch nicht auf false setzen lassen.

                                      Zeig bitte mal deinen Code.

                                      Gruß, Michael
                                      Weitere Infos im Profil.
                                      Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                                      S 1 Antwort Letzte Antwort
                                      0
                                      • unltdnetworxU unltdnetworx

                                        @SaschaS
                                        Nein, können sie nicht, weil das ISG den Wert einfach nicht mehr anzeigt. Daher kann ich ihn auch nicht auf false setzen lassen.

                                        Zeig bitte mal deinen Code.

                                        S Offline
                                        S Offline
                                        SaschaS
                                        schrieb am zuletzt editiert von
                                        #126

                                        @unltdnetworx
                                        Hm..ist ja doof.

                                        Mein Code ist noch am Entstehen. Prinzipiell geht es mir aber darum, dass ich auf Änderungen von stiebel-isg.0.Info.IST_SOLLWERTE.STATUS.HEIZKREISPUMPE oder stiebel-isg.0.Info.IST_SOLLWERTE.STATUS.HEIZEN reagieren möchte. Ist dazu greife ich eben mit getState() auf die Variable vom ISG Adapter zu.

                                        schedule("* * * * *", function () {
                                            const HEIZKREISPUMPE = "stiebel-isg.0.Info.IST_SOLLWERTE.STATUS.HEIZKREISPUMPE";
                                            var VORLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VORLAUFTEMP').val;
                                            var RÜCKLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.RÜCKLAUFTEMP').val;
                                            var SPREIZUNG = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.SPREIZUNG').val;
                                            var ISTWERT_HK1 = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.ISTWERT_HK1').val;
                                            var VOLUMENSTROM = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VOLUMENSTROM').val;
                                            //var HEIZKREISPUMPE = false;
                                         
                                            // pump active, valid temperatures only
                                            if (getState(HEIZKREISPUMPE).notExist) {
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VORLAUFTEMP',0,true);
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_RÜCKLAUFTEMP',0,true);
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_SPREIZUNG',0,true);
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_ISTWERT_HK1',0,true);
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VOLUMENSTROM',0,true);
                                            
                                            console.log("Die HKP läuft aktuell nicht. ");
                                            }
                                            else
                                            {
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VORLAUFTEMP',VORLAUFTEMP,true);
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_RÜCKLAUFTEMP',RÜCKLAUFTEMP,true);
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_SPREIZUNG',SPREIZUNG,true);
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_ISTWERT_HK1',ISTWERT_HK1,true);
                                            setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VOLUMENSTROM',VOLUMENSTROM,true);
                                         
                                            console.log("Die HKP ist aktiv. Die VL beträgt " + VORLAUFTEMP);    
                                            }; 
                                        }; 
                                        
                                        unltdnetworxU 1 Antwort Letzte Antwort
                                        0
                                        • S SaschaS

                                          @unltdnetworx
                                          Hm..ist ja doof.

                                          Mein Code ist noch am Entstehen. Prinzipiell geht es mir aber darum, dass ich auf Änderungen von stiebel-isg.0.Info.IST_SOLLWERTE.STATUS.HEIZKREISPUMPE oder stiebel-isg.0.Info.IST_SOLLWERTE.STATUS.HEIZEN reagieren möchte. Ist dazu greife ich eben mit getState() auf die Variable vom ISG Adapter zu.

                                          schedule("* * * * *", function () {
                                              const HEIZKREISPUMPE = "stiebel-isg.0.Info.IST_SOLLWERTE.STATUS.HEIZKREISPUMPE";
                                              var VORLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VORLAUFTEMP').val;
                                              var RÜCKLAUFTEMP = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.RÜCKLAUFTEMP').val;
                                              var SPREIZUNG = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.SPREIZUNG').val;
                                              var ISTWERT_HK1 = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.ISTWERT_HK1').val;
                                              var VOLUMENSTROM = getState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.VOLUMENSTROM').val;
                                              //var HEIZKREISPUMPE = false;
                                           
                                              // pump active, valid temperatures only
                                              if (getState(HEIZKREISPUMPE).notExist) {
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VORLAUFTEMP',0,true);
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_RÜCKLAUFTEMP',0,true);
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_SPREIZUNG',0,true);
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_ISTWERT_HK1',0,true);
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VOLUMENSTROM',0,true);
                                              
                                              console.log("Die HKP läuft aktuell nicht. ");
                                              }
                                              else
                                              {
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VORLAUFTEMP',VORLAUFTEMP,true);
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_RÜCKLAUFTEMP',RÜCKLAUFTEMP,true);
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_SPREIZUNG',SPREIZUNG,true);
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_ISTWERT_HK1',ISTWERT_HK1,true);
                                              setState('stiebel-isg.0.Info.IST_SOLLWERTE.HEIZUNG.HKP_VOLUMENSTROM',VOLUMENSTROM,true);
                                           
                                              console.log("Die HKP ist aktiv. Die VL beträgt " + VORLAUFTEMP);    
                                              }; 
                                          }; 
                                          
                                          unltdnetworxU Offline
                                          unltdnetworxU Offline
                                          unltdnetworx
                                          Developer
                                          schrieb am zuletzt editiert von
                                          #127

                                          @SaschaS
                                          Und wenn du meinen Vorschlag mal probierst?

                                          Gruß, Michael
                                          Weitere Infos im Profil.
                                          Wenn euch der Beitrag weitergeholfen hat, könnt ihr die Bewertung rechts unten im Beitrag nutzen.

                                          S 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          448

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe