Backchannel: workings of MPPT Controllers

Note:  the following is the text of a reply I wrote (then deleted) on CRVL. I replaced with something which I think will have more value for onlookers.

As you may remember, I’m starting to take my longer and more nitpicky responses to the blog.  I hope this results in my getting fully state my positions without disrupting forums unnecessarily.

So lets talk about MPPT then and why it does it. The program is what decides how to bring up the voltage of the battery the best way in bulk. PART of that program senses the battery voltage and adjust the array in relationship to it. Since the voltage of the battery is constantly rising the controller has to constantly adjust the array to match. That is tracking the Max power point. A controller that has fast tracking makes the adjustments more often.


The program doesn’t have to decide how to bring up voltage or do any tricks;  the way to bring up voltage is to run the panels at Vmp and shovel in current.  Battery voltage rises naturally as it take the charge.

Panel voltage does not change* with rising battery voltage in Bulk;  this can be directly observed with multimeter or controller display.  It can’t change because by definition it runs at tge Vmp power point until it reaches Absorption voltage.

  • other than for environmental reasons
Since the voltage is constant in absorb and float there is no reason to constantly track a new point every few seconds because you are sitting on a power point. It may not constantly be perfect but it will be close enough that you and I would never know it. What is a bit off when it matters very little and the battery is self limiting the acceptance rate anyways.

We agree for the most part.

This gets back to my third question:   How did the controller find Vabs/Vfloat power point to sit on, assuming it’s not PPT?  (Occam’s razor suggests it’s PPT but this is not directly observable).

So how can I see all that power in absorb and float if the program isn't boosting it any longer? That is one of the myths of MPPT...there is no boosting going on by the controller or program. The power is always there, the buck converter makes it accessible.


That’s PWM thinking;  it might be the critical piece of bad information that is throwing everything else off.

The MPPT controller can (and does) stop the power from coming into the controller by running the panels at a power point that makes less power.

Again, just watch the meters.  Watch the controller move the panels off Vmp when less power is needed.  This part is observable, knowable stuff.

The answer is in the formulas Bob was using. I do not the actual numbers off of my panels but I know the roof runs 750w at 105 volts and around 10 amps. The buck converter allows it to be seen as 750w at 12 volts and 50 amps. Lower the voltage and the amps come up naturally. It does not take a program to do what happens naturally. The programs is all about control and the battery has control in absorb and float, hence the program is not needed.

The battery has control of current acceptance during absorb and float.  NOW the controller is doing panel manipulation to manage battery voltage as you described at the top of the post.

If the battery were controlling voltage in Absorption and Float there would be no need for those controller setpoints.  Or for a controller at all.

So the battery has control of the voltage and acceptance rate plus the power point is constant in absorb and float.

The battery does not control voltage in absorb and float, the controller does.  Via the setpoints and Vpanel manipulation.  The meter will show Vpanel changing to meet loads.

The buck converter is still seeing the same power coming down so it is still available IF a load is present that can use it. The panel did not change because of the mode the controller is in, neither does nature, the power is always there.

No it doesn’t, because the power isn’t being generated by the panels.  Look at the meters.  See what the panels are putting out.   The controller moves to a lesser power point.  We don’t have to guess at this part of it.

There is a real time way of seeing the program in action.

Yeah, watch panel voltage and watts on the meters.  You can see Vpanel being manipulated to match power requirements.

With a Eco-worthy you have to take the cover off and test a component to see the voltage going up and down as it attempts to track. With a Morningstar controller I can connect a computer and watch the various values change in real time. The only time I saw the controller constantly trying to track was when I was doing mixed panel test and the controller seemed confuse and not able to settle on a power point. With either way of testing you should be able to see the tracking stop in absorb and float.

Tracking never stops, for environmental reasons if nothing else.Experiment:

  1. note Vpanel in Absorption or Float

  2. add a load

  3. note Vpanel

Vpanel shifts toward Vmp because the system needs more power to hold Vabs/Vfloat when a load is added.**

How does the controller know what this new Vpanel should be?  PPT.

Like I said the answers are already here in the thread with the link to NAW&S and the formulas Bob posted.

I love you and respect you, [redacted], but the link does not support your understanding of the workings of MPPT and neither do real world observations.

For onlookers the short version is:  An MPPT controller manipulates solar array output to meet changing power needs.