Thanks, been using Dbus-spy to check on what’s going on…
Found where the 52.5V limit is coming from:
in DVCCL.py in the folder there is a ‘fix’ for a Pylontech battery - or more properly several fixes.
However, the code can only properly differentiate between a 15 and 16 cell Pylontech battery, and not necessarily when other cells are used and the BMS tries to emulates a Pylontech battery.
so the problem is here that for a 16 cell battery, the CVL can drop below 55V -at least for my battery, and the code is assuming that the battery is now a 15 cell battery.
also the default charge voltage is set to 52.5V, which is not useful.
Whilst Pylontech do fit 15 cells into their 48V batteries, I’m using a system based on 8 cell 24V batteries, so 2 in series give me 16 cells - this is a nominal 52.8V, and max 56.8V, well within the capabilities of a 48V system, designed for max Voltage of 62 - 63V.
So it looks like this fix needs a review. Also perhaps the CAN protocol should include a ‘tweak’ for indicating No of cells in series…??
Fixed the default voltage from 52.5 to 52.8 - this is still safe for 15 cell batteries, and the ‘if charge voltage > 55’ to if ‘charge voltage >=53.6’ and that seems to have fixed the immediate problem. However, this won’t survive an update without having to be fixed again.
I think that Pylontech also do make the 16 cell units, but these are 52V batteries, rather than 48v?