User Tools

Site Tools


Words of wisdom: “Any Solar is better than no solar, but having too much solar is difficult. The best solar systems are those which can keep the batteries the happiest. Happy batteries are those which are recharged quickly after depletion.”1) - SternWake

Solar charge controllers


  • solar panels → solar charge controller (SCC) → battery bank
  • the SCC's main job is preventing battery overcharge
  • The two main types of SCC are PWM and MPPT
    • PWM - Cheaper, less efficient
    • MPPT - More expensive, but more efficient
  • SCC LOAD outputs are vestigial features but may be useful for triggering certain loads

about this summary


A solar charge controller (CC) regulates the charging of a battery bank from the solar panels. Counterintuitively, the primary job of the charge controller (CC) is to keep the batteries from being overcharged. Solar panels run at higher voltages than batteries, often at voltages high enough to damage the batteries. The CC provides the correct amount of power the battery needs at the correct time; this is called smart or three stage charging. Charge controllers are generally rated by the amount of output they can provide. This output is shared by charging circuits and LOAD circuits. For example, a 20A controller might be using 18A for charging and have 2A available for LOAD. Controllers operate based on factory- or user-defined setpoints (values) stored internally.

Cautionary example: 12W Unregulated Panel vs. 220Ah AGM Bank


Regardless of type, controllers will have several specifications in common.

  • rating (or “size”) - this is usually the maximum output the controller can produce (charging + loads).2)
  • 12v/24v/48v - this refers to the nominal voltage of the battery bank it will be charging.
  • Maximum input voltage - the highest voltage the controller should ever see from the solar array.3) NOTE: a 50v input max does not mean a PWM controller can make efficient use of mismatched panel/battery voltages; that requires MPPT. See how to choose below.

Types of charge controllers

[note from frater secessus: PWM vs. MPPT debates can get overheated in forums and comments. It's your money and your build so do it the way that meets your needs.]

The quick and dirty

PWM is much less expensive, and typically makes less power over the course of the day. Panel voltage and battery bank voltage need to be matched.

MPPT is more expensive and but typically makes more power, especially when battery voltage is low. Panel voltage and battery bank voltage can diverge.

The more power / less power dynamic is highly dependent on the setup and use case; there are no definite answers about which is right for you. For example, there are edge scenarios where PWM can make more power than MPPT.4)


images-na.ssl-images-amazon.com_images_i_41pwjorizhl._ac_us160_.jpgPWM (pulse width modulation) controllers charge by connecting panels to battery until a given voltage setpoint is reached. When the desired setpoint is reached the controller switches current on/off to the battery in very fast cycles and in such a duration needed to keep voltage from rising. This time slicing power delivery is called is pulse width modulation, or PWM. Some heat will be generated by the switching. Counterintuitively, the PWM may be cooler the touch when it is running full open because there is no switching going on to limit voltage. This runs the panels at5) battery voltage (Vbatt). Vbatt is usually much lower than the panels' Vmp6) and so PWM generally cannot capture the panels' maximum available power7) under typical conditions. A side effect of this is the PWM controller will have highest power output when Vbatt is highest: Absorption (Vabs) and Float (Vfloat). Setpoints can be tweaked for longer duration Absorption and higher Vfloat to maximize power output of a PWM controller. PWM controllers are simple, inexpensive, and sufficient for many uses, particularly if ambient temperatures are fairly high, paneling is ample, and batteries are not deeply cycled.

Note that there are some simple PWM controllers like Morningstar's SunGuard that run at a single voltage.

For technical reasons PWM can deliver more current than the panels' Imp, even nearing Isc.

panel selection for PWM

PWM makes the most power when coupled with panels whose operating Vmp is very close to the controller's Absorption (“boost”) voltage setpoint. Since ambient temperatures affect operating Vmp the panel's Vmp spec on the label should be about 10% higher than Absorption voltage.


  • 16.28v Vmp panel spec would be optimal for 14.8v Absorption, as we might use for flooded lead acid. 14.8v x 1.1 = 16.28v.
  • 15.62v Vmp panel spec would be optimal for 14.2v Absorption, as we might use for Gel or LiFePO4.

