WKirby avatar image
WKirby Posted · · edited ·

Load Output of MPPT Charge Controllers

I intend to describe the operation of the Load Output facility which is available on some of the SmartSolar and BlueSolar range of Victron charge controllers. I shall demonstrate the results of some of the tests that I have carried out with my unit with the current firmware (V1.37).

I have carried out a series of tests using my own test equipment that I have at home. I am using my Victron MPPT 100/20 as a guinea pig. I am measuring the current flowing through the Load Output terminals with a 0.1Ω shunt resistor. My oscilloscope is across this shunt to capture the very fast inrush current transients. I make several references to "Incandescent Light Bulbs". Why in the space year 2018 am I still thinking about Incandescent Light Bulbs? Well, they present high inrush currents to sources of electrical energy, so are perfect test subjects.

I think most people are sensible enough by now to use LED lamps, but I could be wrong.

This is my test setup:

The detail of the 0.1Ω shunt setup:

What is the Load Output?
The Load Output is a feature available on some MPPT charge controllers to enable the user to control a load either manually or automatically using certain algorithms. It is very useful for certain applications such as street lighting. It's a feature popular in smaller DC-only systems such as RV and camping (glamping) setups. The loads can be switched on and off at will, but can also be used as a safeguard to disconnect the load under low battery or overload conditions.

The Victron MPPTs in particular have another useful feature which enables the current flowing out of the Load Output to be measured. This opens up a host of opportunities including energy monitoring and more accurate SOC calculations. Until now, energy monitoring had only really been available on larger more expensive multi component systems so it is quite an attractive feature for people who only need a small "all-in-one"DC system for lighting, telephone charging and perhaps a small entertainment system.

The SmartSolar range take things a step further by allowing control and monitoring via a Bluetooth enabled telephone or tablet!

Design considerations for the Victron MPPT Load Output.
There a few ways to switch the Load Output on and off. The simplest would be to use a relay.

Relays have been around for ages and are reasonably reliable. However, the type of relay has to has to be carefully selected when it comes to DC systems so as to prevent contact arcing. A 24V system with a 15A load will require a substantially sized relay (in comparison to the physical size of the rest of the MPPT 100/20) whose contacts can open wide enough and quickly enough to extinguish the arc which will form as the contacts open. An appropriately sized relay will also need a coil powerful enough to force the contacts closed against the tension of a good spring. This coil requires electrical energy to close and perhaps a bit less to retain closure of the contacts. A latching relay could be used which only needs coil energy to move the contacts, but these are even larger in size and are considerably more expensive.

Another approach to switching DC loads is by employing a transistor. Modern MOSFETs (Metal Oxide Semiconductor Field Effect Transistors) can switch very fast, don't suffer arcing problems and require negligible energy to switch states. They are also a fraction of the size of a relay. As an example, an Infineon BSC030P03NS3GAUMA1 MOSFET is only 5mm wide, 6mm long and 1mm high yet it can switch 100A and would only burn 23W doing so, it barely even needs a heatsink!

There is sometimes a disadvantage to having fast switching speeds and this is entirely dependent on the load being switched. Designers usually have an idea of what load they are driving and can then make design considerations based on that specific load. In the case of the Victron MPPT, the designers don't really have any idea of what sort of loads the end user is going to connect up, so they have to make some assumptions and also make sure that their product will be reliable. It's quite a tough call really.

What is inrush current?

Inrush current is the sudden initial burst of current that certain loads such as incandescent light bulbs and inductive loads like electric motors present to any circuit when they turn on. It is not uncommon for the inrush current can exceed 10 times the normal running current of certain loads. Inrush currents will manifest themselves in the circuit no matter where the switch happens to be. The Load Output of the Victron MPPT can be ON but no current is necessarily flowing because the contacts of the a fridge thermostat are open. The inrush current will still manifest it's self when the fridge warms up and it's thermostat contacts close again.

Below is a typical example of a MOSFET switching a load with a high inrush current. Inrush current started off at about 12A then gradually tails off to 2A after 50mS or so. In this case the inrush current was not limited or "clamped" at all.

