Battery discharge with maximum power to the grid on CVL change from absorption to float

Hello Guy,

Thank you very much for your answer, I was just following this issue because unfortunately I have a similar problem on a different setup so I really think their is an issue (multiple actually) also on the Victron side and in my case the behavior is even more strange.

My system configuration:
3 x MultiPlus 5000 configured as three phase system with ESS (Absorption 55.2V, Float 55V - normally it should be 53.6V, but issue 1 is making this impossible)
3 x SmartSolar MPPT 150/45
3 x LiFePo (EVE MB31, 16S3P) each case with JK BMS, RS485 communication between BMS’s, CAN communication to Cerbo for master BMS, configured with Victron CAN protocol on BMS side
1 x Cerbo
1 x SmartShunt

All the BMS values are visible in console and VRM (CVL, CCL, DCL), all communication is working, no issues on this side. I can confirm that the same values from BMS correspond to values visible in console and VRM.
With DVCC or without, the system behavior is similar, but for the following lets just say DVCC in on. Battery monitor set to JK BMS and in DVCC the controlling BMS is set to JK BMS.

Issues:

  1. Multi is not able to fallow absorption to float CVL change and IS DISCHARGING MY BATTERYS TO GRID WITH MAXIMUM POWER FROM 55.2V (absorption) to 52.5V just ignoring float CVL from BMS (55V or 53.6V). I have NO setting for 52.5V, normally Multi should be in Bulk state until absorption voltage (55.2V) and after absorption (fix 1h or dynamic 2h) remain at float voltage (55V, normally at 53.6V) until discharge. Regardless that BMS is setting the CVL correctly to 55.2V (absorption) and 55V or 53.6V float, when Multi detects CVL change from 55.2V to 55V or 53.6V, it starts discharging my battery with maximum power until battery voltage is 52.5V. I have no settings related to Pylontech; I have tried to set BMS to use Pylontech protocol instead of Victron CAN and the behavior is the same. Using @MikeD example, I can confirm from NodeRed that the charge voltage for multi on CVL change is automatically set to 52.5V without any reason.

  2. Regardless battery SOC, CCL and DVCC charge current, if chargers are producing 135A (3 x 45), battery is charged with 135A even at 99% until BMS stops the charge or Multi starts injecting the excess energy to grid. Issue is that chargers are NOT following CCL, just CVL witch is not normal and safe for the battery.

  3. If CVL is 55.2V, charge voltage for chargers should be 55.6V (CVL + 0.4V), but this is NOT consistent. If I follow charge voltage for each charger, this is automatically changing from 55.2V to 55.6V and back to 55.2V without any apparent reason or change in the settings, so my guess is that multiple modules are setting this voltage in the same time and the result is just random. This is an issue because if Multi is charging up to 55.2V and chargers have charge voltage set also to 55.2V, when battery is at 55.2V the chargers will just stop producing instead of Multi injecting the surplus energy to grid.

Solution is my opinion should be the following:

  • Add the option to set from console:
    Master Absorption Voltage
    Master minimum absorption time
    Master Float Voltage

  • When set the three above all devices (multi, chargers, etc.) should ignore their internal settings and use this master settings at all times. For chargers 0.4V (or a value set by user) should be added to master voltages at all times preferably by the charger internally.

  • For current we should be able to set a curbe NOT just a value (CCL). So if I know that my battery can charge with xx A until SOC 80% and with yy A until 90%, I should be able to set this on the console, otherwise if I have chargers, I will always charge with a current higher then it should be and this is not safe at all. CCL set by BMS should generate also a curbe, but not all devices use this.

  • When CVL change is detected from absorption to float voltage (triggered by controlling BMS), Multi should export if possible ONLY the amount of power produced by the chargers not discharge the battery (battery current should be ZERO not negative)

  • When battery charge current is higher then CCL (or above curbe), Multi should export the difference if possible or chargers should reduce power if not.

Thank you very much, I hope this will help

Relocated to a new topic as it is unrelated to the specific issue it was posted on (Pylontech battery profile used on non-pylon batteries).
Kindly edit the title accordingly.

1 Like

I have a simpler configuration with just one MP 5000 and one battery with a JK BMS and no DC-coupled PV, but I also experienced the issue where the MP dumps back a lot of energy back into the grid when the BMS switches from absorption to float mode and lowers the CVL. This makes it impossible to use float mode so I switched it off. It would be nice if DESS could be a little smarter about this.

1 Like

Hi Marius, If DVCC is enabled, then this will be taken care of by the BMS communicating the max charge current and voltage to the CERBO/GX. This is a separate issue to the internal modifications that the cerbo makes to the CVL. One other quirk that I’ve found is that when charging is inhibited, this can in some cases exclude the solar chargers, which I think is incorrect. Using the 0.4V over charge for the solar charging also relies on the Multi’s having ACCURATE voltage measuring, which is usually not the case. This technique requires delicate balancing, and in this instance the Multi’s should use the BMS’s value for the battery voltage, not it’s own internal measurement {I don’t know if they do this or not, both values are available on the dbus}. It also assumes that the Multi can export a significant proportion of the excess solar power (up to 100%) - this may not be the case where the solar array is large enough to supply the 24 hour power demand, so may be 4 times the inverter power. However, this can be limited by reducing the max voltage set in the MPPT’s.

1 Like