NEWS
Test Adapter Zendure SolarFlow 6.0.0 – mit Nulleinspeisung
-
hallo
ich verwende auch diesen adapter, aber ich kann über den adapter überhaupt nichts schalten am zendure, obwohl alle geräte gefunden werden und auch die statusse korrekt dargestellt werden im iobroker -
ich möchte das system lokal steuern und nicht mehr über hems
denn diese automatische kalibierung am abend nervt -
ich möchte das system lokal steuern und nicht mehr über hems
denn diese automatische kalibierung am abend nervt@SpeedyBlade Dann solltest du im ersten Schritt das HEMS / Automatisierung in der offiziellen App abschalten. Sonst geht keine Steuerung. Dann kannst du wenn du z.B. deinen Shelly (oder welchem Smart Meter du auch benutzt) im ioBroker siehst auch die offizielle Automatisierung vom Adapter nutzen. Die läuft jetzt schon bei knapp 30 Personen sehr stabil.
Einrichtung grob ist die Automatisierung im Adapter einschalten, Smart Meter Datenpunkt auswählen und dann im Objektbaum die Automatisierung aktivieren. Ausführlicher wird es in der Readme beschrieben.
Wenn du uns noch mehr Infos gibst können wir dir hier auch einiges besser helfen.
-
@SpeedyBlade Dann solltest du im ersten Schritt das HEMS / Automatisierung in der offiziellen App abschalten. Sonst geht keine Steuerung. Dann kannst du wenn du z.B. deinen Shelly (oder welchem Smart Meter du auch benutzt) im ioBroker siehst auch die offizielle Automatisierung vom Adapter nutzen. Die läuft jetzt schon bei knapp 30 Personen sehr stabil.
Einrichtung grob ist die Automatisierung im Adapter einschalten, Smart Meter Datenpunkt auswählen und dann im Objektbaum die Automatisierung aktivieren. Ausführlicher wird es in der Readme beschrieben.
Wenn du uns noch mehr Infos gibst können wir dir hier auch einiges besser helfen.
@nograx
HEMS ist mittlerweile deaktiviert 👍🏼
Nutze es nur mehr lokal
Habe die Automation aus dem Adapter aktivert... Besten Dank
Läuft soweit ganz gut, allerdings habe ich noch Anliegen hierzu.
Ich habe drei solarflow 2400 mit ab3000x im Einsatz. Die erzeugende Energie erfolgt über eine separate komplette pv-anlage am Dach.
Somit sind die AC Speicher auch wirklich reine AC Speicher.
Was mir gestern aufgefallen ist, dass ein Speicher den anderen geladen hat, obwohl keine Energie vom Dach kam.
Hier wäre es gut wenn man noch folgendes in die Automation mit einfügen könnte.
Man bräuchte den Wert der pV Anlage der aktuell erzeugt wird, ist dieser kleiner Wert X, dann soll AC Ladung gesperrt werden. Ist der Wert der pv-anlage über Wert X, dann soll AC Ladung wieder aktiv werden. Beides soll jedoch mit einer Zeit hinterlegt werden können. Z.b mindestens 1,2,3,5 Minuten oder ähnliches.
Ich hoffe das war nun verständlich erklärt 😬[ { "id": "zendure_pv_trigger_in", "type": "ioBroker in", "z": "tab_zendure_automation", "name": "PV-Gesamtwert einlesen", "topic": "zendure-solarflow.0.adapterAutomation.totalSolarPower", "payloadType": "value", "onlyack": true, "func": "all", "gap": "", "x": 160, "y": 140, "wires": [ [ "zendure_logic_function" ] ] }, { "id": "zendure_logic_function", "type": "function", "z": "tab_zendure_automation", "name": "60s Timer & Hysterese", "func": "let aktuellePV = msg.payload;\n\n// Zustände aus dem Node-Speicher holen oder initialisieren\nlet statusAktuell = context.get(\"statusAktuell\") || false; // true = Laden erlaubt, false = gesperrt\nlet timerTyp = context.get(\"timerTyp\") || null; // \"ON\" oder \"OFF\"\nlet timerStart = context.get(\"timerStart\") || 0; // Zeitstempel\n\nlet jetzt = Date.now();\nlet wartezeit = 60000; // 60 Sekunden in Millisekunden\n\n// --- FALL 1: PV ist hoch genug (Einschalten prüfen) ---\nif (aktuellePV >= 150) {\n if (!statusAktuell) { // Wenn aktuell noch gesperrt ist\n if (timerTyp !== \"ON\") {\n // Start des 60s-Timers für das Einschalten\n context.set(\"timerTyp\", \"ON\");\n context.set(\"timerStart\", jetzt);\n } else if (jetzt - timerStart >= wartezeit) {\n // 60 Sekunden sind stabil abgelaufen!\n statusAktuell = true;\n context.set(\"statusAktuell\", statusAktuell);\n context.set(\"timerTyp\", null); // Timer zurücksetzen\n msg.payload = true;\n return msg;\n }\n }\n else {\n // Zustand ist bereits ON, eventuellen OFF-Timer löschen\n context.set(\"timerTyp\", null);\n }\n}\n\n// --- FALL 2: PV ist zu niedrig (Ausschalten prüfen) ---\nelse if (aktuellePV <= 50) {\n if (statusAktuell) { // Wenn aktuell noch Laden erlaubt ist\n if (timerTyp !== \"OFF\") {\n // Start des 60s-Timers für das Ausschalten\n context.set(\"timerTyp\", \"OFF\");\n context.set(\"timerStart\", jetzt);\n } else if (jetzt - timerStart >= wartezeit) {\n // 60 Sekunden sind stabil abgelaufen!\n statusAktuell = false;\n context.set(\"statusAktuell\", statusAktuell);\n context.set(\"timerTyp\", null); // Timer zurücksetzen\n msg.payload = false;\n return msg;\n }\n }\n else {\n // Zustand ist bereits OFF, eventuellen ON-Timer löschen\n context.set(\"timerTyp\", null);\n }\n}\n\n// --- FALL 3: PV liegt im Hysterese-Bereich (51 - 149W) ---\nelse {\n // Wenn der Wert dazwischen liegt, wird jeder laufende Timer abgebrochen\n context.set(\"timerTyp\", null);\n}\n\n// Wenn die Bedingung (noch) nicht erfüllt ist, blockieren wir die Nachricht\nreturn null;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 420, "y": 140, "wires": [ [ "zendure_out_device_1", "zendure_out_device_2", "zendure_out_device_3" ] ] }, { "id": "zendure_out_device_1", "type": "ioBroker out", "z": "tab_zendure_automation", "name": "Speicher 1: acChargingAllowed", "topic": "zendure-solarflow.0.[Seriennummer_A].adapterAutomation.acChargingAllowed", "ackval": "false", "autoCreate": "false", "stateId": "", "stateName": "", "stateType": "", "stateUnit": "", "x": 710, "y": 80, "wires": [] }, { "id": "zendure_out_device_2", "type": "ioBroker out", "z": "tab_zendure_automation", "name": "Speicher 2: acChargingAllowed", "topic": "zendure-solarflow.0.[Seriennummer_B].adapterAutomation.acChargingAllowed", "ackval": "false", "autoCreate": "false", "stateId": "", "stateName": "", "stateType": "", "stateUnit": "", "x": 710, "y": 140, "wires": [] }, { "id": "zendure_out_device_3", "type": "ioBroker out", "z": "tab_zendure_automation", "name": "Speicher 3: acChargingAllowed", "topic": "zendure-solarflow.0.[Seriennummer_C].adapterAutomation.acChargingAllowed", "ackval": "false", "autoCreate": "false", "stateId": "", "stateName": "", "stateType": "", "stateUnit": "", "x": 710, "y": 200, "wires": [] } ] -
@nograx
HEMS ist mittlerweile deaktiviert 👍🏼
Nutze es nur mehr lokal
Habe die Automation aus dem Adapter aktivert... Besten Dank
Läuft soweit ganz gut, allerdings habe ich noch Anliegen hierzu.
Ich habe drei solarflow 2400 mit ab3000x im Einsatz. Die erzeugende Energie erfolgt über eine separate komplette pv-anlage am Dach.
Somit sind die AC Speicher auch wirklich reine AC Speicher.
Was mir gestern aufgefallen ist, dass ein Speicher den anderen geladen hat, obwohl keine Energie vom Dach kam.
Hier wäre es gut wenn man noch folgendes in die Automation mit einfügen könnte.
Man bräuchte den Wert der pV Anlage der aktuell erzeugt wird, ist dieser kleiner Wert X, dann soll AC Ladung gesperrt werden. Ist der Wert der pv-anlage über Wert X, dann soll AC Ladung wieder aktiv werden. Beides soll jedoch mit einer Zeit hinterlegt werden können. Z.b mindestens 1,2,3,5 Minuten oder ähnliches.
Ich hoffe das war nun verständlich erklärt 😬[ { "id": "zendure_pv_trigger_in", "type": "ioBroker in", "z": "tab_zendure_automation", "name": "PV-Gesamtwert einlesen", "topic": "zendure-solarflow.0.adapterAutomation.totalSolarPower", "payloadType": "value", "onlyack": true, "func": "all", "gap": "", "x": 160, "y": 140, "wires": [ [ "zendure_logic_function" ] ] }, { "id": "zendure_logic_function", "type": "function", "z": "tab_zendure_automation", "name": "60s Timer & Hysterese", "func": "let aktuellePV = msg.payload;\n\n// Zustände aus dem Node-Speicher holen oder initialisieren\nlet statusAktuell = context.get(\"statusAktuell\") || false; // true = Laden erlaubt, false = gesperrt\nlet timerTyp = context.get(\"timerTyp\") || null; // \"ON\" oder \"OFF\"\nlet timerStart = context.get(\"timerStart\") || 0; // Zeitstempel\n\nlet jetzt = Date.now();\nlet wartezeit = 60000; // 60 Sekunden in Millisekunden\n\n// --- FALL 1: PV ist hoch genug (Einschalten prüfen) ---\nif (aktuellePV >= 150) {\n if (!statusAktuell) { // Wenn aktuell noch gesperrt ist\n if (timerTyp !== \"ON\") {\n // Start des 60s-Timers für das Einschalten\n context.set(\"timerTyp\", \"ON\");\n context.set(\"timerStart\", jetzt);\n } else if (jetzt - timerStart >= wartezeit) {\n // 60 Sekunden sind stabil abgelaufen!\n statusAktuell = true;\n context.set(\"statusAktuell\", statusAktuell);\n context.set(\"timerTyp\", null); // Timer zurücksetzen\n msg.payload = true;\n return msg;\n }\n }\n else {\n // Zustand ist bereits ON, eventuellen OFF-Timer löschen\n context.set(\"timerTyp\", null);\n }\n}\n\n// --- FALL 2: PV ist zu niedrig (Ausschalten prüfen) ---\nelse if (aktuellePV <= 50) {\n if (statusAktuell) { // Wenn aktuell noch Laden erlaubt ist\n if (timerTyp !== \"OFF\") {\n // Start des 60s-Timers für das Ausschalten\n context.set(\"timerTyp\", \"OFF\");\n context.set(\"timerStart\", jetzt);\n } else if (jetzt - timerStart >= wartezeit) {\n // 60 Sekunden sind stabil abgelaufen!\n statusAktuell = false;\n context.set(\"statusAktuell\", statusAktuell);\n context.set(\"timerTyp\", null); // Timer zurücksetzen\n msg.payload = false;\n return msg;\n }\n }\n else {\n // Zustand ist bereits OFF, eventuellen ON-Timer löschen\n context.set(\"timerTyp\", null);\n }\n}\n\n// --- FALL 3: PV liegt im Hysterese-Bereich (51 - 149W) ---\nelse {\n // Wenn der Wert dazwischen liegt, wird jeder laufende Timer abgebrochen\n context.set(\"timerTyp\", null);\n}\n\n// Wenn die Bedingung (noch) nicht erfüllt ist, blockieren wir die Nachricht\nreturn null;", "outputs": 1, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 420, "y": 140, "wires": [ [ "zendure_out_device_1", "zendure_out_device_2", "zendure_out_device_3" ] ] }, { "id": "zendure_out_device_1", "type": "ioBroker out", "z": "tab_zendure_automation", "name": "Speicher 1: acChargingAllowed", "topic": "zendure-solarflow.0.[Seriennummer_A].adapterAutomation.acChargingAllowed", "ackval": "false", "autoCreate": "false", "stateId": "", "stateName": "", "stateType": "", "stateUnit": "", "x": 710, "y": 80, "wires": [] }, { "id": "zendure_out_device_2", "type": "ioBroker out", "z": "tab_zendure_automation", "name": "Speicher 2: acChargingAllowed", "topic": "zendure-solarflow.0.[Seriennummer_B].adapterAutomation.acChargingAllowed", "ackval": "false", "autoCreate": "false", "stateId": "", "stateName": "", "stateType": "", "stateUnit": "", "x": 710, "y": 140, "wires": [] }, { "id": "zendure_out_device_3", "type": "ioBroker out", "z": "tab_zendure_automation", "name": "Speicher 3: acChargingAllowed", "topic": "zendure-solarflow.0.[Seriennummer_C].adapterAutomation.acChargingAllowed", "ackval": "false", "autoCreate": "false", "stateId": "", "stateName": "", "stateType": "", "stateUnit": "", "x": 710, "y": 200, "wires": [] } ]@SpeedyBlade Exakt das was du da beschreibst dürfte eigentlich nicht passieren - lediglich wenn der Lade-Keep-Alive gehalten wird (5 Minuten) kann es temporär dazu kommen ODER wenn deine Verbindung schlecht ist und das Kommando zur Leistungsreduktion beim Gerät nicht sauber ankommt (da bitte dann mal setDeviceAutomationInOutLimit mit den aktuellen Werten vergleichen). Letzteres sollte aber auch automatisch innerhalb einer Minute korrigiert werden in dem das letzte Kommando noch einmal geschickt wird.
Es wäre super wenn du mir dazu den Adapter in den Debug Modus schaltest und dann ein Log zukommen lassen könntest sofern das noch mal passiert.
-
@SpeedyBlade Exakt das was du da beschreibst dürfte eigentlich nicht passieren - lediglich wenn der Lade-Keep-Alive gehalten wird (5 Minuten) kann es temporär dazu kommen ODER wenn deine Verbindung schlecht ist und das Kommando zur Leistungsreduktion beim Gerät nicht sauber ankommt (da bitte dann mal setDeviceAutomationInOutLimit mit den aktuellen Werten vergleichen). Letzteres sollte aber auch automatisch innerhalb einer Minute korrigiert werden in dem das letzte Kommando noch einmal geschickt wird.
Es wäre super wenn du mir dazu den Adapter in den Debug Modus schaltest und dann ein Log zukommen lassen könntest sofern das noch mal passiert.
@nograx den Log kann ich gerne raussuchen am späteren Nachmittag.
Die Verbindung kann ich definitiv ausschließen, die ist und war immer perfekt. Access Point steht 2m daneben und hatte hier noch nie Unterbrüche.
Wäre mein Vorschlag nicht dennoch integrierbar?
So könnte man definitiv das AC Laden sperren/freigeben? -
@nograx den Log kann ich gerne raussuchen am späteren Nachmittag.
Die Verbindung kann ich definitiv ausschließen, die ist und war immer perfekt. Access Point steht 2m daneben und hatte hier noch nie Unterbrüche.
Wäre mein Vorschlag nicht dennoch integrierbar?
So könnte man definitiv das AC Laden sperren/freigeben? -
@SpeedyBlade Als zusätzlich Option wäre es vermutlich ganz hilfreich. Baue ich gerne kurzfristig mit ein.
Hast du noch irgendwelche anderen Speicher im Einsatz die hier gestört haben könnten?
@nograx nein, keine weiteren Speicher im Einsatz
Log ist leider nicht mehr verfügbar von gestern.
hab jetzt aber den debug aktiviert vom adapter, lass es jetzt erstmal einige stunden laufen, dann sende ich es dir morgen/übermorgen. Aktuell konnte ich keinen Fehler feststellen, aber ich schaue auch nicht alle paar Minuten auf die App bzw. die Daten ;)besten Dank für den Einsatz 👍
Wenn ich sonst noch was testen soll, lass es mich wissen.
Bei mir sind die vollen 3x2400W im Einsatz und freigegeben von Zendure, falls es da nen Test oder Infos brauchtwas passiert eigentlich, wenn der ioBroker oder der Adapter offline geht?
wird dann der Speicher weder geladen, noch entladen? -
@nograx nein, keine weiteren Speicher im Einsatz
Log ist leider nicht mehr verfügbar von gestern.
hab jetzt aber den debug aktiviert vom adapter, lass es jetzt erstmal einige stunden laufen, dann sende ich es dir morgen/übermorgen. Aktuell konnte ich keinen Fehler feststellen, aber ich schaue auch nicht alle paar Minuten auf die App bzw. die Daten ;)besten Dank für den Einsatz 👍
Wenn ich sonst noch was testen soll, lass es mich wissen.
Bei mir sind die vollen 3x2400W im Einsatz und freigegeben von Zendure, falls es da nen Test oder Infos brauchtwas passiert eigentlich, wenn der ioBroker oder der Adapter offline geht?
wird dann der Speicher weder geladen, noch entladen?@SpeedyBlade In der Version 6.2.0 ist der Schalter "disableAcCharging" mit drin.
Ja wenn ioBroker offline geht funktioniert logischerweise die Steuerung nicht mehr. Wenn du zenSDK aktiviert lässt erfolgt die Steuerung lokal über dein Netzwerk, das bedeutet wenn die Zendure Cloud offline ist funktioniert es weiter. Jetzt darfst du entscheiden welche Variante dir sicherer erscheint