Why do we need to limit inrush current.

High currents cause heat and heat causes damage. There is a main fuse at the battery input of the Victron MPPTs to disconnect the battery in case of excessive currents. However, designers have to consider how convenient their products are to live with. Nobody wants to entertain a product that keeps blowing fuses. Given that the fuse is supplied with and built into the MPPT it's self, any faulty or high inrush current loads which cause the fuse to blow will not be assumed to be the cause.

In order to limit customer complaints, designers would do good to design an automatic system of limiting the inrush current, preferably quicker than the fuse would melt. We only really want the fuse to melt in a genuine fault circumstance.

Below is an example of a dead short circuit being applied to the Load Output terminals of a SmartSolar 100/20. The fault current rose to 60A (and rising) but the output was turned off in about 5μS. This prevented the 25A main fuse from exploding.

Ways to limit inrush current.

Option 1) Turn the MOSFET on slowly.
A certain degree of this appears to have been applied to the design. This approach is good as it softens the "spike" seen in the image above. However, how slowly you turn it on depends once again upon knowing what load you are driving. An incandescent light bulb could withstand being turned on fairly slowly and may even offer a rather pleasant effect. An electric motor however may not work well driven like this. An electric motor which drives a compressor actually needs a high inrush current to not only overcome mechanical inertia but also to compress the gas into the head of the cylinder.
Driving a MOSFET for too long in the "Linear Region" or the part which is in between fully off and fully on will cause the MOSFET to get hot as it is now resisting the current flow. So it's a bit of a balancing act to get the best result especially when you don't know what load you are driving.

An example of "ramping up" the current slowly. There is still an inrush current, but it is more gradual:
The "ramp up" can only be offered if the load is already present on the Load Output.
If the Load Output is already ON but the appliance is off (like a cold fridge whose thermostat contacts are open) then the ramp up cannot be controlled because the MOSFET is already fully ON.

Here is an example of the very same load as above being applied with the Load Output already ON. Just look at how more aggressive the inrush current is, it's almost double!

Option 2) Drive the gate of the MOSFET with a bunch of pulses initially.
With this method we don't have to worry about driving the MOSFET in the linear region. We can turn the MOSFET on and off very quickly gradually increasing the amount of time that it is on to the time that it is off (Pulse Width Modulation) until it is fully on. This has a similar effect to that described in option number 1, but is a bit more difficult to achieve. You'll either need a spare PWM module available on your microcontroller or a dedicated circuit to generate the train of pulses. You don't really want to take precious time away from your CPU to have it sit around for 10mS or so ruining out a train of pulses. There are modern "Smart Switches" which are basically MOSFETs with some supporting circuitry within the die which does the PWM function. They are still quite expensive when compared to regular MOSFETS though. A good designer needs to keep costs in mind right? Below is an example of an Infineon BTS5016 "High-side Load Switch" performing a PWM function into a 55W car lamp):

Option 3) Monitor the load and respond accordingly. This is my interpretation of how it's done for Victron MPPTs.

This method is quite good if you have no idea what load you'll be driving - like the mysterious loads which will be connected to the Load Output of the Victron MPPTs. It would normally be a very expensive way to do it because it requires processing of some sort. It's rather convenient then in this case because there just happens to be a CPU which is monitoring load currents for metering functions.

I showed an extreme case of a dead short circuit being presented on the Load Output in an image above. That was very fast. If it responded that quickly to all inrush current events then hardly anything would start up. So, the severity of the action should depend upon the severity of the overload.
Below is the effect of two 55W incandescent lamps on the Load Output. The "ramp up" can be observed but the inrush current still rises to almost 40A which is too high, so the Load Output is switched off after 15μS in order to preserve the fuse among other components inside:

If the inrush current is reduced to only one 55W lamp the current is, once again, "ramped up" but the inrush current is still 25A which is about the rating of the fuse, but is still way higher than what the Load Output is rated for. Here the inrush current is sustained for while longer, but after nearly 80μS it has not subsided so the the Load Output is turned off:

