To overcome the problem I wrote a couple of automations in home assistant, they are running from more then a weeks now.
The basic intention is to retain all the ESS functions, to achieve this I’m switching between ESS external control (where the multiplus goes in passthough) and ESS mode 1 depending on the situation, this way I don’t have to write the complete control loop.
There are four main conditions:
-
set multiplus to idle: when battery power is between -20 and 20 for more then 30 seconds, set ess external mode: slave 100 address 2902 value 3, and set multiplus address 38 to 0, this enable the multiplus to charge the battery if needed. But remains off otherwise.
-
set back to ESS m1 for self consuption: when power from the grid is above 100W, and battery SOC is above minimum sock battery life level (if you use battery life otherwise just minimum level) , then put back ESS in mode 1.
-
set back to ESS m1 for peak shaving: when power from the grid is above your grid limit and battery SOC is above 0%, then put back ESS in mode 1.
-
set back to ESS m1 for charging: when battery SOC is lower then minimum sock battery life level (if you use battery life otherwise just minimum level) or when grip power lower then -100 and battery lower then 95%, then put back ESS in mode 1.
During this week I didn’t noticed strange behaviours and the multiplus can finally rest when not needed.