NEWS
Test Adapter Zendure Solarflow
-
Ich lese hier ständig mit, man lernt ja nie aus.
Ist es aber nicht so, dass der Broker wenn er ohne Nutzer und PW eingestellt ist alles zulässt.
Also du in der Zendure App eingeben kannst was du möchtest und der Broker es akzeptiert.Wäre doch das Gleiche wie beim Hyper2000 den man mit dem Cloud-Disconnector auf MQTT lokal betreibt.
@Murphy-0 sagte in Test Adapter Zendure Solarflow:
Ich lese hier ständig mit, man lernt ja nie aus.
Ist es aber nicht so, dass der Broker wenn er ohne Nutzer und PW eingestellt ist alles zulässt.
Also du in der Zendure App eingeben kannst was du möchtest und der Broker es akzeptiert.Wäre doch das Gleiche wie beim Hyper2000 den man mit dem Cloud-Disconnector auf MQTT lokal betreibt.
Lösung:
Zendure Solar Flow ohne Cloud MQTT-Broker MIT Authentication -
Hallo ich bin nachdem ich den Speicher (SolarFlow 800 Plus) erfolgreich einbinden konnte jetzt mal dazu gekommen mir das ganze genauer anzuschauen. Und siehe da keine verwertbaren Werte in den Objekten. Die connection springt zwischen true und false hin und her. Wifi State ist disconnected. Ich sehe nur den Produkt Namen und die Serial.
Angerbunden habe ich den Speicher über den Cloud Authorization Key.Adapter Version 3.6.0
Log sieht wie folgt aus:

-
Ich lese hier ständig mit, man lernt ja nie aus.
Ist es aber nicht so, dass der Broker wenn er ohne Nutzer und PW eingestellt ist alles zulässt.
Also du in der Zendure App eingeben kannst was du möchtest und der Broker es akzeptiert.Wäre doch das Gleiche wie beim Hyper2000 den man mit dem Cloud-Disconnector auf MQTT lokal betreibt.
@Murphy-0 sagte in Test Adapter Zendure Solarflow:
Ist es aber nicht so, dass der Broker wenn er ohne Nutzer und PW eingestellt ist alles zulässt.
Also du in der Zendure App eingeben kannst was du möchtest und der Broker es akzeptiert.Könntest recht haben damit.
Hab ich ehrlich gesagt nicht ausprobiert.
Hab in der App versucht ohne Benutzer/Passwort den MQTT zu aktivieren, was nicht ging. Ob es mit irgendeinen Namen und PW funktioniert hätte weiß ich nicht. Hab einfach nochmal eine Instanz im ioBroker angelegt und dort einen Benutzer/Passwort vergeben. Danach kamen direkt die Daten rein beim MQTT-Broker. Leider kommt aber nix im Zendur-Adaper rein, aber das liegt wahrscheinlich am hardcoded 1883 Port, den bei mir aktuell noch Sonoff unter beschlag hat. -
Das was die neueren Geräte über die originale MQTT Verbindung versendet kann vom Adapter aktuell nicht ausgewertet werden. Da verwendet Zendure eine komplett andere Struktur und man hat auch nicht alle Features zur Verfügung. Außerdem ist die Verbindung sehr sehr langsam. Das Gerät akzeptiert nur EIN Datenpaket pro 5 Sekunden! Ich arbeite an einem Update um das zenSDK zu unterstützen, damit gibt es dann eine "legale" lokale Kommunikation zwischen dem Gerät und ioB.
-
Das was die neueren Geräte über die originale MQTT Verbindung versendet kann vom Adapter aktuell nicht ausgewertet werden. Da verwendet Zendure eine komplett andere Struktur und man hat auch nicht alle Features zur Verfügung. Außerdem ist die Verbindung sehr sehr langsam. Das Gerät akzeptiert nur EIN Datenpaket pro 5 Sekunden! Ich arbeite an einem Update um das zenSDK zu unterstützen, damit gibt es dann eine "legale" lokale Kommunikation zwischen dem Gerät und ioB.
@nograx sagte in Test Adapter Zendure Solarflow:
Ich arbeite an einem Update um das zenSDK zu unterstützen, damit gibt es dann eine "legale" lokale Kommunikation zwischen dem Gerät und ioB.
TOP!! Ich freue mich, dass Du da dran bleibst. Aber bei mir kommen zumindest einige Daten vom SF800 Plus an im Adapter, aber unter eigener anderen Hardware ID wie gedacht. Hier mal ein kleiner Auszug meiner DP´s.
Kommunikation kann sein, das die etwas langsam ist.
-
@nograx sagte in Test Adapter Zendure Solarflow:
Aber die kommen über die Cloud?
Ich denke ja, hab mich im Adapter über den Auth-Key verbunden, da anscheinend Lokal-MQTT nicht funktioniert hat bei mir und dem SF800 Plus. Könnte ich aber nochmal testen ob es über MQTT auch funktionieren würde.
-
@nograx sagte in Test Adapter Zendure Solarflow:
Aber die kommen über die Cloud?
Ich denke ja, hab mich im Adapter über den Auth-Key verbunden, da anscheinend Lokal-MQTT nicht funktioniert hat bei mir und dem SF800 Plus. Könnte ich aber nochmal testen ob es über MQTT auch funktionieren würde.
habe zenSDK bereits vor einiger Zeit in JavaScript umgesetzt.
Du kannst dafür gern mein Script verwenden – es funktioniert mit allen neueren Geräten, die den WebServer (zenSDK) bereitstellen.Die komplette Steuerung erfolgt über das HTTP-zenSDK.
Dabei werden die Datenpunkte automatisch angelegt, aktualisiert und können auch gesteuert werden – wie bei einem Adapter.Weitere Informationen und das Script findest du hier:
Zendure SmartMode:1 SolarFlow2400 AC SolarFlow800 ( u. Pro)Wenn lokales MQTT nicht genutzt oder überwacht werden soll, kann die zyklische MQTT-Abfrage (im Konfig-Bereich mit false) deaktiviert werden.
const mqttStateAsking = false; // true = zyklische MQTT-Abfrage aktiv, false = deaktiviertDie Kommunikation mit dem Gerät erfolgt ausschließlich über den HTTP-WebServer (zenSDK) und nicht über MQTT.
Die Cloud kann parallel weiterhin genutzt werden.Für eine eigene, vollständige Steuerung empfiehlt es sich HEMS zu deaktivieren.
Probiers einfach mal aus.
-
@maxclaudi
Toll, das sich so viele Leute damit beschäftigen.
Klingt ja auch sehr interessant. Kann ich damit auch eine Steuerung realisieren, die negativ Bezüge ins Stromnetz ain den Akku leiten, ohne zusätzliches Script?
Und Abend dann ggf. wieder ins Hausnetz speist, je nach Akkuladung?
Was ist der SmartMode genau? Klingt bisschen nach KI wie in der App von Zendur :-)
Hab dazu wohl noch viele Fragen, aber vor dem Testen werde ich mir mal deine Informationen durchlesen.Danke schonmal für´s bereitstellen und die Info
Edit:
Hab´s gecheckt was der Smart Modus bewirkt. Rest muss ich mir mal zu Gemüte führen und in ein Blockly einbauen was bewirkt was ich möchte ;-)
Aber mit welchem Wert Regel ich den Input in den Akku bei z.B. -300W Einspeisung ins Netz?
Beim Zendur-Adapter nutzt man ja "setDeviceAutomationInOutLimit" glaub ich.
-
@maxclaudi
Toll, das sich so viele Leute damit beschäftigen.
Klingt ja auch sehr interessant. Kann ich damit auch eine Steuerung realisieren, die negativ Bezüge ins Stromnetz ain den Akku leiten, ohne zusätzliches Script?
Und Abend dann ggf. wieder ins Hausnetz speist, je nach Akkuladung?
Was ist der SmartMode genau? Klingt bisschen nach KI wie in der App von Zendur :-)
Hab dazu wohl noch viele Fragen, aber vor dem Testen werde ich mir mal deine Informationen durchlesen.Danke schonmal für´s bereitstellen und die Info
Edit:
Hab´s gecheckt was der Smart Modus bewirkt. Rest muss ich mir mal zu Gemüte führen und in ein Blockly einbauen was bewirkt was ich möchte ;-)
Aber mit welchem Wert Regel ich den Input in den Akku bei z.B. -300W Einspeisung ins Netz?
Beim Zendur-Adapter nutzt man ja "setDeviceAutomationInOutLimit" glaub ich.
-
Wer sich traut...
Ich habe heute morgen eine prerelease version veröffentlicht die so ziemlich einiges ändert.
-> Unterstützung für zenSDK
-> Im "Authentication Cloud Key" Modus kann jetzt zusätzlich der lokale MQTT angegeben werden, die in der App hinterlegten Geräte werden dann auf dem lokalen MQTT subscribed. Eine Konfiguration mit productKey/deviceKey ist dann nicht mehr nötig.
-> In diesem Modus ist es möglich die lokalen Daten an die Cloud "weiterzureichen", dadurch sind alle Infos auch in der Zendure App verfügbar UND Zendure erhält nun auch alle Diagnose Infos vom Gerät (falls gewünscht). Theoretisch kann man dann auch aus der Ferne Firmware Updates anstoßen (nicht getestet)Die prerelease version muss manuell über npm installiert werden. Die landet frühestens nächste Woche im Beta Kanal.
-
@maxclaudi
Toll, das sich so viele Leute damit beschäftigen.
Klingt ja auch sehr interessant. Kann ich damit auch eine Steuerung realisieren, die negativ Bezüge ins Stromnetz ain den Akku leiten, ohne zusätzliches Script?
Und Abend dann ggf. wieder ins Hausnetz speist, je nach Akkuladung?
Was ist der SmartMode genau? Klingt bisschen nach KI wie in der App von Zendur :-)
Hab dazu wohl noch viele Fragen, aber vor dem Testen werde ich mir mal deine Informationen durchlesen.Danke schonmal für´s bereitstellen und die Info
Edit:
Hab´s gecheckt was der Smart Modus bewirkt. Rest muss ich mir mal zu Gemüte führen und in ein Blockly einbauen was bewirkt was ich möchte ;-)
Aber mit welchem Wert Regel ich den Input in den Akku bei z.B. -300W Einspeisung ins Netz?
Beim Zendur-Adapter nutzt man ja "setDeviceAutomationInOutLimit" glaub ich.
@Freaknet sagte in Test Adapter Zendure Solarflow:
... Was ist der SmartMode genau? Klingt bisschen nach KI wie in der App von Zendur :-)
Der smartMode sorgt dafür, dass Befehle im RAM statt im Flash gespeichert werden.
Das ist von Zendure so vorgesehen.Wenn Du eine eigene Steuerung implementierst, solltest Du sicherstellen, dass smartMode: 1 gesetzt ist, damit nicht unnötig Flash-Schreibzugriffe entstehen.
Am besten den Datenpunkt überwachen lassen und ihn automatisch (z. B. per Blockly/Script) wieder auf smartMode: 1 setzen, falls er sich ändert.
Ist HEMS aktiviert, wird der smartMode abgeschaltet. In diesem Fall funktioniert eine eigene Steuerung nicht oder nur eingeschränkt.
Wenn bei aktivem HEMS zusätzlich eine Überwachung des Datenpunkts aktiv ist, kann es zu einem permanenten Umschalten des smartMode kommen, oder der Wert bleibt dauerhaft auf smartMode: 0.
Edit:
Hab´s gecheckt was der Smart Modus bewirkt. Rest muss ich mir mal zu Gemüte führen und in ein Blockly einbauen was bewirkt was ich möchte ;-)
Aber mit welchem Wert Regel ich den Input in den Akku bei z.B. -300W Einspeisung ins Netz?
Beim Zendur-Adapter nutzt man ja "setDeviceAutomationInOutLimit" glaub ich.Einen Datenpunkt "setDeviceAutomationInOutLimit" gibt es bei Zendure selbst nicht.
Dieser wird vom entsprechenden Adapter bereitgestellt.Bei Zendure gilt grundsätzlich:
Laden und Entladen gleichzeitig ist nicht möglich.Batterien laden (z. B. bei PV-Überschuss):
- acMode: 1 setzen mit setAcMode
- gewünschte Ladeleistung mit setInputLimit festlegen (in Watt)
Energie ins Haus einspeisen:
- acMode: 2 setzen mit setAcMode
- gewünschte Ausgangsleistung mit setOutputLimit festlegen (in Watt)
Ein setDeviceAutomationInOutLimit existiert im Zendure-Protokoll selbst nicht.
Zum Flash-Speichern:
Ein Wechsel des acMode wird sehr wahrscheinlich immer im Flash gespeichert.
Alle Geräte, die ich bisher analysiert habe, schreiben den acMode unabhängig von möglichen Workarounds dauerhaft in den Flash.inputLimit und outputLimit werden bei smartMode: 1 nicht in den Flash geschrieben, sondern nur im RAM gespeichert.
Der acMode sollte daher nicht zu oft gewechselt werden.
-
@Freaknet sagte in Test Adapter Zendure Solarflow:
... Was ist der SmartMode genau? Klingt bisschen nach KI wie in der App von Zendur :-)
Der smartMode sorgt dafür, dass Befehle im RAM statt im Flash gespeichert werden.
Das ist von Zendure so vorgesehen.Wenn Du eine eigene Steuerung implementierst, solltest Du sicherstellen, dass smartMode: 1 gesetzt ist, damit nicht unnötig Flash-Schreibzugriffe entstehen.
Am besten den Datenpunkt überwachen lassen und ihn automatisch (z. B. per Blockly/Script) wieder auf smartMode: 1 setzen, falls er sich ändert.
Ist HEMS aktiviert, wird der smartMode abgeschaltet. In diesem Fall funktioniert eine eigene Steuerung nicht oder nur eingeschränkt.
Wenn bei aktivem HEMS zusätzlich eine Überwachung des Datenpunkts aktiv ist, kann es zu einem permanenten Umschalten des smartMode kommen, oder der Wert bleibt dauerhaft auf smartMode: 0.
Edit:
Hab´s gecheckt was der Smart Modus bewirkt. Rest muss ich mir mal zu Gemüte führen und in ein Blockly einbauen was bewirkt was ich möchte ;-)
Aber mit welchem Wert Regel ich den Input in den Akku bei z.B. -300W Einspeisung ins Netz?
Beim Zendur-Adapter nutzt man ja "setDeviceAutomationInOutLimit" glaub ich.Einen Datenpunkt "setDeviceAutomationInOutLimit" gibt es bei Zendure selbst nicht.
Dieser wird vom entsprechenden Adapter bereitgestellt.Bei Zendure gilt grundsätzlich:
Laden und Entladen gleichzeitig ist nicht möglich.Batterien laden (z. B. bei PV-Überschuss):
- acMode: 1 setzen mit setAcMode
- gewünschte Ladeleistung mit setInputLimit festlegen (in Watt)
Energie ins Haus einspeisen:
- acMode: 2 setzen mit setAcMode
- gewünschte Ausgangsleistung mit setOutputLimit festlegen (in Watt)
Ein setDeviceAutomationInOutLimit existiert im Zendure-Protokoll selbst nicht.
Zum Flash-Speichern:
Ein Wechsel des acMode wird sehr wahrscheinlich immer im Flash gespeichert.
Alle Geräte, die ich bisher analysiert habe, schreiben den acMode unabhängig von möglichen Workarounds dauerhaft in den Flash.inputLimit und outputLimit werden bei smartMode: 1 nicht in den Flash geschrieben, sondern nur im RAM gespeichert.
Der acMode sollte daher nicht zu oft gewechselt werden.
@maxclaudi smartMode sorgt aber auch dafür das die Wechselrichter aktiv bleiben und für einen relativ großen Standby-Verbrauch verantwortlich sind. Wenn das Gerät also gerade nicht genutzt wird kann der smartMode auch deaktiviert werden.
-
@maxclaudi smartMode sorgt aber auch dafür das die Wechselrichter aktiv bleiben und für einen relativ großen Standby-Verbrauch verantwortlich sind. Wenn das Gerät also gerade nicht genutzt wird kann der smartMode auch deaktiviert werden.
@nograx sagte in Test Adapter Zendure Solarflow:
@maxclaudi smartMode sorgt aber auch dafür das die Wechselrichter aktiv bleiben und für einen relativ großen Standby-Verbrauch verantwortlich sind. Wenn das Gerät also gerade nicht genutzt wird kann der smartMode auch deaktiviert werden.
Richtig.
Was „relativ groß“ ist, ist Interpretationssache, besonders wenn das Gerät gerade nicht aktiv genutzt wird.Selbst Hoymiles-Wechselrichter und nahezu alle anderen Wechselrichter bleiben nachts aktiv (wenn sie nicht vom Stromnetz getrennt werden) und haben ebenfalls einen gewissen Standby-Verbrauch.
Für mich persönlich ist Flash ein zu hohes Gut, um unnötige Schreibzugriffe zu riskieren.
Edit / PS:
In dem Moment, in dem smartMode: 0 gesetzt wird, werden dann die aktuellen Parameter in den Flash geschrieben – oder nicht?Der Wechsel von smartMode: 0 zu smartMode: 1 macht das meines Wissens nicht.
Dabei bleiben die alten Werte im Flash erhalten und neue Änderungen landen nur im RAM.Oder wie siehst Du das?