Some thin-film panels have Vmp in that range but most panels are much higher. So we find the lowest Vmp practical. 17Vmp panels would perform better on PWM than 18v or 19v.


images-na.ssl-images-amazon.com_images_i_51bi9ijcsrl._ac_us160_.jpg MPPT (maximum power point tracking) controllers have two defining abilities:

  1. discover (track) and utilize various power points along the panel's power curve. Sometimes this is the maximum power point (MPP); often in a 'dweller context the system needs less power and the controller runs the panels at some other power point. It might be more accurate to call them PPT controllers.
  2. DC-DC downconvert excess voltage to amps - this is possible because MPPT decouples panel voltage (Vpanel) from charging voltage (Vbatt)

When maximum power is required8) the controller will run the panels at Vmp (the maximum power point). At other times the controller will find a less-than-maximum power point to match panel output to system needs. images-na.ssl-images-amazon.com_images_i_512x3hbc6jl._ac_us160_.jpg

Since panel voltage at a given power point is usually too high for system needs9) the controller performs a DC-DC conversion to bring the voltage down to a directly usable level. Because current through a conductor is directly proportional to voltage10) this downconversion effectively turns excess voltage into increased amps.(minus conversion losses).

This ability to decouple panel and bank voltage can result in 10%-30% more power harvested from 12v nominal panels than with a PWM controller, depending on conditions. Average daily production with MPPT is typically ~+15%11), which may or may not justify the added cost on its own.

"boost" effect

When compared apples-to-apples on identical systems with only the controller being different, the “boost” effect is most pronounced:

  • during bulk stage and the early part of absorption stage when the battery can take in the most power
  • anytime the system is fully loaded down (charging and/or loads)
  • when the battery is most depleted (ie lowest resting voltage). This is the result of a cascade of factors:
    • When a battery is deeply discharged it will go into Bulk charging mode until it reaches the Absorption voltage (Vabs). For the purpose of illustration we will assume the bank is depleted to 12.2v (~50% state of charge), a commonly recommended lower limit for deep cycle batteries.
    • PWM controllers can only run the panel at whatever voltage they are charging at right now. In our example that is 12.2v.
    • Nominal 12v panels usually have max power output (Vmp) around 17v.12)
    • when a typical 100w panel13) is run at 12.2v in lab conditions it puts out ~68.32W. The same panel run at Vmp (~17v) would put out 100W. MPPT is capturing more power than the PWM when the battery needs it most.14)
  • during times of greatest PV efficiency15) (clear, cold weather)
  • during times of low irradience (low light levels due to low angle or overcast conditions)16),17)

There are some considerations when designing a system around an MPPT controller.

panel selection for MPPT

MPPT thrives on voltage. In general, we should select panels that have the highest-practical Vmp while staying safely under the controller's voltage input limit. MPPT efficiency tends to be greatest when panel voltage is ~twice the charging voltage. The exact ratio varies by controller so read the docs for specifics.

Note that panels can be run in series to increase their voltage.

when PWM beats MPPT

There are edge cases where an optimal PWM setup can make more power than MPPT for a time. This can happen because MPPT has DC-DC losses that PWM does not, typically ~5%. Since MPPT harvest from the panel is typically 10-30% greater than PWM the DC-DC losses are hidden.

But when PWM controllers and panels are optimally matched (difference between panel Vmp18) and Absorption19) voltage is <5%) then PWM will make a bit more power during Absorption.


see article below

single-stage chargers

images-na.ssl-images-amazon.com_images_i_41gwyw0bt5l._ac_us160_.jpg Single-stage chargers hold the bank at a setpoint (Vdisconnect)20) as long as sufficient solar harvest is present. When the setpoint voltage is achieved the controller current is turned off for some amount of time.21) There are several different ways of turning off the current:

  • PWM - open circuit the panels very rapidly (tens-to-thousands times a second)and for varying lengths of time to hold the voltage setpoint more precisely. Same as PWM controllers above, but in this market range the modulation tends to be cruder/slower and there is only one charging voltage setpoint.
  • shunt - shorts the panels ON/OFF (charge-and-stop, less common)
  • series - open circuits the panels ON/OFF (charge-and-stop, less common)