Here is a condition where the Load Output is actually overloaded a little bit, but it kept going until my little 14Ah test battery ran out of energy. I do not recommend overloading the output but I'm performing my own attended tests.

It would appear that rather a lot of consideration has been made into designing the switching function of the Victron MPPT's Load Output. Both Option 1 and Option 3 appear to have been implemented which is very good design practice considering the mystery of what the load could be.
Option 3 does offer the ability for firmware tweaks, but there is only so much that the existing hardware can tolerate, the main fuse being one of them. If the inrush current limiting is too lax then other things start to go wrong.

MPPT - Solar Charge Controller
scope-11.jpg (44.5 KiB)
scope-17.jpg (44.2 KiB)
scope-16.jpg (45.7 KiB)
scope-12.jpg (45.5 KiB)
scope-13.jpg (44.9 KiB)
scope-18.jpg (44.9 KiB)
scope-19.jpg (44.8 KiB)
scope-7.jpg (44.9 KiB)
scope-9.jpg (45.2 KiB)
16a-load.jpg (21.6 KiB)
img-4013.jpg (157.9 KiB)
img-4013.jpg (157.9 KiB)
img-4011.jpg (109.9 KiB)
10 |3000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

Awesome Work.

From this testing and analysis did you have any ideas on how the product or its behaviour could be improved?

WKirby avatar image WKirby ♦♦ Guy Stewart (Victron Community Manager) ♦♦ ·

I eluded to the possibility of firmware tweaks to accommodate loads with a more demanding inrush current. However, I'm not sure whether this is within the scope of the current hardware, PCB, design parameters. Nobody likes PCB revisions.
I repeated several times that it's really difficult to design for unknown loads. I'm sure that if a designer were to be presented with a fridge as the subject of a potential load that the outcome of their design would suit a much wider range of other loads.
I estimate that the popularity of the metered Load Output has been underestimated.

Wow Warwick!

Same is the feedback from R&D: software around the loadoutput is not something which is expected to be easily improved upon. Lots of time and effort already went in there.

WKirby avatar image WKirby ♦♦ mvader (Victron Energy) ♦♦ ·

Ja, I didn't say it was going to be easy.
When I designed that board with the BTS5016 I knew that I was driving just a heater. I placed a (very expensive) 100A MOSFET because the customer was very concerned about reverse polarity protection, but he didn't want to hear any stories about diode Voltage drop. avatar image mvader (Victron Energy) ♦♦ ·

I agree, excellent work, makes things very clear.

I have ordered two 0.5 ohm NTC's and will test my Waeco fridge with 1 and then 2 in parallel as suggested by Warwick and will let you know how we go.

Were you able to test the accuracy of the inbuilt current monitor vs your (precise) equipment?

WKirby avatar image WKirby ♦♦ Guy Stewart (Victron Community Manager) ♦♦ ·

I did not pay very much attention to, nor had the equipment set up for measuring, the accuracy of metering functionality of the SmartSolar 100/20 in this particular exercise.
I casually connected my Ammeter up and observed a difference of 10mA difference between the two.
I'd like to devote the accuracy of the various measurements to a separate article if I may.

Thanks Warwick for this educational post !

Boat and RV owners are often wanting to power up their fridge over the load output or even a small water pump....

Your post will help them out understand why it won't work...

I have demonstrated a possible workaround towards the end of this thread:


Compromise/workaround: Connect to battery, fuse and relay, relay controlled by load disconnect circuit. Fit PTC (1) in series with relay output.

Connect load disconnect to inductor. Connect inductor to PTC (1). Fridge power is where inductor and ptc connect.

I have not tested this, I would expect ptc to supply surge current at compressor start up. Inductor to inhibit surge current from load disconnect. When things settle down the ptc is warm enough so main current is from load disconnect circuit.

I would try this if Victron can say that connecting battery and load disconnect circuit will not damage the controller.



WKirby contributed to this article