Weiter zum Inhalt
  • Home
  • Aktuell
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Skripten / Logik
  4. JavaScript
  5. Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

NEWS

  • Monatsrückblick Juli / August 2026 ist online!
    BluefoxB
    Bluefox
    10
    1
    1.2k

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    1.4k

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    11
    1
    3.9k

Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

Geplant Angeheftet Gesperrt Verschoben JavaScript
558 Beiträge 23 Kommentatoren 70.8k Aufrufe 21 Beobachtet
  • Ä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.
  • D Daniel 8

    @maxclaudi sagte:

    maxclaudi sagte:

    Heureka!
    Der lokale Broker und Man-in-the-Middle stehen.
    Die originale Zendure-App funktioniert einwandfrei parallel.
    Endlich neue wertvolle Erkenntnisse.

    In den nächsten Tagen stellt sich bei den Tests raus, ob meine Zertifikatskette auf einem isolierten lokalen Broker evtl. quasi unendlich lange gültig sein wird.
    Ich drücke mir gespannt die Daumen und hoffe, dass es funktioniert.

    Update: Es funktioniert! :-)

    Die Tests an meinen Geräten waren erfolgreich. Über ein passendes ioBroker-Skript läuft die lokale Zertifikatskette im isolierten Setup absolut stabil und fehlerfrei.

    Einzig ein Datenpunkt wird bei Erreichen des Zertifikatsendes durch das Skript bei Anfrage des Geräts an die Cloud (die ja nun als lokaler Broker existiert) empfangen, geändert und mit entsprechender Antwort an das Zendure-Gerät gesendet. Funktioniert bei mir einwandfrei.

    Das Ganze gilt logischerweise nur für den aktuellen Firmware-Stand.
    Sobald Zendure in Zukunft neue Schlüssel (Keys) und Zertifikate per Update aufspielt, fängt man krypto-technisch natürlich wieder bei Null an.
    Aber für das aktuelle Setup steht die lokale Steuerung felsenfest!

    Wenn ich es ohne Firmware-Update mit erneuerten Zertifikaten lokal von der Cloud isoliert so laufen lasse, dann wäre theoretisch ein unendlicher Betrieb möglich. :-)

    Verstehe ich das richtig? Wenn man auf lokalen Broker umstellt mit deinem Programm, läuft irgendwann die Zertifikatskette ab und es ist keine Steurung mehr möglich?

    maxclaudiM
    maxclaudiM
    maxclaudi
    schrieb am zuletzt editiert von maxclaudi
    #529

    @Daniel-8 sagte:
    Verstehe ich das richtig? Wenn man auf lokalen Broker umstellt mit deinem Programm, läuft irgendwann die Zertifikatskette ab und es ist keine Steurung mehr möglich?

    @Daniel-8 Im Standard-Fall ohne Skript-Hilfe:
    Ja, absolut richtig verstanden und ist völlig normal bei TLS. Die Zertifikatsgültigkeit betrifft auch bei normalem Betrieb alle Geräte und die Cloud selbst.

    Jedes TLS-Zertifikat hat ein hartes Ablaufdatum – sowohl auf dem Server (Broker) der Cloud als auch auf dem Client (Zendure-Gerät).
    Die aktuellen Zertifikate laufen in diesem Fall im Mai 2030 ab.

    Zuvor muss es von Zendure also irgendwann ein Firmware-Update geben, allein um neue Zertifikate und Keys auf die Hardware aufzuspielen.

    Wenn das Zertifikatsende erreicht ist und die Zertifikate auf auch nur einer Seite (Broker oder Client) ungültig werden, kann keine gesicherte Verbindung mehr hergestellt werden.
    Weil die Zertifikate fest in der Firmware des Zendure-Geräts implementiert sind, verweigert die Firmware dann krypto-technisch den Handshake und der TLS-Verbindungsaufbau bricht unweigerlich ab.

    Genau dafür habe ich ein kleines ioBroker-Skript als "Schutzschild" :-)
    Sobald das Gerät bei Erreichen des Datums seine gewöhnliche Anfrage an meinen lokalen Broker stellt, klinkt sich das Skript ein und prüft, ob es was zu tun gibt.

    • Wenn innerhalb der Zertifikatsgültigkeit, wird die Standard-Antwort gesendet.
    • Wenn außerhalb der Zertifikatsgültigkeit, dann generiert das Skript eine gültige Antwort und sendet sie dem Client.

    Das bedeutet konkret:
    Solange mein ioBroker-Skript im Hintergrund läuft und man keine neuen Firmware-Updates mit geänderten Keys erzwingt (wenn man isoliert lokal arbeitet, ist man ja sowieso offline), läuft die Steuerung auch nach 2030 völlig ungerührt und "unendlich" weiter. Man muss also keine Angst vor abgelaufenen Zertifikaten und einem plötzlichen Steuerungs-Ausfall haben. :-)

    Der Aufwand dafür ist extrem gering:

    • Im ioBroker reicht ein kleines, ressourcenschonendes Skript bzw. die paar Zeilen implementiere ich fest in mein Geräte-Steuerungs-Skript.
    • Für den eigenen Mosquitto-Broker (als Cloud-Ersatz) ist lediglich eine einzige zusätzliche Zeile in der Konfiguration nötig:
    require_certificate false
    

    Das System ist dabei absolut fehlertolerant: Selbst wenn das Skript mal ausgeschaltet ist, für 2–3 Tage nicht läuft oder die Verbindung zwischendurch getrennt wird, passiert überhaupt nichts. Die Kommunikation läuft sofort wieder reibungslos an.

    Edit / PS:
    Für den absoluten Notfall – sollte das Gesamtsystem nach 2030 (z. B. nach einem harten Hardware-Reset oder Netzausfall) doch mal ins Stocken geraten – werde ich das zURLtool rechtzeitig überarbeiten.
    Damit ist garantiert, dass sich das Gerät beim erneuten Beschreiben per Bluetooth auf jeden Fall sofort fehlerfrei mit dem lokalen Broker auch nach Zertifikatsende 2030 verbindet, sofern dieser richtig und mit der zusätzlichen Konfigurationszeile aufgesetzt ist und natürlich im Zendure-Gerät weiterhin die passende Firmware vorhanden ist.


    Edit / PPS:
    Rein technische Zusatzinfo:
    Solange eine Verbindung stabil steht, werden die Zertifikate im laufenden Betrieb nicht permanent erneut überprüft.
    Eine Überprüfung der Verbindungszertifikate und Keys erfolgt technisch immer nur bei einem frischen Verbindungsaufbau (Reconnect) – also wenn die Verbindung aus irgendeinem Grund (wie einem Netzwerkfehler, Router-Neustart etc.) neu hergestellt werden muss.
    Das kann im Alltag, je nach Stabilität des lokalen WLANs, häufiger oder auch nur extrem selten der Fall sein.
    Während des herkömmlichen Betriebs bei einer stehenden Verbindung findet keine laufende Zertifikatsprüfung statt.

    Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

    Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

    maxclaudiM 1 Antwort Letzte Antwort
    1
    • paul53P paul53

      @maxclaudi sagte:

      wenn es nicht mit neuer Firmware verändert wurde

      Es sieht danach aus. Log von heute:

      2026-08-14 03:41:21.984  - info: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded
      2026-08-14 03:41:25.004  - info: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK
      2026-08-14 06:20:27.839  - info: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded
      2026-08-14 06:20:30.862  - info: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK
      2026-08-14 09:04:33.916  - info: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded
      2026-08-14 09:04:36.934  - info: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK
      2026-08-14 10:55:19.354  - info: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded
      2026-08-14 10:55:24.190  - info: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK
      2026-08-14 10:55:34.354  - info: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded
      2026-08-14 10:55:39.354  - info: javascript.0 (838) script.js.common.Solarflow: GET Fehler (2): timeout of 2000ms exceeded
      2026-08-14 10:55:42.398  - info: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK
      2026-08-14 10:55:49.355  - info: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded
      2026-08-14 10:55:54.355  - info: javascript.0 (838) script.js.common.Solarflow: GET Fehler (2): timeout of 2000ms exceeded
      2026-08-14 10:55:57.517  - info: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK
      2026-08-14 11:48:39.606  - info: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded
      2026-08-14 11:48:42.624  - info: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK
      

      Der SF ist schon seit Wochen vom Internet getrennt. Mein Nachbar funkt zur Zeit auf dem gleichen Kanal wie ich.

      Nachtrag: Habe die WLAN-Leistung meines Routers von 25 % auf 100 % erhöht. Dadurch hat der Router meines Nachbarn den Kanal gewechselt. Seitdem kein Timeout-Log.

      maxclaudiM
      maxclaudiM
      maxclaudi
      schrieb am zuletzt editiert von maxclaudi
      #530

      @paul53 sagte:
      Der SF ist schon seit Wochen vom Internet getrennt.

      Ist das Gerät in der App Offline gelistet?
      Hast Du nur der Ip des Geräts den Zugang verwehrt oder auch zusätzliche DNS blockiert?

      Driftet TimeUpdate bzw. timestamp schon etwas von der iobroker Systemzeit?

      Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

      Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

      paul53P 1 Antwort Letzte Antwort
      0
      • maxclaudiM maxclaudi

        @paul53 sagte:
        Der SF ist schon seit Wochen vom Internet getrennt.

        Ist das Gerät in der App Offline gelistet?
        Hast Du nur der Ip des Geräts den Zugang verwehrt oder auch zusätzliche DNS blockiert?

        Driftet TimeUpdate bzw. timestamp schon etwas von der iobroker Systemzeit?

        paul53P
        paul53P
        paul53
        schrieb am zuletzt editiert von
        #531

        @maxclaudi sagte: Driftet TimeUpdate bzw. timestamp schon etwas von der iobroker Systemzeit?

        "TimeUpdate (timestamp)" geht etwa 30 s nach.

        @maxclaudi sagte:

        Hast Du nur der Ip des Geräts den Zugang verwehrt oder auch zusätzliche DNS blockiert?

        Ich habe die Internet-Sperre in der Fritz!Box genutzt. Keine Ahnung, ob die auch DNS blockiert.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: Asus PN42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

        maxclaudiM 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @maxclaudi sagte: Driftet TimeUpdate bzw. timestamp schon etwas von der iobroker Systemzeit?

          "TimeUpdate (timestamp)" geht etwa 30 s nach.

          @maxclaudi sagte:

          Hast Du nur der Ip des Geräts den Zugang verwehrt oder auch zusätzliche DNS blockiert?

          Ich habe die Internet-Sperre in der Fritz!Box genutzt. Keine Ahnung, ob die auch DNS blockiert.

          maxclaudiM
          maxclaudiM
          maxclaudi
          schrieb am zuletzt editiert von maxclaudi
          #532

          @paul53
          Samrtphone BT ausschalten. Nur Zendure App öffnen und schauen ob Gerät offline-Status hat, mehr nicht.
          Wenn ja und mit der Zeit der Drift von timestamp deutlich größer wird, dann ist das Zendure-Gerät wirklich offline.

          Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

          Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

          paul53P 1 Antwort Letzte Antwort
          0
          • maxclaudiM maxclaudi

            @paul53
            Samrtphone BT ausschalten. Nur Zendure App öffnen und schauen ob Gerät offline-Status hat, mehr nicht.
            Wenn ja und mit der Zeit der Drift von timestamp deutlich größer wird, dann ist das Zendure-Gerät wirklich offline.

            paul53P
            paul53P
            paul53
            schrieb am zuletzt editiert von paul53
            #533

            @maxclaudi sagte: Samrtphone BT ausschalten. Nur Zendure App öffnen und schauen ob Gerät offline-Status hat

            In der App werden die Werte des SF angezeigt, aber in der App kann ich nichts steuern.

            EDIT: Die Werte werden in der App nicht aktualisiert.

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: Asus PN42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

            1 Antwort Letzte Antwort
            1
            • maxclaudiM maxclaudi

              @Daniel-8 sagte:
              Verstehe ich das richtig? Wenn man auf lokalen Broker umstellt mit deinem Programm, läuft irgendwann die Zertifikatskette ab und es ist keine Steurung mehr möglich?

              @Daniel-8 Im Standard-Fall ohne Skript-Hilfe:
              Ja, absolut richtig verstanden und ist völlig normal bei TLS. Die Zertifikatsgültigkeit betrifft auch bei normalem Betrieb alle Geräte und die Cloud selbst.

              Jedes TLS-Zertifikat hat ein hartes Ablaufdatum – sowohl auf dem Server (Broker) der Cloud als auch auf dem Client (Zendure-Gerät).
              Die aktuellen Zertifikate laufen in diesem Fall im Mai 2030 ab.

              Zuvor muss es von Zendure also irgendwann ein Firmware-Update geben, allein um neue Zertifikate und Keys auf die Hardware aufzuspielen.

              Wenn das Zertifikatsende erreicht ist und die Zertifikate auf auch nur einer Seite (Broker oder Client) ungültig werden, kann keine gesicherte Verbindung mehr hergestellt werden.
              Weil die Zertifikate fest in der Firmware des Zendure-Geräts implementiert sind, verweigert die Firmware dann krypto-technisch den Handshake und der TLS-Verbindungsaufbau bricht unweigerlich ab.

              Genau dafür habe ich ein kleines ioBroker-Skript als "Schutzschild" :-)
              Sobald das Gerät bei Erreichen des Datums seine gewöhnliche Anfrage an meinen lokalen Broker stellt, klinkt sich das Skript ein und prüft, ob es was zu tun gibt.

              • Wenn innerhalb der Zertifikatsgültigkeit, wird die Standard-Antwort gesendet.
              • Wenn außerhalb der Zertifikatsgültigkeit, dann generiert das Skript eine gültige Antwort und sendet sie dem Client.

              Das bedeutet konkret:
              Solange mein ioBroker-Skript im Hintergrund läuft und man keine neuen Firmware-Updates mit geänderten Keys erzwingt (wenn man isoliert lokal arbeitet, ist man ja sowieso offline), läuft die Steuerung auch nach 2030 völlig ungerührt und "unendlich" weiter. Man muss also keine Angst vor abgelaufenen Zertifikaten und einem plötzlichen Steuerungs-Ausfall haben. :-)

              Der Aufwand dafür ist extrem gering:

              • Im ioBroker reicht ein kleines, ressourcenschonendes Skript bzw. die paar Zeilen implementiere ich fest in mein Geräte-Steuerungs-Skript.
              • Für den eigenen Mosquitto-Broker (als Cloud-Ersatz) ist lediglich eine einzige zusätzliche Zeile in der Konfiguration nötig:
              require_certificate false
              

              Das System ist dabei absolut fehlertolerant: Selbst wenn das Skript mal ausgeschaltet ist, für 2–3 Tage nicht läuft oder die Verbindung zwischendurch getrennt wird, passiert überhaupt nichts. Die Kommunikation läuft sofort wieder reibungslos an.

              Edit / PS:
              Für den absoluten Notfall – sollte das Gesamtsystem nach 2030 (z. B. nach einem harten Hardware-Reset oder Netzausfall) doch mal ins Stocken geraten – werde ich das zURLtool rechtzeitig überarbeiten.
              Damit ist garantiert, dass sich das Gerät beim erneuten Beschreiben per Bluetooth auf jeden Fall sofort fehlerfrei mit dem lokalen Broker auch nach Zertifikatsende 2030 verbindet, sofern dieser richtig und mit der zusätzlichen Konfigurationszeile aufgesetzt ist und natürlich im Zendure-Gerät weiterhin die passende Firmware vorhanden ist.


              Edit / PPS:
              Rein technische Zusatzinfo:
              Solange eine Verbindung stabil steht, werden die Zertifikate im laufenden Betrieb nicht permanent erneut überprüft.
              Eine Überprüfung der Verbindungszertifikate und Keys erfolgt technisch immer nur bei einem frischen Verbindungsaufbau (Reconnect) – also wenn die Verbindung aus irgendeinem Grund (wie einem Netzwerkfehler, Router-Neustart etc.) neu hergestellt werden muss.
              Das kann im Alltag, je nach Stabilität des lokalen WLANs, häufiger oder auch nur extrem selten der Fall sein.
              Während des herkömmlichen Betriebs bei einer stehenden Verbindung findet keine laufende Zertifikatsprüfung statt.

              maxclaudiM
              maxclaudiM
              maxclaudi
              schrieb am zuletzt editiert von maxclaudi
              #534

              Hallo zusammen,

              es ist für mich speziell bei der "Zendure"-Open-Source-Szene immer wieder erstaunlich, erschreckend und zugleich beschämend zu sehen, wie viele Halbwahrheiten und Halbwissen im Umlauf sind.
              Da wird im Nebel gestochert, während die dort mühsam aufgebauten Schein-Argumente am Ende wie Seifenblasen zerplatzen, sobald die echten Protokolle auf dem Tisch liegen.

              Möchte eure und meine Nerven künftig schonen, mich nicht weiter an Spekulationen – und für mich dann sinnfreien Diskussionen – beteiligen, bei denen mir nur mit Annahmen oder Suggestivfragen geantwortet wird.

              Ich habe es bereits hier im Forum angekündigt:
              Für Zendure wird von mir kein Quellcode mehr öffentlich zur Verfügung gestellt - wenn nicht einmal ein winziger, respektvoller Hinweis erfolgt, dass meine Analysen und Entdeckungen als direkte Vorlage oder Idee genutzt und umgeschrieben wurden. Auf ein solches "Unix/Linux-Spielchen" ohne Anstand und Danke habe ich keine Lust mehr.

              Künftig wird es von mir daher eher fertig kompilierte, geschlossene Hilfsmittel (als fertige App) oder gezielte Code-Beispiele und Hinweise geben.

              Ich weise ausdrücklich und unmissverständlich darauf hin:
              Nichts an meiner Arbeit verwendet Code aus der Home-Assistant-Integration oder dem ioBroker-Adapter!

              Alles basiert auf reinem Reverse Engineering, offiziellen Dokumentationen, SDK, API, Hinweisen von Mitarbeitern des entsprechenden Supports, Freunden und meiner Fantasie :-)

              Sollten jemals externe Bibliotheken eingebunden werden und / oder jemand mitgewirkt haben, wird jedes ehrliche Helferlein unter seinem Pseudonym oder echten Namen dankend erwähnt – es sei denn, man möchte es explizit nicht.

              Da dieses Projekt hier jedoch von vielen als grundlegende Orientierung geschätzt wird, werde ich es im Hintergrund auf meine Weise weiter supporten.


              Um auf einen aktuellen Beitrag kurz wertfrei und sachlich einzugehen:

              @Bernd1967 sagte:
              .... Ich habe einfach "inverterMaxLimit" auf 1200 gesetzt und dann fing der Hyper an einzuspeisen.
              Ich wußte gar nicht das der Hyper diesen Parameter kennt :-)
              Alpha.2 läuft auch.

              Protokoll-Fakt: Ein solcher Key existiert in der Firmware der Geräte nicht.
              Es handelt sich dabei um: inverseMaxPower


              Ich bin inzwischen an einem Punkt angelangt, an dem ich zwei erweiterte Modul-Firmwares gesichert, die originale App im entpackten Zustand vollständig analysiert und mehr als ausreichend unzensiertes Logmaterial gesammelt habe.

              Nach weit über 300 Stunden harter Arbeit ist das ein – für mich selbst erstaunlich – großes, gesammeltes Wissen.

              Inzwischen macht jedes Gerät für meine Bekannten und mich (bis zum SF 2400AC PRO) lokal fast alles, was wir/ich möchte(n).

              Dank speziellen, sukzessiven Commands ist scheinbar auch ein dauerhafter Bluetooth-Betrieb möglich. Vielleicht entwickle ich daraus irgendwann ein autarkes, lokales BT-MQTT-Gateway.

              Aber im Moment ist der Forscherdrang und das Zendure-Entdecker-Fieber bei mir einfach nicht zu bändigen.

              Anbei Screenshots einer meiner trivialen, selbst geschriebenen Bluetooth-Entwicklungshilfen und ein Ergebnis im ioBroker, wie man den Zeitstempel eines Zendure-Gerätes völlig frei hin- und hersetzen kann, wie man lustig ist. Das Gerät nimmt das Command ohne Wenn und Aber an und hört auf den Master.

              Allen noch einen schönen 01.09.2026, viel Sonne und maximalen PV-Ertrag!

              Viele Grüße,

              maxclaudi


              BT-prog-forum.png


              ZeitreiseNORMAL.png


              Zeitreise ins Jahr 2021
              Zeitreise2021.png


              und wieder zurück 2026:

              wieder-aktuell.png

              Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

              Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

              D maxclaudiM 2 Antworten Letzte Antwort
              1
              • maxclaudiM maxclaudi

                Hallo zusammen,

                es ist für mich speziell bei der "Zendure"-Open-Source-Szene immer wieder erstaunlich, erschreckend und zugleich beschämend zu sehen, wie viele Halbwahrheiten und Halbwissen im Umlauf sind.
                Da wird im Nebel gestochert, während die dort mühsam aufgebauten Schein-Argumente am Ende wie Seifenblasen zerplatzen, sobald die echten Protokolle auf dem Tisch liegen.

                Möchte eure und meine Nerven künftig schonen, mich nicht weiter an Spekulationen – und für mich dann sinnfreien Diskussionen – beteiligen, bei denen mir nur mit Annahmen oder Suggestivfragen geantwortet wird.

                Ich habe es bereits hier im Forum angekündigt:
                Für Zendure wird von mir kein Quellcode mehr öffentlich zur Verfügung gestellt - wenn nicht einmal ein winziger, respektvoller Hinweis erfolgt, dass meine Analysen und Entdeckungen als direkte Vorlage oder Idee genutzt und umgeschrieben wurden. Auf ein solches "Unix/Linux-Spielchen" ohne Anstand und Danke habe ich keine Lust mehr.

                Künftig wird es von mir daher eher fertig kompilierte, geschlossene Hilfsmittel (als fertige App) oder gezielte Code-Beispiele und Hinweise geben.

                Ich weise ausdrücklich und unmissverständlich darauf hin:
                Nichts an meiner Arbeit verwendet Code aus der Home-Assistant-Integration oder dem ioBroker-Adapter!

                Alles basiert auf reinem Reverse Engineering, offiziellen Dokumentationen, SDK, API, Hinweisen von Mitarbeitern des entsprechenden Supports, Freunden und meiner Fantasie :-)

                Sollten jemals externe Bibliotheken eingebunden werden und / oder jemand mitgewirkt haben, wird jedes ehrliche Helferlein unter seinem Pseudonym oder echten Namen dankend erwähnt – es sei denn, man möchte es explizit nicht.

                Da dieses Projekt hier jedoch von vielen als grundlegende Orientierung geschätzt wird, werde ich es im Hintergrund auf meine Weise weiter supporten.


                Um auf einen aktuellen Beitrag kurz wertfrei und sachlich einzugehen:

                @Bernd1967 sagte:
                .... Ich habe einfach "inverterMaxLimit" auf 1200 gesetzt und dann fing der Hyper an einzuspeisen.
                Ich wußte gar nicht das der Hyper diesen Parameter kennt :-)
                Alpha.2 läuft auch.

                Protokoll-Fakt: Ein solcher Key existiert in der Firmware der Geräte nicht.
                Es handelt sich dabei um: inverseMaxPower


                Ich bin inzwischen an einem Punkt angelangt, an dem ich zwei erweiterte Modul-Firmwares gesichert, die originale App im entpackten Zustand vollständig analysiert und mehr als ausreichend unzensiertes Logmaterial gesammelt habe.

                Nach weit über 300 Stunden harter Arbeit ist das ein – für mich selbst erstaunlich – großes, gesammeltes Wissen.

                Inzwischen macht jedes Gerät für meine Bekannten und mich (bis zum SF 2400AC PRO) lokal fast alles, was wir/ich möchte(n).

                Dank speziellen, sukzessiven Commands ist scheinbar auch ein dauerhafter Bluetooth-Betrieb möglich. Vielleicht entwickle ich daraus irgendwann ein autarkes, lokales BT-MQTT-Gateway.

                Aber im Moment ist der Forscherdrang und das Zendure-Entdecker-Fieber bei mir einfach nicht zu bändigen.

                Anbei Screenshots einer meiner trivialen, selbst geschriebenen Bluetooth-Entwicklungshilfen und ein Ergebnis im ioBroker, wie man den Zeitstempel eines Zendure-Gerätes völlig frei hin- und hersetzen kann, wie man lustig ist. Das Gerät nimmt das Command ohne Wenn und Aber an und hört auf den Master.

                Allen noch einen schönen 01.09.2026, viel Sonne und maximalen PV-Ertrag!

                Viele Grüße,

                maxclaudi


                BT-prog-forum.png


                ZeitreiseNORMAL.png


                Zeitreise ins Jahr 2021
                Zeitreise2021.png


                und wieder zurück 2026:

                wieder-aktuell.png

                D
                D
                Daniel 8
                schrieb am zuletzt editiert von
                #535

                @maxclaudi

                Es ist sehr beeindruckend wieviel Zeit und Engagement du hier in dieses Projekt steckst. Es wäre sehr schade wenn wir dich verlieren würden und du nichts mehr für die Community machst.

                Ich bin dir auf jedenfalls sehr dankbar für all das was du gemacht hast auch wenn ich noch nicht alles umgesetzt habe aber daran arbeite.

                Solarflow 800 Pro mit 1,3 Kwp / Iobroker / Homematic / Shellys / Mediola / Intertechno

                maxclaudiM 1 Antwort Letzte Antwort
                0
                • maxclaudiM maxclaudi

                  Hallo zusammen,

                  es ist für mich speziell bei der "Zendure"-Open-Source-Szene immer wieder erstaunlich, erschreckend und zugleich beschämend zu sehen, wie viele Halbwahrheiten und Halbwissen im Umlauf sind.
                  Da wird im Nebel gestochert, während die dort mühsam aufgebauten Schein-Argumente am Ende wie Seifenblasen zerplatzen, sobald die echten Protokolle auf dem Tisch liegen.

                  Möchte eure und meine Nerven künftig schonen, mich nicht weiter an Spekulationen – und für mich dann sinnfreien Diskussionen – beteiligen, bei denen mir nur mit Annahmen oder Suggestivfragen geantwortet wird.

                  Ich habe es bereits hier im Forum angekündigt:
                  Für Zendure wird von mir kein Quellcode mehr öffentlich zur Verfügung gestellt - wenn nicht einmal ein winziger, respektvoller Hinweis erfolgt, dass meine Analysen und Entdeckungen als direkte Vorlage oder Idee genutzt und umgeschrieben wurden. Auf ein solches "Unix/Linux-Spielchen" ohne Anstand und Danke habe ich keine Lust mehr.

                  Künftig wird es von mir daher eher fertig kompilierte, geschlossene Hilfsmittel (als fertige App) oder gezielte Code-Beispiele und Hinweise geben.

                  Ich weise ausdrücklich und unmissverständlich darauf hin:
                  Nichts an meiner Arbeit verwendet Code aus der Home-Assistant-Integration oder dem ioBroker-Adapter!

                  Alles basiert auf reinem Reverse Engineering, offiziellen Dokumentationen, SDK, API, Hinweisen von Mitarbeitern des entsprechenden Supports, Freunden und meiner Fantasie :-)

                  Sollten jemals externe Bibliotheken eingebunden werden und / oder jemand mitgewirkt haben, wird jedes ehrliche Helferlein unter seinem Pseudonym oder echten Namen dankend erwähnt – es sei denn, man möchte es explizit nicht.

                  Da dieses Projekt hier jedoch von vielen als grundlegende Orientierung geschätzt wird, werde ich es im Hintergrund auf meine Weise weiter supporten.


                  Um auf einen aktuellen Beitrag kurz wertfrei und sachlich einzugehen:

                  @Bernd1967 sagte:
                  .... Ich habe einfach "inverterMaxLimit" auf 1200 gesetzt und dann fing der Hyper an einzuspeisen.
                  Ich wußte gar nicht das der Hyper diesen Parameter kennt :-)
                  Alpha.2 läuft auch.

                  Protokoll-Fakt: Ein solcher Key existiert in der Firmware der Geräte nicht.
                  Es handelt sich dabei um: inverseMaxPower


                  Ich bin inzwischen an einem Punkt angelangt, an dem ich zwei erweiterte Modul-Firmwares gesichert, die originale App im entpackten Zustand vollständig analysiert und mehr als ausreichend unzensiertes Logmaterial gesammelt habe.

                  Nach weit über 300 Stunden harter Arbeit ist das ein – für mich selbst erstaunlich – großes, gesammeltes Wissen.

                  Inzwischen macht jedes Gerät für meine Bekannten und mich (bis zum SF 2400AC PRO) lokal fast alles, was wir/ich möchte(n).

                  Dank speziellen, sukzessiven Commands ist scheinbar auch ein dauerhafter Bluetooth-Betrieb möglich. Vielleicht entwickle ich daraus irgendwann ein autarkes, lokales BT-MQTT-Gateway.

                  Aber im Moment ist der Forscherdrang und das Zendure-Entdecker-Fieber bei mir einfach nicht zu bändigen.

                  Anbei Screenshots einer meiner trivialen, selbst geschriebenen Bluetooth-Entwicklungshilfen und ein Ergebnis im ioBroker, wie man den Zeitstempel eines Zendure-Gerätes völlig frei hin- und hersetzen kann, wie man lustig ist. Das Gerät nimmt das Command ohne Wenn und Aber an und hört auf den Master.

                  Allen noch einen schönen 01.09.2026, viel Sonne und maximalen PV-Ertrag!

                  Viele Grüße,

                  maxclaudi


                  BT-prog-forum.png


                  ZeitreiseNORMAL.png


                  Zeitreise ins Jahr 2021
                  Zeitreise2021.png


                  und wieder zurück 2026:

                  wieder-aktuell.png

                  maxclaudiM
                  maxclaudiM
                  maxclaudi
                  schrieb am zuletzt editiert von maxclaudi
                  #536

                  @petman
                  gerne helfe ich Dir weiter :-)

                  1. Erstellt eine leere Passwortdatei am exakten Ort (falls noch nicht geschehen):
                  sudo touch /etc/mosquitto/passwd
                  
                  1. Erstellt die Logdatei und übergibt die Besitzrechte an den Mosquitto-Dienst:
                  sudo touch /var/log/mosquitto/mosquitto.log
                  sudo chown mosquitto:mosquitto /var/log/mosquitto/mosquitto.log
                  
                  

                  Passwort-Datei:
                  muss natürlich auch zwingend befüllt werden.
                  Exakt mit deiner deviceId (als Username) und dem berechneten Passwort.

                  Befehl bei dir im Terminal:

                  sudo mosquitto_passwd -b /etc/mosquitto/passwd <DEVICE_ID <BERECHNETES_PASSWORT>
                  

                  aus der Datei: mqtt_creds.txt

                  Bitte darauf achten, dass du den Befehl im exakten Linux-Pfad ausführst, den du oben in der default.conf als 'password_file' angegeben hast.
                  Wenn die Datei leer ist oder der Abgleich nicht stimmt, verweigert der Broker beim Starten die Verbindung.


                  @petman
                  die Warnungen oben mit den Rechten sind erst einmal reine Hinweise für die Zukunft, das ignoriert Mosquitto im Moment noch. Dein eigentliches Problem, warum der Broker abbricht, steht in der allerletzten Zeile:

                  Error: Address already in use
                  

                  Das bedeutet: Der offizielle Mosquitto-Hintergrunddienst von Linux läuft bereits im System und blockiert den Port 1883!
                  Du kannst Mosquitto nicht manuell ein zweites Mal im selben Port starten.
                  Führe bitte einfach diese drei Befehle nacheinander in deinem Terminal aus, um die Rechte zu reparieren, den alten Dienst einmal komplett frisch durchzuschütteln und neu zu starten

                  1. Bringt die Linux-Besitzrechte der Passwortdatei auf Mosquitto:
                  sudo chown mosquitto:mosquitto /etc/mosquitto/passwd
                  sudo chmod 0600 /etc/mosquitto/passwd
                  
                  1. Startet den bereits laufenden Hintergrunddienst mitsamt deiner neuen Konfiguration neu:
                  sudo systemctl restart mosquitto
                  
                  1. Prüft ob Broker jetzt im Hintergrund läuft:
                  sudo systemctl status mosquitto
                  

                  @petman

                  sudo chown mosquitto:mosquitto /etc/mosquitto/passwd
                  

                  Der Doppelpunkt zwischen den beiden Wörtern mosquitto:mosquitto ist das Linux-Zeichen.
                  Das erste Wort setzt den User auf mosquitto, das zweite Wort setzt zeitgleich die Gruppe auf mosquitto.
                  Danach sollten alle roten Linux-Rechte-Warnungen in deinem Log Geschichte sein.

                  Bitte um feedback. Danke.

                  Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

                  Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

                  1 Antwort Letzte Antwort
                  1
                  • D Daniel 8

                    @maxclaudi

                    Es ist sehr beeindruckend wieviel Zeit und Engagement du hier in dieses Projekt steckst. Es wäre sehr schade wenn wir dich verlieren würden und du nichts mehr für die Community machst.

                    Ich bin dir auf jedenfalls sehr dankbar für all das was du gemacht hast auch wenn ich noch nicht alles umgesetzt habe aber daran arbeite.

                    maxclaudiM
                    maxclaudiM
                    maxclaudi
                    schrieb am zuletzt editiert von maxclaudi
                    #537

                    @Daniel-8
                    Dankeschön. Helfe gerne.

                    @Daniel-8 sagte:
                    Ich bin dir auf jedenfalls sehr dankbar für all das was du gemacht hast auch wenn ich noch nicht alles umgesetzt habe aber daran arbeite.

                    Das weiß ich doch :-)
                    Ein großes Dankeschön an Dich für das viele Testen, als ich noch gar kein zenSDK-Gerät hatte.

                    Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

                    Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

                    maxclaudiM D 2 Antworten Letzte Antwort
                    1
                    • maxclaudiM maxclaudi

                      @Daniel-8
                      Dankeschön. Helfe gerne.

                      @Daniel-8 sagte:
                      Ich bin dir auf jedenfalls sehr dankbar für all das was du gemacht hast auch wenn ich noch nicht alles umgesetzt habe aber daran arbeite.

                      Das weiß ich doch :-)
                      Ein großes Dankeschön an Dich für das viele Testen, als ich noch gar kein zenSDK-Gerät hatte.

                      maxclaudiM
                      maxclaudiM
                      maxclaudi
                      schrieb am zuletzt editiert von
                      #538

                      HINWEIS:

                      Die offizielle Beschreibung des solarflow-Adapters auf github:

                      Zitat:

                      Modes

                      • Local MQTT It's also possible to use the local only mode. Currently there is no known way for the new Solarflow devices to set the MQTT server directly on the device, so for these you have to use a DNS relay.

                      ist nicht wahr.

                      Mein Projekt zURLtool beweist jeden Tag das absolute Gegenteil.
                      Die lokalen Server-Pfade lassen sich sehr wohl direkt und sicher auf dem Gerät konfigurieren.

                      Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

                      Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

                      nograxN 1 Antwort Letzte Antwort
                      1
                      • maxclaudiM maxclaudi

                        @Daniel-8
                        Dankeschön. Helfe gerne.

                        @Daniel-8 sagte:
                        Ich bin dir auf jedenfalls sehr dankbar für all das was du gemacht hast auch wenn ich noch nicht alles umgesetzt habe aber daran arbeite.

                        Das weiß ich doch :-)
                        Ein großes Dankeschön an Dich für das viele Testen, als ich noch gar kein zenSDK-Gerät hatte.

                        D
                        D
                        Daniel 8
                        schrieb am zuletzt editiert von
                        #539

                        @maxclaudi sagte:

                        @Daniel-8
                        Dankeschön. Helfe gerne.

                        @Daniel-8 sagte:
                        Ich bin dir auf jedenfalls sehr dankbar für all das was du gemacht hast auch wenn ich noch nicht alles umgesetzt habe aber daran arbeite.

                        Das weiß ich doch :-)
                        Ein großes Dankeschön an Dich für das viele Testen, als ich noch gar kein zenSDK-Gerät hatte.

                        Gerne.

                        Solarflow 800 Pro mit 1,3 Kwp / Iobroker / Homematic / Shellys / Mediola / Intertechno

                        1 Antwort Letzte Antwort
                        2
                        • maxclaudiM maxclaudi

                          HINWEIS:

                          Die offizielle Beschreibung des solarflow-Adapters auf github:

                          Zitat:

                          Modes

                          • Local MQTT It's also possible to use the local only mode. Currently there is no known way for the new Solarflow devices to set the MQTT server directly on the device, so for these you have to use a DNS relay.

                          ist nicht wahr.

                          Mein Projekt zURLtool beweist jeden Tag das absolute Gegenteil.
                          Die lokalen Server-Pfade lassen sich sehr wohl direkt und sicher auf dem Gerät konfigurieren.

                          nograxN
                          nograxN
                          nograx
                          Developer
                          schrieb am zuletzt editiert von
                          #540

                          @maxclaudi Kannte diesen Thread und das Tool bisher nicht. Daher war die Readme bisher auch korrekt. Ich habe den Text jetzt angepasst 👍 Ich werde aber nicht auf Closed Source Projekte verweisen wo man nicht nachvollziehen kann was das Tool wirklich tut. Muss jeder selbst entscheiden was er auf seinem Rechner installiert und ausführt.

                          Und auch wenn du mehrfach beschwörst du hättest bei den anderen Open Source Projekten nichts "kopiert" wirst du nicht leugnen können das du davon zumindest einiges an Wissen aneignen konntest. Wenn man deine Kommentare oben so liest hat das schon ein Geschmäckle.

                          Es ist ab der 800/2400 Serie von Zendure sinnfrei den MQTT Server zu ändern, denn es gibt extra dafür das zenSDK. Mit Änderung des MQTT Servers verliert man sämtliche Garantie auf das Gerät und es werden im Standard dann keine Diagnose Daten mehr an Zendure geschickt. Deshalb gibts ja auch im Adapter die Relay Funktion. Das kann im schlimmsten Fall (siehe bei den Brand eines AIO2400 Anfang 2025) echt negative Folgen haben wenn dann z.B. die Versicherung nicht mehr zahlt.

                          Ich bin von Zendure angehalten worden mit dem Adapter bei den neuen Geräten die offiziell unterstützten Möglichkeiten zu nutzen. Und daran werde ich mich auch halten.

                          maxclaudiM 1 Antwort Letzte Antwort
                          0
                          • nograxN nograx

                            @maxclaudi Kannte diesen Thread und das Tool bisher nicht. Daher war die Readme bisher auch korrekt. Ich habe den Text jetzt angepasst 👍 Ich werde aber nicht auf Closed Source Projekte verweisen wo man nicht nachvollziehen kann was das Tool wirklich tut. Muss jeder selbst entscheiden was er auf seinem Rechner installiert und ausführt.

                            Und auch wenn du mehrfach beschwörst du hättest bei den anderen Open Source Projekten nichts "kopiert" wirst du nicht leugnen können das du davon zumindest einiges an Wissen aneignen konntest. Wenn man deine Kommentare oben so liest hat das schon ein Geschmäckle.

                            Es ist ab der 800/2400 Serie von Zendure sinnfrei den MQTT Server zu ändern, denn es gibt extra dafür das zenSDK. Mit Änderung des MQTT Servers verliert man sämtliche Garantie auf das Gerät und es werden im Standard dann keine Diagnose Daten mehr an Zendure geschickt. Deshalb gibts ja auch im Adapter die Relay Funktion. Das kann im schlimmsten Fall (siehe bei den Brand eines AIO2400 Anfang 2025) echt negative Folgen haben wenn dann z.B. die Versicherung nicht mehr zahlt.

                            Ich bin von Zendure angehalten worden mit dem Adapter bei den neuen Geräten die offiziell unterstützten Möglichkeiten zu nutzen. Und daran werde ich mich auch halten.

                            maxclaudiM
                            maxclaudiM
                            maxclaudi
                            schrieb am zuletzt editiert von maxclaudi
                            #541

                            @nograx sagte:

                            @maxclaudi Kannte diesen Thread und das Tool bisher nicht. Daher war die Readme bisher auch korrekt. Ich habe den Text jetzt angepasst 👍 Ich werde aber nicht auf Closed Source Projekte verweisen wo man nicht nachvollziehen kann was das Tool wirklich tut. Muss jeder selbst entscheiden was er auf seinem Rechner installiert und ausführt.

                            Und auch wenn du mehrfach beschwörst du hättest bei den anderen Open Source Projekten nichts "kopiert" wirst du nicht leugnen können das du davon zumindest einiges an Wissen aneignen konntest. Wenn man deine Kommentare oben so liest hat das schon ein Geschmäckle.

                            Es ist ab der 800/2400 Serie von Zendure sinnfrei den MQTT Server zu ändern, denn es gibt extra dafür das zenSDK. Mit Änderung des MQTT Servers verliert man sämtliche Garantie auf das Gerät und es werden im Standard dann keine Diagnose Daten mehr an Zendure geschickt. Deshalb gibts ja auch im Adapter die Relay Funktion. Das kann im schlimmsten Fall (siehe bei den Brand eines AIO2400 Anfang 2025) echt negative Folgen haben wenn dann z.B. die Versicherung nicht mehr zahlt.

                            Ich bin von Zendure angehalten worden mit dem Adapter bei den neuen Geräten die offiziell unterstützten Möglichkeiten zu nutzen. Und daran werde ich mich auch halten.

                            Historisch gesichert. Dein hier dokumentiertes Eigentor.

                            Bevor du hier im Thread versuchst, Nebelkerzen zu werfen, empfehle ich dir dringend, deine eigene Chronologie und meine Dokumentation hier im Forum der letzten Monate zu durchforsten.

                            Zum Thema, ich hätte hilfreiches Wissen aus Open-Source-Quellen:
                            Ja, ich habe mir diese Quellen sehr genau angesehen.
                            Viele davon sind jedoch unvollständig, unzureichend und schlicht fehlerbehaftet.
                            Genau aus diesem Grund ging und gehe ich konsequent den harten Weg des eigenen, unbestechlichen Reverse Engineerings direkt am lebenden Silizium.

                            Und zum Thema „Geschmäckle“ und Closed Source:
                            Genau das Verhalten, das du hier und in der Vergangenheit mir gegenüber an den Tag gelegt hast, ist der Hauptgrund für meine Entscheidung, meine harte Arbeit und meine Tools künftig restlos als Closed Source vor Dir zu schützen.

                            Darüber diskutiere ich auch nicht im Ansatz mit dir.
                            Für mich ist dieses Thema mit dir an dieser Stelle endgültig beendet.

                            Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

                            Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

                            maxclaudiM 1 Antwort Letzte Antwort
                            1
                            • D Daniel 8

                              @maxclaudi

                              Das ist ja ganz schön merkwürdig. Wir sind halt leider immer noch ein wenig von der Cloud abhängig.

                              Was meinst du mit IP umschreiben? Das er nicht mehr auf die Cloud zugreift?

                              Bei mir gab es keine socSet veränderungen.

                              maxclaudiM
                              maxclaudiM
                              maxclaudi
                              schrieb am zuletzt editiert von
                              #542

                              Guten Morgen zusammen :-)

                              Ein lokaler Betrieb ohne Cloud ist auch für z.B. Gartenhäuser, Camping etc. für diverse Zendure-Geräte vorgesehen.

                              Wer sein Gerät auf einen lokalen Broker als Cloud-Ersatz umstellt, muss keineswegs komplett auf die Cloud verzichten.

                              Es ist technisch absolut möglich, ein paralleles Cloud-Relais zu betreiben.
                              Dabei stehen zwei flexible Wege offen:

                              • Weg A:
                                Die reine Einbahnstraßen-Bridge (Maximaler Schutz).
                                Das lokale System sendet weiterhin alle Diagnose- und Reportdaten brav an die Zendure-Cloud. Der Hersteller sieht alles, die Diagnosen laufen weiter, und (z. B. thermische) Auswertungen bleiben lückenlos erhalten. Gleichzeitig herrscht durch die lokale Weiche jedoch eine absolute Einbahnstraße bezüglich jeglicher eingehender Schreibbefehle von außen. Die Cloud kann zu keinem Zeitpunkt mehr ungefragt Parameter verändern.

                              • Weg B:
                                Die offene bidirektionale Bridge (Lokaler Broker UND Cloud)
                                Ist die Bridge auf beiden Seiten geöffnet, verhält sich das System für das Gerät so, als würde es den lokalen Mosquitto überhaupt nicht geben. Die originale Zendure-App kann uneingeschränkt weiterverwendet werden, und alles funktioniert herkömmlich wie gewohnt.

                              Einzige Voraussetzung: Der lokale Mosquitto-Broker muss natürlich nonstop im Einsatz sein, wie das Zendure-Gerät.

                              Der unbezahlbare Vorteil dieser offenen Weiche:
                              Sie macht die herstellerseitige „Blackbox“ komplett transparent.

                              Im normalen Cloud-Betrieb hat man keine Chance zu sehen, was im Hintergrund passiert.

                              Über die Mosquitto-Brücke kann man nun – z. B. live über den MQTT-Explorer – unzensiert ganz genau nachvollziehen, ob, was und wann die Cloud am System geändert hat.

                              Genau diese digitale Transparenz und Kontrollmöglichkeit spricht massiv für eine zeitgemäße Umsetzung im Sinne europäischer Standards, statt sich einer geschlossenen Cloud auszuliefern.

                              Zusätzlich kann man das Gerät auch (nur für bestimmte Zeit oder immer) komplett lokal isoliert betreiben.

                              Das Umschalten zwischen den Möglichkeiten beschränkt sich auf Sekunden.

                              Auch wenn ich mal bei einer Person las, dass das ein erheblicher Aufwand sein soll.
                              Dabei müssen nur einzelne Zeilen in der config ein- oder auskommentiert werden und der mosquitto-Broker neu gestartet werden.

                              • Vorteil bei allen Wegen:
                                Alles, wirklich alles wird transparent.
                                MQTT wird nicht reglementiert und nicht künstlich gedrosselt.
                                Alle Commands und Meldungen werden ereignisbasiert sofort published. Es muss nicht mit zusätzlichen Latenzen das HTTP-Netzwerk belastet werden und vor allem nicht mühselig und oft unnötig gepollt, gefiltert und ausgewertet werden.

                              Eigene Erfahrung: Seit ich meine Geräte lokal über diese Struktur betreibe, gab es bei mir keinerlei unvollständige Werte-Sprünge mehr, wie ich sie im Juli 2026 hier im Thread ab Post 424 ff. noch dokumentieren musste, als Parameter wie socSet oder inverseMaxPower unbemerkt im Hintergrund überschrieben wurden.

                              Es steht jedem frei, wie und was er einsetzt.
                              Zu guter Letzt hängt es natürlich auch von dem Verständnis und den eigenen Fähigkeiten ab, eine Bridge einzurichten und das JSON zu verstehen.
                              Mein Post dient nur als technische Information.

                              Viele Grüße, einen wunderschönen Morgen, strahlender Sonnenschein und maximaler PV-Ertrag!

                              maxclaudi

                              Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

                              Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

                              1 Antwort Letzte Antwort
                              1
                              • maxclaudiM maxclaudi

                                @nograx sagte:

                                @maxclaudi Kannte diesen Thread und das Tool bisher nicht. Daher war die Readme bisher auch korrekt. Ich habe den Text jetzt angepasst 👍 Ich werde aber nicht auf Closed Source Projekte verweisen wo man nicht nachvollziehen kann was das Tool wirklich tut. Muss jeder selbst entscheiden was er auf seinem Rechner installiert und ausführt.

                                Und auch wenn du mehrfach beschwörst du hättest bei den anderen Open Source Projekten nichts "kopiert" wirst du nicht leugnen können das du davon zumindest einiges an Wissen aneignen konntest. Wenn man deine Kommentare oben so liest hat das schon ein Geschmäckle.

                                Es ist ab der 800/2400 Serie von Zendure sinnfrei den MQTT Server zu ändern, denn es gibt extra dafür das zenSDK. Mit Änderung des MQTT Servers verliert man sämtliche Garantie auf das Gerät und es werden im Standard dann keine Diagnose Daten mehr an Zendure geschickt. Deshalb gibts ja auch im Adapter die Relay Funktion. Das kann im schlimmsten Fall (siehe bei den Brand eines AIO2400 Anfang 2025) echt negative Folgen haben wenn dann z.B. die Versicherung nicht mehr zahlt.

                                Ich bin von Zendure angehalten worden mit dem Adapter bei den neuen Geräten die offiziell unterstützten Möglichkeiten zu nutzen. Und daran werde ich mich auch halten.

                                Historisch gesichert. Dein hier dokumentiertes Eigentor.

                                Bevor du hier im Thread versuchst, Nebelkerzen zu werfen, empfehle ich dir dringend, deine eigene Chronologie und meine Dokumentation hier im Forum der letzten Monate zu durchforsten.

                                Zum Thema, ich hätte hilfreiches Wissen aus Open-Source-Quellen:
                                Ja, ich habe mir diese Quellen sehr genau angesehen.
                                Viele davon sind jedoch unvollständig, unzureichend und schlicht fehlerbehaftet.
                                Genau aus diesem Grund ging und gehe ich konsequent den harten Weg des eigenen, unbestechlichen Reverse Engineerings direkt am lebenden Silizium.

                                Und zum Thema „Geschmäckle“ und Closed Source:
                                Genau das Verhalten, das du hier und in der Vergangenheit mir gegenüber an den Tag gelegt hast, ist der Hauptgrund für meine Entscheidung, meine harte Arbeit und meine Tools künftig restlos als Closed Source vor Dir zu schützen.

                                Darüber diskutiere ich auch nicht im Ansatz mit dir.
                                Für mich ist dieses Thema mit dir an dieser Stelle endgültig beendet.

                                maxclaudiM
                                maxclaudiM
                                maxclaudi
                                schrieb am zuletzt editiert von
                                #543

                                Noch eine wichtige Ergänzung, weil hier offenbar einige durch Aussagen zu Garantie und Versicherung verunsichert wurden:

                                Die Aussage

                                „Mit Änderung des MQTT-Servers verliert man sämtliche Garantie“

                                ist so pauschal nicht belegt.

                                Bei der von mir beschriebenen Vorgehensweise wird keine Firmware verändert, kein BMS gepatcht und keine Schutzfunktion des Gerätes verändert.

                                Es wird lediglich über den vorhandenen BLE-Konfigurationsmechanismus die MQTT-Serveradresse geändert, die das Gerät für seine Kommunikation verwendet.

                                Das sind technisch zwei völlig unterschiedliche Dinge.

                                Auch die Aussage, dass ein lokaler MQTT-Broker zwangsläufig bedeutet, dass Zendure keinerlei Diagnoseinformationen mehr erhält, ist so nicht richtig. Wie in meinem vorherigen Beitrag beschrieben, kann der lokale Broker über eine MQTT-Bridge weiterhin mit der Zendure-Cloud kommunizieren. Damit können die Daten weiterhin zur Cloud weitergereicht werden.

                                Noch einmal ausdrücklich:

                                Lokaler MQTT-Betrieb bedeutet nicht automatisch „Cloud abschalten“.

                                Man kann beispielsweise weiterhin alle Reports und Diagnosedaten zur Cloud weiterleiten und gleichzeitig lokal sämtliche MQTT-Kommunikation beobachten und kontrollieren.

                                Auch die häufig daraus abgeleitete Aussage

                                „Dann zahlt im schlimmsten Fall die Versicherung bei einem Brand nicht“

                                ist keine technische Schlussfolgerung.

                                Ein Versicherungsfall wird nicht dadurch entschieden, dass irgendwann einmal die Adresse eines MQTT-Brokers geändert wurde. Entscheidend wären vielmehr der konkrete Versicherungsvertrag, die konkrete Schadenursache und gegebenenfalls die Frage, ob eine Änderung überhaupt ursächlich für den Schaden war.

                                Wer beispielsweise die Ladeelektronik, das BMS oder Schutzmechanismen manipuliert, befindet sich selbstverständlich in einer völlig anderen Situation.

                                Das ist aber nicht das, was ich hier beschreibe.

                                Bei meinem Ansatz wird ausschließlich die Kommunikationsroute geändert.

                                Das lässt sich auch sehr einfach nachvollziehen:

                                Original:

                                Gerät → Zendure-MQTT → Zendure-Cloud

                                Lokal:

                                Gerät → eigener MQTT-Broker

                                Lokal + Cloud-Relay:

                                Gerät → eigener MQTT-Broker → Zendure-Cloud

                                Die Hardware, Firmware, BMS-Regelung und elektrischen Schutzmechanismen bleiben dabei unverändert.

                                Auch das angeführte Beispiel eines Brandes eines AIO2400 Anfang 2025 ändert daran nichts. Ohne eine nachgewiesene Brandursache gibt es keinen technischen Zusammenhang zwischen einem Brand und der Änderung eines MQTT-Ziels.

                                Ich möchte damit niemanden dazu auffordern, sein Gerät zwingend lokal zu betreiben. Jeder muss selbst entscheiden, welche Lösung er verwenden möchte.

                                Mir ist nur wichtig, dass diese Entscheidung auf technischen Fakten und nicht auf unbelegten Horrorszenarien basiert.

                                Wer die Cloud verwenden möchte, kann sie verwenden.

                                Wer lokal arbeiten möchte, kann lokal arbeiten.

                                Und wer beides möchte, kann über ein Relay sogar lokalen Betrieb, vollständige MQTT-Transparenz und Cloud-Anbindung miteinander kombinieren.

                                Viele Grüße
                                maxclaudi

                                Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

                                Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

                                paul53P M 2 Antworten Letzte Antwort
                                0
                                • maxclaudiM maxclaudi

                                  Noch eine wichtige Ergänzung, weil hier offenbar einige durch Aussagen zu Garantie und Versicherung verunsichert wurden:

                                  Die Aussage

                                  „Mit Änderung des MQTT-Servers verliert man sämtliche Garantie“

                                  ist so pauschal nicht belegt.

                                  Bei der von mir beschriebenen Vorgehensweise wird keine Firmware verändert, kein BMS gepatcht und keine Schutzfunktion des Gerätes verändert.

                                  Es wird lediglich über den vorhandenen BLE-Konfigurationsmechanismus die MQTT-Serveradresse geändert, die das Gerät für seine Kommunikation verwendet.

                                  Das sind technisch zwei völlig unterschiedliche Dinge.

                                  Auch die Aussage, dass ein lokaler MQTT-Broker zwangsläufig bedeutet, dass Zendure keinerlei Diagnoseinformationen mehr erhält, ist so nicht richtig. Wie in meinem vorherigen Beitrag beschrieben, kann der lokale Broker über eine MQTT-Bridge weiterhin mit der Zendure-Cloud kommunizieren. Damit können die Daten weiterhin zur Cloud weitergereicht werden.

                                  Noch einmal ausdrücklich:

                                  Lokaler MQTT-Betrieb bedeutet nicht automatisch „Cloud abschalten“.

                                  Man kann beispielsweise weiterhin alle Reports und Diagnosedaten zur Cloud weiterleiten und gleichzeitig lokal sämtliche MQTT-Kommunikation beobachten und kontrollieren.

                                  Auch die häufig daraus abgeleitete Aussage

                                  „Dann zahlt im schlimmsten Fall die Versicherung bei einem Brand nicht“

                                  ist keine technische Schlussfolgerung.

                                  Ein Versicherungsfall wird nicht dadurch entschieden, dass irgendwann einmal die Adresse eines MQTT-Brokers geändert wurde. Entscheidend wären vielmehr der konkrete Versicherungsvertrag, die konkrete Schadenursache und gegebenenfalls die Frage, ob eine Änderung überhaupt ursächlich für den Schaden war.

                                  Wer beispielsweise die Ladeelektronik, das BMS oder Schutzmechanismen manipuliert, befindet sich selbstverständlich in einer völlig anderen Situation.

                                  Das ist aber nicht das, was ich hier beschreibe.

                                  Bei meinem Ansatz wird ausschließlich die Kommunikationsroute geändert.

                                  Das lässt sich auch sehr einfach nachvollziehen:

                                  Original:

                                  Gerät → Zendure-MQTT → Zendure-Cloud

                                  Lokal:

                                  Gerät → eigener MQTT-Broker

                                  Lokal + Cloud-Relay:

                                  Gerät → eigener MQTT-Broker → Zendure-Cloud

                                  Die Hardware, Firmware, BMS-Regelung und elektrischen Schutzmechanismen bleiben dabei unverändert.

                                  Auch das angeführte Beispiel eines Brandes eines AIO2400 Anfang 2025 ändert daran nichts. Ohne eine nachgewiesene Brandursache gibt es keinen technischen Zusammenhang zwischen einem Brand und der Änderung eines MQTT-Ziels.

                                  Ich möchte damit niemanden dazu auffordern, sein Gerät zwingend lokal zu betreiben. Jeder muss selbst entscheiden, welche Lösung er verwenden möchte.

                                  Mir ist nur wichtig, dass diese Entscheidung auf technischen Fakten und nicht auf unbelegten Horrorszenarien basiert.

                                  Wer die Cloud verwenden möchte, kann sie verwenden.

                                  Wer lokal arbeiten möchte, kann lokal arbeiten.

                                  Und wer beides möchte, kann über ein Relay sogar lokalen Betrieb, vollständige MQTT-Transparenz und Cloud-Anbindung miteinander kombinieren.

                                  Viele Grüße
                                  maxclaudi

                                  paul53P
                                  paul53P
                                  paul53
                                  schrieb am zuletzt editiert von paul53
                                  #544

                                  @maxclaudi [sagte:
                                  Es wird lediglich über den vorhandenen BLE-Konfigurationsmechanismus die MQTT-Serveradresse geändert, die das Gerät für seine Kommunikation verwendet.

                                  Damit bist du von der Überschrift "zenSDK local API" mittlerweile entfernt. Oder ist die Aktivierung der lokalen MQTT-Kommunikation Bestandteil des zenSDK?

                                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                  Produktiv: Asus PN42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

                                  maxclaudiM 1 Antwort Letzte Antwort
                                  0
                                  • paul53P paul53

                                    @maxclaudi [sagte:
                                    Es wird lediglich über den vorhandenen BLE-Konfigurationsmechanismus die MQTT-Serveradresse geändert, die das Gerät für seine Kommunikation verwendet.

                                    Damit bist du von der Überschrift "zenSDK local API" mittlerweile entfernt. Oder ist die Aktivierung der lokalen MQTT-Kommunikation Bestandteil des zenSDK?

                                    maxclaudiM
                                    maxclaudiM
                                    maxclaudi
                                    schrieb am zuletzt editiert von maxclaudi
                                    #545

                                    Guten Morgen @paul53,

                                    mir ging es hier primär um die technische Aufklärung zu dem Beitrag

                                    @nograx sagte:
                                    ....Ich bin von Zendure angehalten worden mit dem Adapter bei den neuen Geräten die offiziell unterstützten Möglichkeiten zu nutzen. Und daran werde ich mich auch halten.

                                    Die offiziell unterstützten Möglichkeiten von Zendure beinhalten im zenSDK-Protokoll weder ein Cloud-Relay noch die unvollständige Manipulation von Modi wie HEMS über intransparente Funktionen.
                                    Das halte ich technisch für riskanter – vor allem, wenn durch unvollständige Code-Basteleien Geräte-Befehle, Invoke-Methoden oder Modi verwendet werden, deren exakte Systemmatrix und Syntax gar nicht vollumfänglich bekannt sind.

                                    Zendure-Geräte sind zum Teil explizit für den Outdoor-, Camping- und Gartenhaus-Bereich konzipiert – Umgebungen, die oft weder über 230V Netzstrom noch über eine permanente Internetverbindung verfügen.

                                    Zu Deiner Frage

                                    @paul53 sagte:

                                    @maxclaudi [sagte:
                                    Es wird lediglich über den vorhandenen BLE-Konfigurationsmechanismus die MQTT-Serveradresse geändert, die das Gerät für seine Kommunikation verwendet.

                                    Damit bist du von der Überschrift "zenSDK local API" mittlerweile entfernt. Oder ist die Aktivierung der lokalen MQTT-Kommunikation Bestandteil des zenSDK?

                                    Um das präzise zu beantworten:
                                    Ja, die Aktivierung der lokalen MQTT-Kommunikation ist integraler Bestandteil des offiziellen zenSDK.

                                    Zendure dokumentiert genau diese RPC-Methoden zur lokalen Konfiguration transparent in den offiziellen Repositories Zendure/zenSDK.

                                    Die Aktivierung erfolgt über exakt definierte API-Aufrufe wie:

                                    POST /rpc
                                    Content-Type: application/json
                                    
                                    {
                                      "sn": "WOB1NHMAMXXXXX3",
                                      "method": "HA.Mqtt.SetConfig",
                                      "params": {
                                        "config": {
                                          "enable": true,
                                          "server": "192.168.50.48",
                                          "port":1883,
                                          "protocol":"mqtt",
                                          "username": "zendure",
                                          "password": "zendure"
                                        }
                                      }
                                    }
                                    

                                    sowie die MQTT status Abfrage:

                                    GET /rpc?method=HA.Mqtt.GetStatus
                                    

                                    oder Get MQTT configuration

                                    GET /rpc?method=HA.Mqtt.GetConfig
                                    

                                    Allerdings ist dieser von Zendure bereitgestellte lokale MQTT-Weg stark reglementiert und in der Übertragungsgeschwindigkeit gedrosselt.

                                    Zudem versuchen ältere Firmware-Generationen der neuen Gerätegenerationen die zenSDK unterstützen, sich parallel ununterbrochen mit der Cloud zu verbinden.

                                    Anscheinend erst mit neuesten Firmwareversionen wie bei Dir, soll das nicht mehr so sein.
                                    Das kann ich (noch) nicht bestätigen, glaube es Dir aber gerne.

                                    Wer nicht updaten kann oder möchte, kann mit den älteren zenSDK Frimware-Versionen nicht vollständig lokal, isoliert steuern.

                                    Um mit diesen Versionen eine wirklich ruhige, stressfreie und vollständig lokale Steuerung zu betreiben, bietet der Weg über das lokale Bluetooth-Umschreiben der URL die sauberste Alternative.

                                    In diesem Thread geht es mir um eine ganzheitliche Gesamtlösung:
                                    Die zenSDK-Ansteuerung über mein Steuerungsskript, die Bereitstellung meines lokalen Konfigurations-Tools UND vor allem die praxisnahe, unkomplizierte Hilfe für Anfänger durch z. B. einfache Beispiel-Blockly-Skripte als Vorlage, wie die Realisierung einer 0-Einspeisung.

                                    Hierzu möchte ich ausdrücklich jeden herzlich einladen, aktiv mitzuwirken!

                                    Ein solches Projekt lebt vom Austausch:

                                    • Jede(r) ist herzlich eingeladen Fragen zu stellen, Logiken zu testen und Rückmeldungen zu geben, wo Hürden liegen.

                                    • Erfahrene Experten und Skript-Profis – sehr gerne auch Du, @paul53 – sind eingeladen, eigene optimierte Skripte, Blocklys oder Ideen zur Verfügung zu stellen, Fehler im Code zu jagen, Timing-Probleme zu melden oder Verbesserungen einzubringen.

                                    Wenn ein Nutzer mein Tool verwendet, um die Route auf einen eigenen, lokalen Broker umzubiegen, läuft das gesamte System m. M. n. – inklusive der lokalen zenSDK-API – um ein Vielfaches schneller, flüssiger und stabiler.

                                    Man hat dann die freie Wahl, ob man das gedrosselte, offizielle MQTT, die zenSDK API nutzen möchte oder die uneingeschränkte MQTT-Transparenz.

                                    Alternativ lässt sich auch pihole oder Adguard verwenden um die Cloud-URL auf eine lokale IP umzuleiten.

                                    Falls der aktuelle Titel des Threads:
                                    "Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2“
                                    für die hier angebotene Gesamtlösung mittlerweile nicht mehr aussagekräftig genug oder unpräzise erscheint, freue ich mich über jeden konstruktiven Vorschlag zur Änderung.

                                    Da das Forum den Titel leider auf maximal 60 Zeichen beschränkt, ist es gar nicht so einfach, API, Skripte, Blocklys und Konfigurations-Tools in einer einzigen Zeile prägnant unterzubringen.

                                    Liebe Grüße

                                    maxclaudi

                                    Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

                                    Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

                                    D maxclaudiM 2 Antworten Letzte Antwort
                                    0
                                    • paul53P paul53

                                      @maxclaudi
                                      Kannst du etwas zu dieser Beobachtung sagen, da du schon länger Erfahrung mit den Zendure Solarflow gemacht hast?

                                      Bis zum "socSet" (85 %) wird mit 800 W aus dem Netz geladen. Danach erhöht sich "electricLevel" alle 2 Stunden um 1 %, was zu der Angabe von "Battery pack power" = 9 W passt.
                                      Werte unter "properties" sind dann allerdings gelogen:

                                      • "gridInputPower" = "gridOffPower" um 17 W (Mini-PC: 6 W + Router)
                                      • "outputPackPower": 0 W

                                      Gibt es eine Minimalleistungsaufnahme am Notstrom-Ausgang, damit nicht über den "socSet" hinaus geladen wird?
                                      Als ich zu Beginn mal eine 75 W Glühlampe angeschlossen hatte, blieb der SOC auf 85 % konstant.

                                      EDIT: Übrigens habe ich noch folgende Werte unter "properties", die nicht der Beschreibung entsprechen:

                                      • "pass": 3
                                      • "socLimit": 17
                                      maxclaudiM
                                      maxclaudiM
                                      maxclaudi
                                      schrieb am zuletzt editiert von
                                      #546

                                      @paul53 sagte:
                                      EDIT: Übrigens habe ich noch folgende Werte unter "properties", die nicht der Beschreibung entsprechen:

                                      • "pass": 3
                                      • "socLimit": 17

                                      Kurios.
                                      Die Beschreibung des Datenpunktes pass (Bypass-Modus) stimmt zumindest laut der aktuellen App-Logik nicht mit der veralteten Online-Dokumentation überein.
                                      Eine tiefergehende Analyse der App-Strukturen liefert im Kernel ausschließlich folgende Definitionen:

                                      public static final int PASS_MODE_AUTO = 0;
                                      public static final int PASS_MODE_OFF = 1;
                                      public static final int PASS_MODE_ON = 2;
                                      
                                      

                                      Einen Wert 3 gibt es in dieser State-Machine für den Bypass-Modus nicht.
                                      Warum anscheinend "3" im JSON-Telegramm übermittelt wurde erschließt sich mir nicht.
                                      Die Beschreibung im aktuellen zenSDK-Script ist zumindest laut App richtig.
                                      Genau deshalb ist eine saubere, lokale Analyse der Kommunikationswege so wichtig, um diese Abweichungen zu verstehen.

                                      Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2

                                      Zendure wie 2400 AC Pro lokale IP statt Cloud: zURLtool

                                      paul53P 1 Antwort Letzte Antwort
                                      0
                                      • maxclaudiM maxclaudi

                                        Noch eine wichtige Ergänzung, weil hier offenbar einige durch Aussagen zu Garantie und Versicherung verunsichert wurden:

                                        Die Aussage

                                        „Mit Änderung des MQTT-Servers verliert man sämtliche Garantie“

                                        ist so pauschal nicht belegt.

                                        Bei der von mir beschriebenen Vorgehensweise wird keine Firmware verändert, kein BMS gepatcht und keine Schutzfunktion des Gerätes verändert.

                                        Es wird lediglich über den vorhandenen BLE-Konfigurationsmechanismus die MQTT-Serveradresse geändert, die das Gerät für seine Kommunikation verwendet.

                                        Das sind technisch zwei völlig unterschiedliche Dinge.

                                        Auch die Aussage, dass ein lokaler MQTT-Broker zwangsläufig bedeutet, dass Zendure keinerlei Diagnoseinformationen mehr erhält, ist so nicht richtig. Wie in meinem vorherigen Beitrag beschrieben, kann der lokale Broker über eine MQTT-Bridge weiterhin mit der Zendure-Cloud kommunizieren. Damit können die Daten weiterhin zur Cloud weitergereicht werden.

                                        Noch einmal ausdrücklich:

                                        Lokaler MQTT-Betrieb bedeutet nicht automatisch „Cloud abschalten“.

                                        Man kann beispielsweise weiterhin alle Reports und Diagnosedaten zur Cloud weiterleiten und gleichzeitig lokal sämtliche MQTT-Kommunikation beobachten und kontrollieren.

                                        Auch die häufig daraus abgeleitete Aussage

                                        „Dann zahlt im schlimmsten Fall die Versicherung bei einem Brand nicht“

                                        ist keine technische Schlussfolgerung.

                                        Ein Versicherungsfall wird nicht dadurch entschieden, dass irgendwann einmal die Adresse eines MQTT-Brokers geändert wurde. Entscheidend wären vielmehr der konkrete Versicherungsvertrag, die konkrete Schadenursache und gegebenenfalls die Frage, ob eine Änderung überhaupt ursächlich für den Schaden war.

                                        Wer beispielsweise die Ladeelektronik, das BMS oder Schutzmechanismen manipuliert, befindet sich selbstverständlich in einer völlig anderen Situation.

                                        Das ist aber nicht das, was ich hier beschreibe.

                                        Bei meinem Ansatz wird ausschließlich die Kommunikationsroute geändert.

                                        Das lässt sich auch sehr einfach nachvollziehen:

                                        Original:

                                        Gerät → Zendure-MQTT → Zendure-Cloud

                                        Lokal:

                                        Gerät → eigener MQTT-Broker

                                        Lokal + Cloud-Relay:

                                        Gerät → eigener MQTT-Broker → Zendure-Cloud

                                        Die Hardware, Firmware, BMS-Regelung und elektrischen Schutzmechanismen bleiben dabei unverändert.

                                        Auch das angeführte Beispiel eines Brandes eines AIO2400 Anfang 2025 ändert daran nichts. Ohne eine nachgewiesene Brandursache gibt es keinen technischen Zusammenhang zwischen einem Brand und der Änderung eines MQTT-Ziels.

                                        Ich möchte damit niemanden dazu auffordern, sein Gerät zwingend lokal zu betreiben. Jeder muss selbst entscheiden, welche Lösung er verwenden möchte.

                                        Mir ist nur wichtig, dass diese Entscheidung auf technischen Fakten und nicht auf unbelegten Horrorszenarien basiert.

                                        Wer die Cloud verwenden möchte, kann sie verwenden.

                                        Wer lokal arbeiten möchte, kann lokal arbeiten.

                                        Und wer beides möchte, kann über ein Relay sogar lokalen Betrieb, vollständige MQTT-Transparenz und Cloud-Anbindung miteinander kombinieren.

                                        Viele Grüße
                                        maxclaudi

                                        M
                                        M
                                        MP_Trixi
                                        schrieb am zuletzt editiert von
                                        #547

                                        @maxclaudi
                                        Hi. Was mir gerade in der App bei meinem 800Pro2 aufgefallen ist (glaube diese Option hat es früher wohl schon mal gegeben und ist scheinbar nun in einer der letzten App Versionen wieder reingekommen). Was die genau tut und ob das im entferntesten Deiner Lösung gleich oder nahe kommt kann ich nicht sagen:
                                        e2d2401e-0499-4743-a1b2-340be19836fd-image.jpeg

                                        maxclaudiM 1 Antwort Letzte Antwort
                                        1
                                        • maxclaudiM maxclaudi

                                          @paul53 sagte:
                                          EDIT: Übrigens habe ich noch folgende Werte unter "properties", die nicht der Beschreibung entsprechen:

                                          • "pass": 3
                                          • "socLimit": 17

                                          Kurios.
                                          Die Beschreibung des Datenpunktes pass (Bypass-Modus) stimmt zumindest laut der aktuellen App-Logik nicht mit der veralteten Online-Dokumentation überein.
                                          Eine tiefergehende Analyse der App-Strukturen liefert im Kernel ausschließlich folgende Definitionen:

                                          public static final int PASS_MODE_AUTO = 0;
                                          public static final int PASS_MODE_OFF = 1;
                                          public static final int PASS_MODE_ON = 2;
                                          
                                          

                                          Einen Wert 3 gibt es in dieser State-Machine für den Bypass-Modus nicht.
                                          Warum anscheinend "3" im JSON-Telegramm übermittelt wurde erschließt sich mir nicht.
                                          Die Beschreibung im aktuellen zenSDK-Script ist zumindest laut App richtig.
                                          Genau deshalb ist eine saubere, lokale Analyse der Kommunikationswege so wichtig, um diese Abweichungen zu verstehen.

                                          paul53P
                                          paul53P
                                          paul53
                                          schrieb am zuletzt editiert von
                                          #548

                                          @maxclaudi [sagte]: Kurios.

                                          "pass" zeigt jetzt 0, "socLimit" ist 16.

                                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                          Produktiv: Asus PN42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

                                          1 Antwort Letzte Antwort
                                          0

                                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                          Registrieren Anmelden
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          331

                                          Online

                                          33.1k

                                          Benutzende

                                          83.7k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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