Simple versions use simple electronics22) or relays to turn charging on until Vdisconnect is reached, at which point charging is turned off off. If/when voltage falls to some lower voltage (Vreconnect) charging begins again. This is sometimes called charge and stop charging or on/off charging. Voltage tends to wander a bit as the charging stops and starts. They are often used where extreme simplicity/robustness is required, or where more complex electronics might cause electrical interference.23)

More complex shunts use electronic components24) to hold the single voltage setpoint with finer accuracy, dissipating switching heat through the backplate or other heatsink. The difference is mainly one of time and therefore stability of the setpoint; a relay shunt might go ON/OFF 1x/second every few seconds if the loads were neatly balanced with solar harvest. The electronic shunt might switch power tens, hundreds or thousands of times each second and may be PWM or quasi-PWM. It would take an oscilloscope to know for sure what's happening under the hood.

For the purposes of this discussion the two types will be grouped together.

…PWM [and] shunt controllers apply full panel voltage, or something close to it, across the battery terminals, at a duty cycle (fast for PWM, slow for shunt) that keeps the battery happy, and the controller monitors the battery voltage and then adjusts the PWM duty cycle accordingly, or in the case of a [relay-based] shunt, it clamps the panel output. – Tx2Sturgis25)

They may be hardcoded with setpoints or allow user configuration. If configurable, you can get better results by choosing setpoints to fit your situation. Usually on cheap shunts there is one setpoint, which we can think of as the absorption voltage (Vabs). Holding Vabs as long as the sun shines might seem weird but to quote Sternwake again:

If your charge controller only holds [absorption] voltage for an hour or two, that is likely not enough time. As long as [there is a load] and you cycle the battery daily, you could set float voltage to 14.8v [to match absorption] without worry. Only when you stop cycling the battery do you need to return float voltage to more regular 13.2v levels. Premature application of float voltage by automatic charging sources is a battery killer.26)

Also see this comprehensive teardown that assesses:

….a rather inexpensive piece of equipment but it doesn’t do a terrible job of being a basic solar charge controller. On the whole, it behaves as one may expect – protecting the battery from excessive voltage and overdischarge, with an integrated dusk timer function and USB outputs…what do you expect for $10-20? Something that works is already a big surprise to me.

with Bnn settings

Units with Bnn settings purport to have Absorption27) profiles for various batteries and configurable Float setpoints.

  • B01 - Sealed lead acid (AGM), typically 14.4v
  • B02 - Gel, typically 14.2v
  • B03 - flooded lead acid, typically 14.6v
  • B04 - 4S LiFePO4 ←- like drop-in LFP
  • B05 - 5S LiFePO4 (uncommon)
  • B06 - 3S Li-NMC
  • B07 - 4S Li-NMC

Absorption duration is unknown.

Example manual for controller with B01-B03 and B01-B07.

Further viewing:

USB converters These aren't controllers in the normal sense, but there are modules that connect to your panel's MC4 connectors and output USB power.

If you only need 5v USB power up to 2.5A per port this may be a workable solution.


[note: this is a placeholder for a possible new entry.] There are DC-DC converting charge controllers (DDCCC) appearing on the market that claim to be MPPT but do not actually track power points (maximum or otherwise). They do downconvert some excess voltage into amperage. See this blog post.

how to choose

PWM is a reasonable default choice in typical scenarios28); they work well enough and are inexpensive. PWM controllers can cost half or a third of their MPPT workmates for any given rated output.29) If more power is needed (and there is physical space) additional PV can be added to match the charging output of an MPPT charger, often at a lower cost. [There are no prizes for fanciest or most expensive charge controller! Do what is best for you – frater secessus]

