NEWS
Zendure zenSDK Lokal API, SmartMode, SolarFlow AC 800 Pro 2
-
@Daniel-8
Bei 3,45 maxVolt ist ist die Kalibrierung perfekt auf 99%.
Läuft bei mir so seit Monaten.
Aber schaden tut es nichts wenn du sicherheitshalber bei 3,17 minVolt das entladen beendest. Der Winter kommt und da wird der Akku ja nicht oft voll.@Daniel-8
Bei 3,45 maxVolt ist ist die Kalibrierung perfekt auf 99%.
Läuft bei mir so seit Monaten.
Aber schaden tut es nichts wenn du sicherheitshalber bei 3,17 minVolt das entladen beendest. Der Winter kommt und da wird der Akku ja nicht oft voll.Hast du denn den socset auf 99% gestellt?
Ja im Winter werde ich eher auf eine voltzahl gehen wo ich bei ca30% liege. Mehr bekomme ich wegen der Lage nicht runter.
Aber das mache ich alles nach dem Urlaub. -
@Daniel-8
Bei 3,45 maxVolt ist ist die Kalibrierung perfekt auf 99%.
Läuft bei mir so seit Monaten.
Aber schaden tut es nichts wenn du sicherheitshalber bei 3,17 minVolt das entladen beendest. Der Winter kommt und da wird der Akku ja nicht oft voll.Hast du denn den socset auf 99% gestellt?
Ja im Winter werde ich eher auf eine voltzahl gehen wo ich bei ca30% liege. Mehr bekomme ich wegen der Lage nicht runter.
Aber das mache ich alles nach dem Urlaub. -
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.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. :-)
-
@Daniel-8 [sagte]: Hast du denn den socset auf 99% gestellt?
Dann würden 3,45 V nicht erreicht. Die Kalibrierung erfolgt mit "socSet" = 100 % bei SoC = 99 %.
-
@Daniel-8
Bei 3,45 maxVolt ist ist die Kalibrierung perfekt auf 99%.
Läuft bei mir so seit Monaten.
Aber schaden tut es nichts wenn du sicherheitshalber bei 3,17 minVolt das entladen beendest. Der Winter kommt und da wird der Akku ja nicht oft voll.Hast du denn den socset auf 99% gestellt?
Ja im Winter werde ich eher auf eine voltzahl gehen wo ich bei ca30% liege. Mehr bekomme ich wegen der Lage nicht runter.
Aber das mache ich alles nach dem Urlaub.Ja im Winter werde ich eher auf eine voltzahl gehen wo ich bei ca30% liege. Mehr bekomme ich wegen der Lage nicht runter.
Aber das mache ich alles nach dem Urlaub.Im Winter stelle ich minSOC auf 50% und schalte das Entladen bei 3,17 ab, mein Akku steht aber im Haus.
Für einen Akku im Freien würde 50 % min SOC einstellen und sobald bei einem Akku minVOL unter 3,20 volt fällt das Entladen beenden. -
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. :-)
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?
-
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?
@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 falseDas 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. -
wenn es nicht mit neuer Firmware verändert wurde
Es sieht danach aus. Log von heute:
2026-08-14 03:41:21.984 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded 2026-08-14 03:41:25.004 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK 2026-08-14 06:20:27.839 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded 2026-08-14 06:20:30.862 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK 2026-08-14 09:04:33.916 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded 2026-08-14 09:04:36.934 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK 2026-08-14 10:55:19.354 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded 2026-08-14 10:55:24.190 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK 2026-08-14 10:55:34.354 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded 2026-08-14 10:55:39.354 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: GET Fehler (2): timeout of 2000ms exceeded 2026-08-14 10:55:42.398 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK 2026-08-14 10:55:49.355 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded 2026-08-14 10:55:54.355 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: GET Fehler (2): timeout of 2000ms exceeded 2026-08-14 10:55:57.517 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OK 2026-08-14 11:48:39.606 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: GET Fehler (1): timeout of 2000ms exceeded 2026-08-14 11:48:42.624 - [32minfo[39m: javascript.0 (838) script.js.common.Solarflow: Verbindung wieder OKDer 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.
-
@maxclaudi sagte: Driftet TimeUpdate bzw. timestamp schon etwas von der iobroker Systemzeit?
"TimeUpdate (timestamp)" geht etwa 30 s nach.
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.
-
@maxclaudi sagte: Driftet TimeUpdate bzw. timestamp schon etwas von der iobroker Systemzeit?
"TimeUpdate (timestamp)" geht etwa 30 s nach.
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.
-
@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 vontimestampdeutlich größer wird, dann ist das Zendure-Gerät wirklich offline.@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.
Ausgehende Protokolle werden ja nicht blockiert.EDIT: Die Werte werden in der App nicht aktualisiert.
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