-
@SpeedyBlade In der Version 6.2.0 ist der Schalter "disableAcCharging" mit drin.
Ja wenn ioBroker offline geht funktioniert logischerweise die Steuerung nicht mehr. Wenn du zenSDK aktiviert lässt erfolgt die Steuerung lokal über dein Netzwerk, das bedeutet wenn die Zendure Cloud offline ist funktioniert es weiter. Jetzt darfst du entscheiden welche Variante dir sicherer erscheint

@nograx der Version 6.2.0 ist der Schalter "disableAcCharging" mit drin. => Genau deswegen mein Vorschlag mit dem sperren/aktivieren 😉
Wenn du zenSDK aktiviert ... => Wo genau soll dies eingestellt werden? Im Adapter oder in der zendure App? Ich bin Freund der lokalen Welt, daher stellt sich für Frage der Cloud für mich nicht, wenn es eine lokale Möglichkeit gibt 😜
-
@nograx der Version 6.2.0 ist der Schalter "disableAcCharging" mit drin. => Genau deswegen mein Vorschlag mit dem sperren/aktivieren 😉
Wenn du zenSDK aktiviert ... => Wo genau soll dies eingestellt werden? Im Adapter oder in der zendure App? Ich bin Freund der lokalen Welt, daher stellt sich für Frage der Cloud für mich nicht, wenn es eine lokale Möglichkeit gibt 😜
-
@SpeedyBlade disableAcCharging ist der Schalter den ich für dich jetzt eingebaut habe.
zenSDK aktivierst du in den Einstellungen vom Adapter (ist standardmäßig an, da klare Empfehlung).
-
Hallo @nograx , erst mal vielen Dank für den Adapter zur lokale Steuerung. Ich habe den mit viel Interesse jetzt mal installiert.
Mein Setup
3x Solarflow 4000 Mix Pro
1x 3ct-S
1x Tibber PulseIch habe den Adapter heute jetzt mal aktiviert und als Datenquelle für Überschuss/Bezug den Tibber Pulse in Deinem Adapter angegeben.
Wenn ich mir jetzt mal eine Stunde ansehe, wie die Regelung funktioniert (ich war nicht zuhause und der Stromverbrauch war sehr gleichmäßig bei ca. 450W), dann kann man erkennen, dass die Regelung in gleichmäßigen Abständen anfängt aufzuschwingen. Lass mich wissen, falls Du weitere Informationen benötigst.