There are also edge cases where PWM can actually make more power than MPPT. An example of this might be low-Vmp poly panels during Absorption stage in very hot weather, due to MPPT DC-DC conversion losses and temperature derating.

MPPT is effectively required when:

Further reading: an excellent and readable whitepaper by Victron (PDF).

MPPT may be a better fit when:

  • the existing PWM system is not providing enough output but is close (like 10%-20% shortfall)
  • nominal 12v panels have a relatively high Vmp (>=18v) for reasons discussed here.
  • battery banks are cycled deeply on a regular basis so more time is spent at low Vbatt where PWM struggles.
  • with deeply-discharged banks of low internal resistance (AGM and especially lithium). Their voltage will take more time to rise from deeply-cycled levels.30)
  • charging is by solar only; no generator, shore power, or alternator charging to help.
  • if temperatures are very low (rising Vmp means increasing output which PWM could not capture)
  • the increase in cost is not an undue burden

Shunt controllers are extremely inexpensive, making them useful for even very small systems, test configurations, and backups.

Shunt may be the best fit::

  • when price point is critical, as in shallow-cycling configurations
  • when very little space is available to mount the controller
  • when used off-grid with deeply-cycled lead banks (eternal absorption)
  • Their simple ON and OFF setpoints may also make them useful for holding lithium chemistries at quasi-Float voltages.

See also shunt tweaking.

should I upgrade my PWM to MPPT?

If the system has changed and now MPPT is required for one of the reason above, then yes.

But most people consider this switch to make “more power”, forgetting that solar only makes power when it is demanded.31) If you are presently consuming every watt the system can make then, yes, replacing PWM with MPPT will likely increase your harvest by ~15%. If you aren't hammering the system then +15% is immaterial; there is no difference in the performance of a 150mph car and a 165mph car in a school zone.

So the questions are:

  1. do you need more power than you are getting now?
  2. would +15% be enough to meet your needs
  3. if so, would you pay [whatever the MPPT costs] to get that +15%?

There is a saying in solar circles that “adding another panel is a better deal than upgrading from PWM to MPPT.” This may or may not be true in your particular use case.

multiple charge controllers

Multiple controllers (with separate arrays) can be used to charge a common bank. The controllers should be configured with similar charging setpoints for the greatest efficiency.32)

sizing your charge controller

As with inverters, sizing the controller correctly will help system efficiency and save money. An oversized CC will have unnecessarily high parasitic drains as it powers itself and will cost more. An undersized CC will not be able to put all the rated solar wattage to use and will leave no room for expansion. For PWM controllers, the formula is something like (panel wattage / 13) * (1.2 oversize for safety) = charge controller amps.33) MPPT controllers have more leeway in sizing since they can control the output of the panels independently of battery voltage. See also Sizing a Solar Installation


this section has been moved.

Using LOAD output

It is common for charge controllers to have a LOAD output for powering (or switching) loads. A common-and-understandable misperception is that it is there to run your loads. Kinda.

historical use

LOAD terminals were originally used to control nighttime lighting, like pathway or garden lights. These are relatively small, resistive loads. Power to the LOAD terminal could be associated with sun (or lack of sun) and/or battery voltage.

present use

In practice the LOAD terminals typically are either ignored34) or used as low voltage disconnect power relays. You can define Low Voltage Disconnect (LVD) and Low Voltage Reconnect (LVR) setpoints to protect the battery from excessive discharge.

why loads aren't powered from LOAD terminals

The load outputs take power from the battery terminals…. the only advantage in using the load terminals is displayed info and the ability to disconnect the load at programmable voltage levels. – mikefitz35)

Some loads are inappropriate for the LOAD output. Morningstar says:

Heavily inductive or capacitive loads such as pumps, motors, compressors, and inverters should not be wired to the controller’s Load terminals. In addition, loads exceeding the Load Current Rating of the controller should not be connected to the controller’s Load terminals.36)

elsewhere they say:

Inductive loads can generate large voltage spikes that may damage the controller’s lightning protection devices.37)

