Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro)

    NEWS

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro)

    This topic has been deleted. Only users with topic management privileges can see it.
    • maxclaudi
      maxclaudi @Michi 0 last edited by

      @michi-0 sagte in Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro):

      Heute Morgen sind mir 2 Sachen aufgefallen:

      Ich hab den Proxmox-Host gestern von 0.00 Uhr bis 5.00 Uhr schlafen gelegt. Vor dem Herunterfahren von ioBroker habe ich den Zendure auf konstante Entladung von 280 Watt eingestellt. Bei Neustart kommen alle Skripte auch wieder ans leben wie sie sollen.

      ABER: Anscheinend ist bei dem Neustart von ioBroker von Zendure-Seite aus die MQTT Verbindung geblockt. Mein Steuerungsskript hatte zwar geregelt, das hat den Stromspeicher aber nicht interessiert. Erst als ich in der App in den MQTT Einstellungen wieder auf speichern gegangen bin, hat alles funktioniert. Ich würde den ioBroker/Proxmox künftig gerne über Nacht aus lassen, bzw. zumindest wöchentlich einmal neu starten lassen. Dann jedes mal in die App zu müssen ist lästig...

      Habe die Lösung dazu gefunden. Benötige aber parameter, weil ich ja kein Gerät habe.

      @Daniel-8 oder @Michi-0
      ist jemand anwesend und hat Zeit schnell was zu testen und mir die Antworten hier jeweils als Code </> zur Verfügung stellt?

      Dazu hab ich ein Blockly vorbereitet.
      Dort muss nur die IP des Zendure Geräts eingegeben werden.
      Danach speichern und ausführen.

      Im debug Output steht dann die Antwort.
      Benötige ich 2x:

      • 1x die Antwort, wenn mqtt über App eingeschaltet ist und Blockly ausgeführt wurde.
        Antwort hier rein kopieren und Blockly stoppen.
      • In App mqtt ausschalten und dann Blockly noch einmal starten.
        Die Antwort dann auch wieder hier rein kopieren.

      Falls sn (seriennummer) in der Antwort mit übertragen wird, einfach ersetzen durch:

      EXXXXXXXXXXXXX0
      

      Blockly-Bild:

      820a1170-a695-430b-8852-5a7099844804-image.png

      Blockly:

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="WKVzKkF]CQz`6gllim#?">IPzendure</variable>
          <variable id="PK*aTcO_h5[q.Mm,#VS_">curlStep01</variable>
          <variable id="a)jjJ@5@VTIz;JG^H%B:">curlStep02</variable>
          <variable id="lt9bQKdr:bCWUXjSXbh-">mqttStatus</variable>
        </variables>
        <block type="comment" id="Tq])09rP3m]6LRyx{]A;" x="-112" y="88">
          <field name="COMMENT">IP von Zendure-Gerät eintragen:</field>
          <next>
            <block type="variables_set" id="+lg1CnCO96pB4U$d2LI?">
              <field name="VAR" id="WKVzKkF]CQz`6gllim#?">IPzendure</field>
              <value name="VALUE">
                <block type="text" id="7my^9C{WQM%Ro=zaX2r.">
                  <field name="TEXT">192.168.177.103</field>
                </block>
              </value>
              <next>
                <block type="comment" id="CHN^=n~%z+6/Z_uvsFr!">
                  <field name="COMMENT">----</field>
                  <next>
                    <block type="comment" id="gi4m2(WRneBA3!Iu]K3Q">
                      <field name="COMMENT">folgendes nicht aendern</field>
                      <next>
                        <block type="variables_set" id="LHK~ASG%TAkM?[mBvKy:">
                          <field name="VAR" id="PK*aTcO_h5[q.Mm,#VS_">curlStep01</field>
                          <value name="VALUE">
                            <block type="text" id="PI7JX0+SuOgaLe9YA+e2">
                              <field name="TEXT">curl -X GET "http://</field>
                            </block>
                          </value>
                          <next>
                            <block type="variables_set" id="**4~9..5=~xFn(?t1h#}">
                              <field name="VAR" id="a)jjJ@5@VTIz;JG^H%B:">curlStep02</field>
                              <value name="VALUE">
                                <block type="text" id="E|iEDh+Mi}[EB4fc`SX2">
                                  <field name="TEXT">/rpc?method=HA.Mqtt.GetStatus"</field>
                                </block>
                              </value>
                              <next>
                                <block type="variables_set" id="eGdwc0]EX(re|0pM;@$[">
                                  <field name="VAR" id="lt9bQKdr:bCWUXjSXbh-">mqttStatus</field>
                                  <value name="VALUE">
                                    <block type="text_join" id="K*az/})Xda}5YAq}KlLX">
                                      <mutation items="3"></mutation>
                                      <value name="ADD0">
                                        <block type="variables_get" id="h.Iv*O%k$s(c]dR[E_W_">
                                          <field name="VAR" id="PK*aTcO_h5[q.Mm,#VS_">curlStep01</field>
                                        </block>
                                      </value>
                                      <value name="ADD1">
                                        <block type="variables_get" id="Y0`DMbV#c4OO45i/D(AY">
                                          <field name="VAR" id="WKVzKkF]CQz`6gllim#?">IPzendure</field>
                                        </block>
                                      </value>
                                      <value name="ADD2">
                                        <block type="variables_get" id="FcN*2RYH]Re*)W_4gmFj">
                                          <field name="VAR" id="a)jjJ@5@VTIz;JG^H%B:">curlStep02</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="exec" id="s`+h.dZ/(m/#e1XRQC!K">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation>
                                      <field name="WITH_STATEMENT">TRUE</field>
                                      <field name="LOG"></field>
                                      <value name="COMMAND">
                                        <shadow type="text" id="vU~ffyXke.dX]yajp3,*">
                                          <field name="TEXT"></field>
                                        </shadow>
                                        <block type="variables_get" id="S9nQE4y*sKo=VyT98o0x">
                                          <field name="VAR" id="lt9bQKdr:bCWUXjSXbh-">mqttStatus</field>
                                        </block>
                                      </value>
                                      <statement name="STATEMENT">
                                        <block type="debug" id="G#%Jm[L_QdFH610@K02x">
                                          <field name="Severity">info</field>
                                          <value name="TEXT">
                                            <shadow type="text" id="d$y7xmLq8PV01kmH0![x">
                                              <field name="TEXT">test</field>
                                            </shadow>
                                            <block type="exec_result" id="~YDu`4S_nk45Bv7cAHl*">
                                              <field name="ATTR">result</field>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </next>
        </block>
      </xml>
      
      D 1 Reply Last reply Reply Quote 0
      • M
        Michi 0 last edited by

        Bin grad noch unterwegs. Und über VPN am Tablet wäre das grausam. Ich versuche die die Daten am späten Nachmittag zukommen zu lassen!

        maxclaudi 1 Reply Last reply Reply Quote 0
        • maxclaudi
          maxclaudi @Michi 0 last edited by maxclaudi

          @michi-0
          Schade. vorher kann ich nicht anfangen.
          Hoffe dass ich später noch Zeit dafür finde.

          @Daniel-8 ?

          Vermutlich ist das ein json das nur enabled:true oder enabled:false liefert.

          1 Reply Last reply Reply Quote 0
          • D
            Daniel 8 @maxclaudi last edited by

            @maxclaudi

            Hier die Egebnise

            Mit MQTT an

            javascript.0	13:59:49.838	info	
            {"connected":true}
            

            Mit MQTT aus

            javascript.0	14:00:35.614	info	
            {"connected":false}
            
            maxclaudi M 2 Replies Last reply Reply Quote 1
            • maxclaudi
              maxclaudi @Daniel 8 last edited by

              @daniel-8 sagte in Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro):

              @maxclaudi

              Hier die Egebnise

              Mit MQTT an

              javascript.0	13:59:49.838	info	
              {"connected":true}
              

              Mit MQTT aus

              javascript.0	14:00:35.614	info	
              {"connected":false}
              

              Das ist jeweils die komplette Antwort?

              D 1 Reply Last reply Reply Quote 0
              • D
                Daniel 8 @maxclaudi last edited by

                @maxclaudi sagte in Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro):

                @daniel-8 sagte in Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro):

                @maxclaudi

                Hier die Egebnise

                Mit MQTT an

                javascript.0	13:59:49.838	info	
                {"connected":true}
                

                Mit MQTT aus

                javascript.0	14:00:35.614	info	
                {"connected":false}
                

                Das ist jeweils die komplette Antwort?

                Ja mehr gab es nicht

                maxclaudi 1 Reply Last reply Reply Quote 0
                • maxclaudi
                  maxclaudi @Daniel 8 last edited by

                  @daniel-8 sagte in Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro):

                  Ja mehr gab es nicht

                  👍 Dann mach ich mich mal an die Arbeit 🙂

                  1 Reply Last reply Reply Quote 1
                  • M
                    Michi 0 @Daniel 8 last edited by

                    @daniel-8 sagte in Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro):

                    @maxclaudi

                    Hier die Egebnise

                    Mit MQTT an

                    javascript.0	13:59:49.838	info	
                    {"connected":true}
                    

                    Mit MQTT aus

                    javascript.0	14:00:35.614	info	
                    {"connected":false}
                    

                    Same here!

                    1 Reply Last reply Reply Quote 1
                    • M
                      Michi 0 @maxclaudi last edited by Michi 0

                      @maxclaudi sagte in Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro):

                      Wenn HEMS aktiviert ist, automatisch smartMode:0 aktiviert wurde und Du dann wieder (bei aktiviertem HEMS) smartMode:1 setzt:

                      • wird von smartMode:0 auf smartMode:1 gesetzt? ----> Ja
                      • wenn ja, wechselt smartMode zurück auf 0? ----> Nein / Nur wenn ich in HEMS den Modus von Grundlast auf Stromtarif ändere
                      • wenn zurück auf 0, nach welcher Zeit ca? ----> XXX
                      • wenn zurück auf 0, falls feststellbar: was machte HEMS? bzw. wurde ein Limit geändert? ----> XXX

                      Wenn ich HEMS aktiviere (SmartMode auf 0) und wieder deaktiviere und anschließend MQTT wieder aktiviere ändert sich der SmartMode bei mir nicht von alleine wieder auf 1. Allerdings wurden auch keine Eingaben von ioBroker übernommen solange der SmartMode auf 0 war...

                      maxclaudi 1 Reply Last reply Reply Quote 1
                      • maxclaudi
                        maxclaudi @Michi 0 last edited by maxclaudi

                        @michi-0 und @daniel-8
                        done 🙂

                        Siehe Eingangspost vom Thread.

                        mit Datenpunkte in iobroker steuerbar per http:

                        • MQTT ein- und ausschalten mit aktueller Status-Info: MQTT verbunden oder nicht.
                        • smartMode ein-/auschalten mit aktueller Status-Info von smartMode: 1 (ein) oder 0 (aus).

                        Bitte testen und viel Spaß 😉

                        maxclaudi 1 Reply Last reply Reply Quote 1
                        • maxclaudi
                          maxclaudi @maxclaudi last edited by

                          Frage:
                          Mit dem Script liefert MqttConnectInfo Strings: "connected" / "disconnected"

                          Soll das zum leichteren Auswerten in Blockly umgeschrieben werden zu einer Nummer?
                          1 wenn MQTT verbunden / enabled
                          0 wenn getrennt / disabled

                          M 1 Reply Last reply Reply Quote 2
                          • M
                            Michi 0 @maxclaudi last edited by

                            @maxclaudi
                            Skript läuft. Steuerung funktioniert und Änderungen werden angezeigt. Die Umstellung bei MQTT auf 1 / 0 hast Du schon erledigt? Zumindest lässt es sich bei mir schon damit steuern. Die Umstellung bei MQTT dauert zwar sehr lange (gefühlt mehr als 1 Minute), aber es macht dennoch das was es soll!

                            Werde gleich mal meine Skripte etwas tunen 😉

                            maxclaudi 1 Reply Last reply Reply Quote 0
                            • maxclaudi
                              maxclaudi @Michi 0 last edited by maxclaudi

                              @michi-0 sagte in Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro):

                              @maxclaudi
                              Skript läuft. Steuerung funktioniert und Änderungen werden angezeigt. Die Umstellung bei MQTT auf 1 / 0 hast Du schon erledigt?

                              Guten Morgen 🙂
                              Jetzt ja.
                              Scripte im ersten post wurden verändert: mqttConnectInfo: 0 = MQTT aus / 1 = MQTT an
                              Statt disconnected / connected.
                              So kann es in Blockly/scripts einfacher verwendet verwendet werden.
                              Falls Wert von mqttConnectInfo == 0 mache: steuere .... und... steuere setMqttConnect mit 1

                              Zumindest lässt es sich bei mir schon damit steuern.

                              Die Datenpunkte zum Steuern sind nur zum Setzen des Wertes:

                              • setSmartMode = 0 Speichern in Flash
                              • setSmartMode = 1 Speichern nur im RAM (empfohlen!)
                              • setMqttConnect = 0 MQTT am Zendure-Gerät deaktivieren
                              • setMqttConnect = 1 MQTT am Zendure-Gerät aktivieren

                              Hinweis:
                              Die Set-Datenpunkte (setSmartMode, setMqttConnect) werden nach dem Schreiben nicht automatisch aktualisiert und sind daher nicht für das Auslesen aktueller Zustände gedacht.

                              Ist bewusst so umgesetzt, damit dieselben Set-Werte jederzeit erneut geschrieben werden können – auch wenn sie bereits zuvor gesendet wurden.

                              Beispiel:
                              setMqttConnect = 1, MQTT wird eingeschaltet.

                              Wird MQTT anschließend über die Zendure-App oder das Gerät selbst ausgeschaltet, bleibt der Wert in ioBroker trotzdem auf 1.

                              Dadurch ist es möglich, einfach erneut setMqttConnect = 1 zu setzen, um MQTT wieder zu aktivieren.

                              Zum reinen Auslesen / Vergleichen der aktuellen Zustände in Blockly/Scripts bitte nur diese Datenpunkte verwenden:

                              • mqttConnectInfo: 0 = MQTT aus / 1 = MQTT an
                              • smartModeInfo: 0 = Flash / 1 = RAM

                              Die Umstellung bei MQTT dauert zwar sehr lange (gefühlt mehr als 1 Minute), aber es macht dennoch das was es soll!

                              Ja, das ist normal 🙂

                              Das hängt an zwei Stellen:

                              1. Hauptsächlich Geräteseitig
                                Wenn du den Schaltbefehl schickst, braucht das Zendure-Gerät ein paar Sekunden, bis es den MQTT-Stack sauber herunterfährt und connected=false meldet. Das ist kein sofortiges "Stecker ziehen", sondern ein geregeltes Disconnect. Beim Einschalten genauso.

                              2. Scriptseitig (Polling)
                                Script fragt den Status nur alle intervalMqtt Sekunden ab (default 300s).
                                Direkt nach dem Verbinden/Trennen, steht da evtl. noch 0, bis das nächste Polling kommt.
                                Deshalb kann es zusätzlich noch maximal die Länge des Poll-Intervalls dauern, bis die Änderung sichtbar wird.

                              Werde gleich mal meine Skripte etwas tunen 😉

                              👍 😊

                              D 1 Reply Last reply Reply Quote 0
                              • D
                                Daniel 8 @maxclaudi last edited by

                                @maxclaudi

                                Vielen Dank für die Skripte. Werde die bei nächster Gelegenheit umsetzen. Haben nur leider seit gestern Nachmittag einen Wasserschaden in unserer Wohnung. Das hatte natürlich Vorrang

                                maxclaudi 1 Reply Last reply Reply Quote 0
                                • maxclaudi
                                  maxclaudi @Daniel 8 last edited by

                                  @daniel-8
                                  ohje, wie bemerkt und entstanden?

                                  D 1 Reply Last reply Reply Quote 0
                                  • D
                                    Daniel 8 @maxclaudi last edited by

                                    @maxclaudi

                                    Wir haben eine Wohnung für die Schwiegereltern gekauft und zum Glück kam der küchenbauer gestern zum ausmessen.

                                    Da war das hauptrohr verstopft und da lief es dann wie ein Wasserfall raus.

                                    1 Reply Last reply Reply Quote 0
                                    • D
                                      Daniel 8 last edited by

                                      Heute Nacht ging mein Smartmode um 23.37 Uhr automatisch auf 0. Ich kann nur noch nicht sagen woher das kommt. Eventuell von der cloud. Noch ist meiner da angemeldet.

                                      maxclaudi 1 Reply Last reply Reply Quote 0
                                      • maxclaudi
                                        maxclaudi @Daniel 8 last edited by

                                        @daniel-8
                                        Kann völlig normal sein. smartMode:1 sollte bei autoModel:0 einwandfrei funktionieren.

                                        Sobald ein anderes Model oder irgend eine Cloud-Automatik eingreift, könnte er auf 0 gesetzt werden.
                                        Finde das macht nichts.
                                        Entscheidend ist, dass wenn man selbst mit scripts über autoModel:0 steuert, der smartMode:1 gesetzt ist.
                                        Dafür den smartMode überwachen lassen.

                                        Das System/Cloud geht auch nicht davon aus, dass smartMode:1 (schreiben ins RAM) Dauerzustand sein soll. Obwohl wir uns das wünschen.

                                        D 1 Reply Last reply Reply Quote 0
                                        • D
                                          Daniel 8 @maxclaudi last edited by

                                          @maxclaudi sagte in Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro):

                                          @daniel-8
                                          Kann völlig normal sein. smartMode:1 sollte bei autoModel:0 einwandfrei funktionieren.

                                          Sobald ein anderes Model oder irgend eine Cloud-Automatik eingreift, könnte er auf 0 gesetzt werden.
                                          Finde das macht nichts.
                                          Entscheidend ist, dass wenn man selbst mit scripts über autoModel:0 steuert, der smartMode:1 gesetzt ist.
                                          Dafür den smartMode überwachen lassen.

                                          Das System/Cloud geht auch nicht davon aus, dass smartMode:1 (schreiben ins RAM) Dauerzustand sein soll. Obwohl wir uns das wünschen.

                                          Welches autoModel ich habe kann ich nicht sagen. Muss mal sehen ob das auch ausgelesen wird. Bin grad nicht vor Ort.

                                          Ich habe den speicher aus hems raus und ist quasi nur als Gerät in der cloud. Somit sollte ja da keine automatik eingreifen. Aber ich habe den smartMode ja überwacht. Muss das nur mal noch machen das er automatisch wieder auf 1 springt

                                          maxclaudi 1 Reply Last reply Reply Quote 0
                                          • maxclaudi
                                            maxclaudi @Daniel 8 last edited by maxclaudi

                                            @daniel-8

                                            006845b7-7227-4593-bcad-c43de7427ac2-image.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            980
                                            Online

                                            32.1k
                                            Users

                                            80.8k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            73
                                            1001
                                            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