-
@SpeedyBlade die neue Version sollte spätestens morgen im Beta Kanal verfügbar sein.
Das 1. Häkchen aktiviert Berechnungen für die Tageswerte von Solarertrag etc.
Das 2. sorgt dafür das die Entladung gestoppt wird wenn die Batteriespannung zu niedrig ist. Bei Lfp Batterien hat man oft das Problem das die % Angabe mehr oder weniger berechnet und geschätzt ist. Daher müssen sie sich gelegentlich „kalibriert“ werden. Es kann durchaus sein das man denkt man hat noch 30% aber eigentlich ist der Akku leer, wenn man die Spannung der Batterie prüft kann man aber ein zu tiefes entladen verhindern.
-
Hallo @nograx , erst mal vielen Dank für den Adapter zur lokale Steuerung. Ich habe den mit viel Interesse jetzt mal installiert.
Mein Setup
3x Solarflow 4000 Mix Pro
1x 3ct-S
1x Tibber PulseIch habe den Adapter heute jetzt mal aktiviert und als Datenquelle für Überschuss/Bezug den Tibber Pulse in Deinem Adapter angegeben.
Wenn ich mir jetzt mal eine Stunde ansehe, wie die Regelung funktioniert (ich war nicht zuhause und der Stromverbrauch war sehr gleichmäßig bei ca. 450W), dann kann man erkennen, dass die Regelung in gleichmäßigen Abständen anfängt aufzuschwingen. Lass mich wissen, falls Du weitere Informationen benötigst.