although an exception is made for the SunSaver MPPT which “Handles inductive loads without problems.”38)

One can run loads heavier than the controller is rated for (or inductive/capacitive loads) by connecting those load[s] to a relay39), which is in turn connected to the LOAD output. This still allows for Low Voltage Disconnect because the CC will turn off power to the LOAD output, which turns off power to the relay, which turns power off to the load.

You may also be able to use the LOAD output to create a separate 12v circuit for non-essential ("opportunity") loads.

Note: in wind and hydro power applications the output can be sequenced so that LOAD is activated only when batteries are fully charged. This is called a “dump load” because those power sources need to be able to “dump” excess current to prevent damage to themselves. Dump loads are not necessary in solar because panels can be open- or short-circuited without damage.

connection order

Solar charge controllers use the battery bank to provide a reference voltage for operation. For this reason the battery should always be present when solar panels are connected. This suggests a particular order for connection/disconnection/resetting:

  1. disconnect solar panels
  2. disconnect battery
  3. wait a moment
  4. connect battery, wait for controller to power on
  5. connect solar panels

For an overview of official procedures by manufacturer, see this post.

positive ground controllers

Some controllers are labeled or described as “positive ground”, often by their competitors. The term is incorrect and misleading:

… “positive ground” terminology is wrong. There is nothing connecting positive supplies to chassis ground, earth ground, or any other ground. – Trebor English40)

A more accurate term would be Low Side Switched Controllers (LSSC hereafter). A how and why of low side switching is found at the end of the article. These LSSC can be incorporated into your camper's electrical system as long as:

  1. anything powered by the LOAD output does not ground the negative wiring to the vehicle.41)
  2. any communications i/o (like ethernet or other jacks) do not connect to devices that are grounded to the vehicle.42)
  3. solar panels are wired directly to the controller and do not use the vehicle as an electrical path43)

If you are not using the LOAD output, communicating with the controller, or using the vehicle as an electrical path for the solar panels, LSSC (so-called “positive grounding”) doesn't matter.44)

use of LOAD output on an LSSC

If some basic steps are not taken the device may not turn off/on as expected. Here are some appropriate ways to use the LOAD output with LSSC:

  • run all positive and negative wires back to the LOAD output; or
  • run them through buses that lead back only to the LOAD output; or
  • put a relay on the LOAD output and run all the loads through that.45)

low side switching

LSS means switching (turning on-off) is done on the negative (or low) side rather than on the positive (or high) side. Referring to a low side switched PWM controller, Trebor says:

All three plus connections, solar panel, battery, and load, are tied together. Loads are turned on with a switch (transistor) between the load minus terminal and the battery minus terminal. Charging is turned on (bulk) or pulsed with a switch between panel minus terminal and battery minus terminal.46)

He goes on to explain why this is the case:

The reason for the low side switching is the intersection between physics and economics. N-channel field effect transistors are faster, better, cheaper than P-channel parts. The designer can A) use good parts in a simple circuit or B) use more expensive not so good parts or C) make a complicated circuit that uses 18 volts to control a 15 volt switch.47)

further reading

for technical reasons with PWM this will also be the *input* current limit
it is common to leave ~20% margin
like high ambient temps + low Vmp panels
or very close to
unless the panels are very hot
adjusted for temperature, insolation, etc
in Bulk or at other time when loads + charging >= panel output
particularly with higher than nominal 12v panels
Iop = 5.6A
there are minor inefficiencies not considered here
i.e. highest voltage
this is a function of higher input voltages
actual, not spec
whether generally or exactly
In a hydro or windpower scenario the power cannot be turned off and is diverted (shunted) instead to a diversion load like water heating, water pumping, etc.
as with Flexcharge
as in a ham shack
like FETs
which they often call Equalization
12v house power, 12v panels
10A, 20A, 40A, etc
for loads or charging
some well-respected controllers don't have them anymore
PM correspondence with frater secessus
electrical/solar/charge_controller.txt · Last modified: 2023/09/26 11:25 by frater_secessus