DIY Serial battery driver for Victron GX

Aaah no, there is another reason for that. Victron likes to use names from mythology, so you have a Phoenix, a Lynx, Skylla (Water monster), Orion, Centaur, etc. These are all from Greek mythology though, while Venus is from Roman mythology. The idea was that it should spell something like Victron Energy unix-like OS, so it ended up as Venus. It was actually first made for the CCGX, the Venus-GX was the second platform, the Rpi was the third actually, with the Nanopi-based units around the same time, and the Cerbo is the most recent.

I don’t know where Cerbo is from. May be an alternate spelling or shortening of Cerberus (the three-headed dog that guards the gates of Hades).

:slight_smile:

3 Likes

MPPT’s are between the solar panels and the battery bank, has no bearing on the SOC.
SOC comes from either the:

  1. inverter - not too accurate,
  2. or the BMS - more accurate than inverter,
  3. or a BMV - the most accurate one.

See below, the comparison between a BMV SmartShunt and the new BMS SOC, damn close, but not as close as I like it as SOC drives a lot of my settings.

1 is the BMV SmartShunt SOC
2 is BMS SOC

A good BMS should do better than a BMV. For the simple reason that a good BMS knows the battery is full when one of the cells spikes up to above 3.55V-3.6V, and can reset its SOC counter. The BMV has to guess by using tail current detection bla bla bla…

But it is true that the shunt in the BMV is often a lot better than the hall sensors or whatever other tech the BMS people use to estimate their SOC. Just note that the BMV can drift too… :slight_smile:

You could, but I would not bother.
I’m planning on working on that feature once I also get a second BMS from the Group Buy.
If you have too shunts (the LLT/JBD also use a shunt vs the BMV) you will always wonder which one is correct. Just ask @TheTerribleTriplet :smiley:
The BMV might be a better quality shunt, but still I would not bother.

Yeah, did I found THAT out recently!

See, on the one side the BMS has preset settings (and it has a shunt). SOC of 100% i.e. +3.5v on a cell … and I have 16 of them in one bank, 8 in the other … and not all cells are equal right?
On the other side we adjust the charge voltages and all that on the Victron side to 3.45v … right?

… the Twain Never Met … :wink:

So I upped the charge voltages to 3.5v as I believe the default BMS settings are more accurate than the “standard” 3.45v used.

Still, discharging the BMS SOC is close, the BMV closer.
Charging the BMS SOC is “out” being volts based, the BMV MUCH closer.

This lady is quite informative:

Bottom line:

  1. the BMV can be “tuned” to one’s bank,
  2. the BMS I have has a shunt and can also be “tuned” … most BMS’s cannot.
  3. 100% SOC is ok for a short while each day, not a good idea to “Keep Charged” at 3.5v setting, much better to use "Optimized (Without Battery Life) at 95% SOC.

Something else to note, is that BMS/battery makers also fudge things to cut down on support. They will quite happily call the battery full (and jump to 100%) because ONE cell is above some threshold. The other cells may be way lower than that, and if you think about that carefully, that means the battery is not charged to its full capacity.

But rather than field numerous calls from customers who want to know why they cannot get the $%^& battery over 96%, the reset to 100% and deal with the problem tomorrow. As the battery cycles and the balancers get the rest in line, the “jump” becomes less pronounced and the capacity of the battery actually improves…

So people of the forums… do not be dismayed to find out that the BMS lies to you sometimes. It will tell you 100% just to shut you up… :slight_smile:

1 Like

Way I look at it, a battery bank is NOT cheap.

Paying ±R2400 for a BMS and similar for a BMV SmartShunt that interfaces 1000% with the Victron kits, is an “investment” in the longevity of my cells, seeing as one has a more accurate SOC, having 2 to choose from, than most SOC’s I’ve seen, read and heard about.

The issue for me is not today, it is 10 years from now when the bank should still preform optimally.

YES!!!

And YES!!! Again …
I have 16 cells in one bank, 8 in the other … since I upped the charge volts to 3.5v, and BECAUSE I can now see cell voltages, I’m out by ± 0.005v at times between cells when fully charged.
Interestingly, it drops from +3.5v to 3.45v … all by itself.

And this is how it is done … all the settings available on these BMS’s …

BUT … just to point this teeny weeny matter out …

Do NOT set and keep the system on Keep Charged on 3.5v charge per cell … some cells WILL shoot out to over 3.65v.

Soon as Keep Charged reached 100% SOC, I set the system to Optimized, which then works perfectly.