@Ralf77 liest du den Pulse lokal aus oder über die Tibber API? Glaube hier liegt ein starkes Timing Problem vor und das Script sieht nicht den richtigen Wert auf dem Datenpunkt der wirklich bei dir der Realität entspricht. Soweit ich das im Kopf habe kann beim Pulse der Wert von Lesekopf 5-10 Sekunden hinterherlaufen was das Hochschaukeln durchaus erklärt.
Kannst du den Adapter wohl mal in den Debug Modus setzen und mir das Log von ca 30 Minuten mal zuschicken?
-
@Ralf77 liest du den Pulse lokal aus oder über die Tibber API? Glaube hier liegt ein starkes Timing Problem vor und das Script sieht nicht den richtigen Wert auf dem Datenpunkt der wirklich bei dir der Realität entspricht. Soweit ich das im Kopf habe kann beim Pulse der Wert von Lesekopf 5-10 Sekunden hinterherlaufen was das Hochschaukeln durchaus erklärt.
Kannst du den Adapter wohl mal in den Debug Modus setzen und mir das Log von ca 30 Minuten mal zuschicken?
@nograx mache ich morgen gerne.
Ich lese die Daten lokal aus. Deshalb sollte es eigentlich problemlos funktionieren. Ich habe parallel auch die Daten, welche ich vom 3ct-s habe verwendet, da habe ich die Netzeinspeisung berechnet. Damit hatte ich aber auch das Problem.
-
@nograx mache ich morgen gerne.
Ich lese die Daten lokal aus. Deshalb sollte es eigentlich problemlos funktionieren. Ich habe parallel auch die Daten, welche ich vom 3ct-s habe verwendet, da habe ich die Netzeinspeisung berechnet. Damit hatte ich aber auch das Problem.
@Ralf77 Ich habe eine zeitlang auch mal den Pulse lokal ausgelesen, was bei mir aber mehr schlecht als recht lief.
Stell doch mal das Polling vom 3ct im Gerätebaum unter Settings ggf. auf 1s oder 2s und probiere es damit noch mal.
So oder so wäre ein Log sehr hilfreich, ggf. finden wir dafür eine Lösung.
-
@Ralf77 Ich habe eine zeitlang auch mal den Pulse lokal ausgelesen, was bei mir aber mehr schlecht als recht lief.
Stell doch mal das Polling vom 3ct im Gerätebaum unter Settings ggf. auf 1s oder 2s und probiere es damit noch mal.
So oder so wäre ein Log sehr hilfreich, ggf. finden wir dafür eine Lösung.
@nograx sobald ich den Log Downloaden möchte stürzt mein ioBroker immer ab. Keine Ahnung wo das Problem liegt.
Prinzipiell läuft die Regelung auch bei 1s Polling nicht sauber.
Zudem passt auch die Aufteilung der Einspeisung nicht entsprechend des SOCs. Die Last wurde z.B. aus dem Speicher mit dem geringsten SOC und dem höchsten SOC bedient…der Speicher mit dem mittleren SOC wurde in den Standby gesetzt. -
@SpeedyBlade die neue Version sollte spätestens morgen im Beta Kanal verfügbar sein.
Das 1. Häkchen aktiviert Berechnungen für die Tageswerte von Solarertrag etc.
Das 2. sorgt dafür das die Entladung gestoppt wird wenn die Batteriespannung zu niedrig ist. Bei Lfp Batterien hat man oft das Problem das die % Angabe mehr oder weniger berechnet und geschätzt ist. Daher müssen sie sich gelegentlich „kalibriert“ werden. Es kann durchaus sein das man denkt man hat noch 30% aber eigentlich ist der Akku leer, wenn man die Spannung der Batterie prüft kann man aber ein zu tiefes entladen verhindern.
Das 1. Häkchen aktiviert Berechnungen für die Tageswerte von Solarertrag etc.
Das 2. sorgt dafür das die Entladung gestoppt wird wenn die Batteriespannung zu niedrig ist. Bei Lfp Batterien hat man oft das Problem das die % Angabe mehr oder weniger berechnet und geschätzt ist. Daher müssen sie sich gelegentlich „kalibriert“ werden. Es kann durchaus sein das man denkt man hat noch 30% aber eigentlich ist der Akku leer, wenn man die Spannung der Batterie prüft kann man aber ein zu tiefes entladen verhindern.
zu 1. habe ich aktiviert, kann da aber nichts finden, wo ich meine externe PV hinterlegen kann. Oder bezieht sich dies nur auf Anlagen von Zendure die einen DC Eingang haben?
zu 2. LFP sind ja LiFePO4, welche eigentlich alle bei Zendure sind. Macht es dann nicht Sinn diese Funktion standardmäßig aktiv zu haben?
-
dann habe ich gestern noch etwas gemerkt
obwohl noch über 20% in den Speichern war, hat er dennoch nicht mehr mit der vollen Leistung das Netz bestromt. Stattdessen hat er die Differenz (im Screenshot) von 183W vom Netz bezogen.
Wieso wurde hier nicht die komplette Leistung aus den Speichern gezogen?
Min/Max Soc sind bei 10-98%
2026-11-03 23:48:00.843 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 92 (ack: false)! 2026-11-03 23:48:00.881 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=92 rawHomeUsage=482.0 homeUsageAvg=478.4 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=88.4 piCorrection=19.6 2026-11-03 23:48:00.881 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=498.0 excessFeedIn=-108.0 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:48:10.848 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 91 (ack: false)! 2026-11-03 23:48:10.888 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=91 rawHomeUsage=481.0 homeUsageAvg=479.2 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=89.2 piCorrection=19.7 2026-11-03 23:48:10.888 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=498.9 excessFeedIn=-108.9 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:48:20.845 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 87 (ack: false)! 2026-11-03 23:48:20.881 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=87 rawHomeUsage=477.0 homeUsageAvg=478.5 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=88.5 piCorrection=19.5 2026-11-03 23:48:20.881 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=498.1 excessFeedIn=-108.1 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:48:30.846 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 89 (ack: false)! 2026-11-03 23:48:30.884 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=89 rawHomeUsage=479.0 homeUsageAvg=478.7 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=88.7 piCorrection=19.6 2026-11-03 23:48:30.885 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=498.3 excessFeedIn=-108.3 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:48:40.849 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 88 (ack: false)! 2026-11-03 23:48:40.907 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=88 rawHomeUsage=478.0 homeUsageAvg=478.5 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=88.5 piCorrection=19.6 2026-11-03 23:48:40.908 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=498.0 excessFeedIn=-108.0 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:48:50.882 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 85 (ack: false)! 2026-11-03 23:48:50.921 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=85 rawHomeUsage=475.0 homeUsageAvg=477.4 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=87.4 piCorrection=19.4 2026-11-03 23:48:50.921 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=496.8 excessFeedIn=-106.8 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:49:00.846 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 87 (ack: false)! 2026-11-03 23:49:00.883 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=87 rawHomeUsage=477.0 homeUsageAvg=477.3 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=87.3 piCorrection=19.4 2026-11-03 23:49:00.883 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=496.7 excessFeedIn=-106.7 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:49:10.847 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 108 (ack: false)! 2026-11-03 23:49:10.898 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=108 rawHomeUsage=498.0 homeUsageAvg=483.5 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=93.5 piCorrection=20.3 2026-11-03 23:49:10.899 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=503.8 excessFeedIn=-113.8 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:49:20.845 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 133 (ack: false)! 2026-11-03 23:49:20.883 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=133 rawHomeUsage=523.0 homeUsageAvg=495.4 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=105.4 piCorrection=22.7 2026-11-03 23:49:20.884 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=518.1 excessFeedIn=-128.1 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:49:30.867 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 133 (ack: false)! 2026-11-03 23:49:40.848 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 125 (ack: false)! 2026-11-03 23:49:40.881 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=125 rawHomeUsage=515.0 homeUsageAvg=501.3 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=111.3 piCorrection=23.0 2026-11-03 23:49:40.881 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=524.2 excessFeedIn=-134.2 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:49:50.847 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 77 (ack: false)! 2026-11-03 23:49:50.885 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=77 rawHomeUsage=467.0 homeUsageAvg=491.0 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=101.0 piCorrection=20.9 2026-11-03 23:49:50.885 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=511.9 excessFeedIn=-121.9 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:50:00.848 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 133 (ack: false)! 2026-11-03 23:50:00.885 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=133 rawHomeUsage=523.0 homeUsageAvg=500.6 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=110.6 piCorrection=22.9 2026-11-03 23:50:00.885 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=523.5 excessFeedIn=-133.5 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:50:10.859 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 132 (ack: false)! 2026-11-03 23:50:10.939 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=132 rawHomeUsage=522.0 homeUsageAvg=507.0 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=117.0 piCorrection=23.8 2026-11-03 23:50:10.939 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=530.9 excessFeedIn=-140.9 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:50:20.850 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 47 (ack: false)! 2026-11-03 23:50:20.875 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=47 rawHomeUsage=437.0 homeUsageAvg=486.0 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=96.0 piCorrection=19.6 2026-11-03 23:50:20.876 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=505.7 excessFeedIn=-115.7 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:50:30.851 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 131 (ack: false)! 2026-11-03 23:50:30.881 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=131 rawHomeUsage=521.0 homeUsageAvg=496.5 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=106.5 piCorrection=22.3 2026-11-03 23:50:30.881 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=518.8 excessFeedIn=-128.8 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:50:40.866 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 122 (ack: false)! 2026-11-03 23:50:40.898 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=122 rawHomeUsage=512.0 homeUsageAvg=501.2 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=111.2 piCorrection=23.0 2026-11-03 23:50:40.899 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=524.1 excessFeedIn=-134.1 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:50:50.884 - [34mdebug[39m: zendure-solarflow.0 (23402) [onAutomationTriggerStateChange] Automation trigger state '0_userdata.0.EcoTracker.power' changed to 127 (ack: false)! 2026-11-03 23:50:50.958 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Feed-in: grid=127 rawHomeUsage=517.0 homeUsageAvg=505.9 step=false currentFeedIn=390 actualFeedIn=390 expectedGrid=115.9 piCorrection=23.7 2026-11-03 23:50:50.959 - [34mdebug[39m: zendure-solarflow.0 (23402) [adapterAutomation] Allocation: piAdjustedHomeUsage=529.6 excessFeedIn=-139.6 inputDevices=Solarflow 2400 AC:130,Solarflow 2400 AC:130,Solarflow 2400 AC:130 2026-11-03 23:50:51.122 - [31merror[39m: node-red.0 (30254) Node-RED: 3 Nov 23:50:51 - [error] [http request:Deye Status abrufen] RequestError: connect EHOSTUNREACH 192.168.0.186:80 at ClientRequest.<anonymous> (file:///opt/iobroker/node_modules/got/dist/source/core/index.js:790:107) at Object.onceWrapper (node:events:633:26) at ClientRequest.emit (node:events:530:35) at ClientRequest.emit (node:domain:489:12) at emitErrorEvent (node:_http_client:104:11) at Socket.socketErrorListener (node:_http_client:518:5) at Socket.emit (node:events:518:28) at Socket.emit (node:domain:489:12) at emitErrorNT (node:internal/streams/destroy:170:8) at emitErrorCloseNT (node:internal/streams/destroy:129:3) at process.processTicksAndRejections (node:internal/process/task_queues:90:21) at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1636:16) 2026-11-
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

