Skip to content

Solaredge: use modbus bulk reader for bat#3198

Draft
LKuemmel wants to merge 3 commits intomasterfrom
feature_solaredge_bat_modbus_bulk_reader
Draft

Solaredge: use modbus bulk reader for bat#3198
LKuemmel wants to merge 3 commits intomasterfrom
feature_solaredge_bat_modbus_bulk_reader

Conversation

@LKuemmel
Copy link
Contributor

Bei #3166 ist mir aufgefallen, dass der SolarEdge-Speicher keine Register-Blöcke ausliest. SolarEdge empfiehlt das aber.

@LKuemmel
Copy link
Contributor Author

@cr0i Magst Du Dir die Änderung ansehen bzw vielleicht sogar den Feature-Branch testen?

@LKuemmel LKuemmel force-pushed the feature_solaredge_bat_modbus_bulk_reader branch from d53b29c to 9b2e7c6 Compare March 11, 2026 11:26
@SchaafAlexander
Copy link

Enthält es auch einen Fix für Batterie Modbus Peaks? :-)

#3113

Vielen lieben Dank

@cr0i
Copy link
Contributor

cr0i commented Mar 11, 2026

@cr0i Magst Du Dir die Änderung ansehen bzw vielleicht sogar den Feature-Branch testen?

Ich habe den Feature Branch mal ausprobiert, power und soc werden artig abgerufen.
Du hast einen Default-SoC eingebaut (50%), der immer ausgegeben wird, wenn etwas mit dem SoC nicht stimmt.
Ich dachte, die Fehlerbehandlung passiert in den übergeordneten Modulen?
So würde man ja gar nicht merken, wenn etwas nicht stimmt, da einfach ein SoC von 50% ausgegeben wird.
Ist das wirklich so gewünscht?

Die Speichersteuerung funktioniert damit noch nicht.
Es wirkt auf mich so, als wenn set_power_limit gar nicht aufgerufen wird, es gibt keine Log-Ausgabe ausgelesener Register.
Ich habe von 21:30Uhr - 21:33 Uhr auf Ladung mit 5000W gestellt:
https://paste.openwb.de/K425MyQHQJR3yxG

Ist es vielleicht das hier?
2026-03-11 21:30:24,820 - {helpermodules.changed_values_handler:134} - {ERROR:MainThread} - 'int' object is not iterable Traceback (most recent call last): File "/var/www/html/openWB/packages/helpermodules/changed_values_handler.py", line 119, in _update_value dict_prev = dict(asdict(previous_value)) TypeError: 'int' object is not iterable

@LKuemmel LKuemmel force-pushed the feature_solaredge_bat_modbus_bulk_reader branch from dcb6ddf to 15951ab Compare March 12, 2026 07:22
@LKuemmel
Copy link
Contributor Author

Danke für Deine Rückmeldung.

Ich habe den Feature Branch mal ausprobiert, power und soc werden artig abgerufen. Du hast einen Default-SoC eingebaut (50%), der immer ausgegeben wird, wenn etwas mit dem SoC nicht stimmt. Ich dachte, die Fehlerbehandlung passiert in den übergeordneten Modulen? So würde man ja gar nicht merken, wenn etwas nicht stimmt, da einfach ein SoC von 50% ausgegeben wird. Ist das wirklich so gewünscht?

Nein, das ist nicht gewollt. Ich habe nicht gesehen, das Copilot das beim Review eingebaut hat. Ist entfernt.

Die Speichersteuerung funktioniert damit noch nicht. Es wirkt auf mich so, als wenn set_power_limit gar nicht aufgerufen wird, es gibt keine Log-Ausgabe ausgelesener Register. Ich habe von 21:30Uhr - 21:33 Uhr auf Ladung mit 5000W gestellt: https://paste.openwb.de/K425MyQHQJR3yxG

Die Fehlerbehandlung war nicht getrennt von den IO-Modulen und das hat einen Fehler geworfen und dann wurde auch das Speicher-Limit nicht mehr gesetzt. Ich habe es korrigiert.

Ist es vielleicht das hier? 2026-03-11 21:30:24,820 - {helpermodules.changed_values_handler:134} - {ERROR:MainThread} - 'int' object is not iterable Traceback (most recent call last): File "/var/www/html/openWB/packages/helpermodules/changed_values_handler.py", line 119, in _update_value dict_prev = dict(asdict(previous_value)) TypeError: 'int' object is not iterable

Habe ich mit einem Rebase auf den Master behoben.

Würdest Du bitte nochmal probieren?

@LKuemmel
Copy link
Contributor Author

Enthält es auch einen Fix für Batterie Modbus Peaks? :-)

#3113

Vielen lieben Dank

ist in Arbeit, hat aber nichts mit dem Thema dieses PRs zu tun.

@cr0i
Copy link
Contributor

cr0i commented Mar 12, 2026

Hallo @LKuemmel ,

jetzt kommt zwar keine Fehlermeldung mehr, aber trotzdem sehe ich keine Logeinträge von set_power_limit.
Ich hatte erst Keine Speichersteuerung, dann Hausverbrauch und zuletzt auf Ladung mit 5000W gestellt:
https://paste.openwb.de/aGfMARV8wG9D23H

@LKuemmel
Copy link
Contributor Author

Für set_power_limit fehlt noch eine Fehlerbehandlung, da wird offenbar der Fehler verschluckt. Wir bauen das erst ein, dann schaue ich hier nochmal, dann ist die Fehlersuche leichter.
Vielen Dank für Deine Mitarbeit bis hierher :)

@LKuemmel LKuemmel marked this pull request as draft March 20, 2026 12:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants