MPPT Charger stops generating, excess DC PV not being feed-in

I noticed strange thing, which happens sometimes.

After battery is 100% charged, excess DC coupled PV is supposed to be feed-in to grid. But actually PV charger just stops generating.

For example now is plenty of sun, and charger is idle.

Anybody able to help? Thanks!

installation # 442946




Update, at ~17:00 MPPT charger started to generate again.

Hi @kbb

The cause of this is your lithium battery BMS not complying with the Victron BMS-can specification.

Compatible batteries are listed here - Battery Compatibility [Victron Energy]

Further details why

The specification requires that BMS use the Charge Voltage Limit (CVL) not the Charge Current Limit (CCL) to regulate the flow of power to the battery.

When the CCL=0 value is set, the chargers take that as a signal to immediately cut their production to zero. Not try to balance the export current vs battery charging current.

That balancing of export vs battery charging is much better done as a battery voltage target, not a current target, because current is so fickle between loads, clouds, etc.

The BMS-Can specification isn’t open source, but it is freely available from Victron to BMS and lithium battery manufacturers who want to improve compatibility with Victron. They can get in touch with the Victron sales manager in their region to make the request for the information to bring their products into compliance.

1 Like

@guystewart Thanks for answer!

First of all, at ~12:00 CCL went to half, not to zero.

Second, why MPPT resumed to generate at ~17:00? As you can see from BMS graph, nothing changed at that time.

It’s not a perfect science there, multiple variables, control loops, and the MPPT is getting a mixed message (export, but don’t charge), but that is definitely the cause and the effect.

We haven’t invested more time into troubleshooting and improving it further, when there is a clear solution available that works perfect.

It’s a far more stable and consistently performing system when the CVL is used to regulate, and the MPPT is just trying to hit a target voltage (with a higher voltage offset that is enabled when export is enabled).

Then the MultiPlus is in charge of maintaining the target DC battery voltage, which it does by adjusting its AC voltage to increase or decrease the amount exported.

@guystewart

Unfortunately it is impossible to persuade Basen Green (Battery manufacturer) to adjust BMS behavior to follow Victron regulations. I tried several times, they just answer that everything is correct.

I suppose market is full of batteries and BMS’es, which operate same way and will never bother to fix this, because sales are soaring anyway.

Is there any possibility to fix this somehow in Node Red or with scripts, DIY way?

A lot of new (and old) BMSes are sending CCL=0 when SOC=100.
I know that, sometimes, it’s better with CVL and also suits your hardware better, but the industry sometimes has different ways than Victron way…
Famous words (not mine): He who’ll not adapt, will die…
Just wait for the next/upcoming generation of Huawei inverters and ESS technology and you’ll understand.

It’s possible but strongly strongly discouraged.

Relevant first step is the “quirks” section of the VenusOS source code, specifically the DVCC.py

This thread is not specifically about your issue, but reading it should provide all the necessary information and background to understand what it is you are asking about, and hopefully enough to persuade you that the time is better spent lobbying your BMS supplier - MPPT getting wrong Charge voltage limit from Cerbo/ESS

There was a time where we tried various things to work around this system behaviour (such as translating CCL signals), but have now concluded that we will no longer do this on a manufacturer by manufacturer basis,

Instead we uphold a clear protocol specification. Now so many have complied, and the results are so good, it was surely the correct decision.

In the long run all these quirks will be removed, and all betteries will be expected to be protocol compliant.

I must say here and now you are on your own making any kind of modifications like this. I expect you can improve things for your system, but who knows what kind of other unintended consequences.

To perhaps help you with Basen, here is an extract from the BMS-Can specification that clearly states the requirement. I am going to presume they have never read it, because it’s not possible to have and also say everything is correct.

There is also a testing protocol, and the behaviour shown in your screenshots above would fail it.

In this case Victron’s way is better, not just for our hardware, but at a fundamental control loop level.

The R&D teams that know their products well are able to quickly implement it, and then the results (also for long term cell balancing) mean everyone, customer, Victron and battery supplier, are better off with better results, performance and reliability.

So perhaps instead of dying, Victron BMS-Can protocol compliance will become a mark of who has sufficient engineering resources to support their BMS for the long run.

Probably you’re right, as long as you (as company) keep insisting to keep things separate and modular – mppt, inverters, etc.
But as you already observed - and adapted (see MultiRS) - the industry is moving towards AIO systems.
And there, because of the hardware implementation, is much, much easier to implement and control things, even when BMSes send CCL=0.

I also suppose they did not read specification and will never bother.
I can live with this MPPT behavior, my main PV arrays are on AC Input and working well. PV charger has only 3 panels and won’t be expanded.

But anyway, with this kind of BMS,

  1. Should I have DVCC enabled?
  2. Should I have “DC-Coupled PV - feed in excess” switch on or off?
  3. Should BMS or Smart Shunt be battery monitor?

Current settings are below.



A bigger question if there is a place in the market for Victron’s flexible, configurable, customisable, interoperable, (relatively) open source, iterative, scalable, approach to power electronics.

We think that there is :slight_smile:

Accepting it will never be the whole market, we are still passionate and motivated to stay focused on where we can offer a unique product range, and customer experience.

I am very happy to see the All-in-One nice solar and battery box market grow, I hope everyone on the grid gets one, and those that want even more come to Victron.

1 Like

Sorry to repeat myself, but the entire purpose of the BMS-Can protocol and testing process is so we can confidently answer this question.

Check the peak-shaving setting in the ESS menu.
Maybe there is 16A grid limit?

1 Like

20A

Maybe a bit off topic but did you enable DESS?
I had the same issue/behavior once before.
At the end I could find out that “DESS was throttling” my solar chargers because of negative prices…

Yes, DESS is enabled. No restrictions for feed-in in DESS settings.

For me it was the same but DESS throttled my solar charger (when battery was full and prices were negative)
To prove I was right I added a few cents to the sell price in the VRM and… SolarCharger was charging again (feed in grid)
Edit: found the picture


Battery was full and prices were negative

@guystewart Please comment?

Just disable DESS to test that.

Also try to disable the peak shaving limit for testing.