I deduced, in ignorance, the reason being the inverter still sends some teeny weeny bit of charge to the bank on “Keep Charged”, so small a charge that the BMV nor BMS does not even pick it up, both showing 0 amps, yet the cells still creep up. Must be “stored” on Optmized.

Small bits of charge slip into and out of the battery all the time.

The grid voltage is one of the biggest factors in this. When running grid-coupled, the battery is in parallel with the grid (for all practical purposes) and the Multi will regulate the voltage by adjusting the PWM-ratio it uses to approach a sine wave between the transformer and the battery. See here.

But if the grid voltage goes up a little, the Multi has to react by shortening the PWM ratio in order to avoid energy flowing INTO the battery, and when the grid voltage goes down a little, the PWM ratio has to be increased so that energy doesn’t flow FROM the battery into the grid.

This is not a symetric process. More energy may slip in than slips out.

Additionally, if you specifically told the Multi not to feed DC-coupled PV into the grid (which you would do in South Africa), then the Multi goes to some effort not to let charge slip out, causing this slipping in and out to be even more assymetric. And the result is a battery that slowly increases in voltage as more energy slips in than goes out, until it overvolts.

For people with AC-coupled PV, the answer is simple. Turn on “feed excess DC-coupled PV into the grid”. You have no DC, so it won’t feed in anything… but it will allow charge to slip out. So that solves the problem.

For people who has only DC-coupled PV, there isn’t really a solution right now. But it does not affect people who use their systems for self-consumption, since those have discharge events all the time as loads start and stop.

1 Like

I know it’s derailing the thread a bit, but is this any reason to choose AC coupled over DC coupled with self-consumption? I think I’ve settled on DC coupled, but I still have a thought every now and then to go AC coupled.
Or is it only relevant when it comes to a meter that’s sensitive? (Apart from the efficiency ratios and time of use)

“MPPT’s are between the solar panels and the battery bank, has no bearing on the SOC.
SOC comes from either the:”

Yes I know, but if you don’t charge via the multi then the MPPT will do the charging and voltages and current readings etc would come from the MPPT, that’s all I meant… Or I have it totally wrong…

When the system is Grid-tied the Venus is controlling everything, the MPPT’s are under “External Control”, that being either a Venus/Octo/CCGX/Venus Rpi.

@plonkster can give more detailed info of exactly how it all interfaces, all I know is that the MPPT’s are “controlled” as they don’t have a SOC, work on volts.

AND, if they are connected independently to the system like say for example in a camping setup with like just panels + MPPT + battery bank, no SOC anywhere, just volts are used to recharge the batteries.

I have seen this. The SOC will sometimes get to 95% and then a few minutes later stands at 100%. Then usually it is good for the next 15-20 cycles and will count upwards one digit at a time to 100%, and then do that akward jump again. Luckily it resets itself so it doesn’t bother me too much.

I can believe this. Would they do this to save on costs? Or is it merely to rid themselves of the hassle of pesky customers as you’ve pointed out?

And will a BMV not also do this, even if not intentionally as per your drifting quote above?

The GX does control everything. It’s the mind.
In the case if the battery, if the battery is talking to the GX, (and you have DVCC enabled) then the Battery/BMS values are used to control the charging that the MPPT does.

So if the BMS says the SOC is at 100%, then the MPPTs will be limited by the GX device to not charge the battery any further. My driver does this as well, reading the values from the BMS and publishing it to the GX device.

Well, that’s two sides of the same coin. Support costs money :slight_smile:

The most recent battery I tested has no high voltage alarm. You can push that thing right past 60V, it simply protects itself by blocking charge (opening the relevant FET), and sits there and smiles at you. So there is simply no point in raising an alarm if there is nothing to be alarmed about (the battery is in no danger), and if you do raise an alarm, someone will ask about it… and there will be warranty claims, etc etc.

MPPTs limit only on voltage. The BMS tells the GX what charge voltage to use (some have a dynamic voltage, others just send a static one), and the GX device relays that information to the solar chargers. The solar chargers has no idea what the SOC is, they don’t care, they just aim for the voltage they’ve been told to aim for. And limit the current if asked to do so.

External control literally only does those two things: The voltage and current settings comes from somewhere else.

1 Like

The SmartSolar MPPTs does this very well!

Thank you very much for your reply.
Can I do something to help with testing?

Thank you for the offer.

I need to move some of the code around so that it will work better for different battery types. Once that is done it will be easy to add the SOC for the Daly and we will have an alpha version to test.

I just have a ton of paid work at the moment that is taking preference, so the driver is taking a back seat for a week or two.