Solar charge controller: How it works and what size you need

Updated

A solar charge controller sits between your solar panels and your battery bank. It takes whatever the panels produce, turns it into the voltage and current the batteries need, and stops charging when they’re full so they’re never overcharged. Most also stop the batteries draining back into the panels at night. Any system that charges batteries from solar panels needs one.

To choose one, you make two decisions: the type (MPPT or PWM) and the size. For sizing, take your array’s watts, divide by the battery voltage and multiply by 1.25. Then check that the array’s voltage on the coldest morning stays below the controller’s input limit. This guide covers both decisions, a worked example, the settings to get right and how to wire a controller safely.

MPPT vs PWM

There are two kinds of solar charge controller, and they handle the panels’ voltage differently.

PWM (pulse-width modulation) controllers connect the panels more or less directly to the battery and switch the connection on and off rapidly to control charging. That pulls the panels down to the battery’s voltage. A “12 V” panel actually produces its best power at around 18 V, but on a PWM controller charging a 12 V battery it works at roughly 13 to 14 V, and the power it could make at the higher voltage is lost.

MPPT (maximum power point tracking) controllers keep finding the voltage at which the panels produce the most power. They then convert that higher voltage down to the battery’s voltage, which raises the charging current. Little of the panels’ power is wasted, and you can wire panels at a much higher voltage than the battery.

PWM MPPT
How it charges Pulls panel voltage down to battery voltage Converts high panel voltage into extra charging current
Energy harvest Lower; the panels’ extra voltage is wasted Higher, often cited as 10 to 30% more
Panel voltage Must closely match the battery Can be several times the battery voltage
Cold weather No gain Gains more, because panel voltage rises in the cold
Long cable runs Need thick cable at low voltage Higher array voltage allows thinner cable
Typical use Small 12 V systems, one or two panels Most systems over a few hundred watts
Cost Low Higher

When PWM is enough: a small 12 V system, such as a shed light, a trickle charger for a vehicle battery or a camper with one or two 100 W panels. That works as long as the panels are “12 V” panels matched to the battery. PWM costs less, and in a system that small, the energy you’d gain with MPPT may not pay for the difference.

When to choose MPPT: almost everything else. That includes any array over a few hundred watts, any system wired at a higher voltage than its battery, large residential-style panels (whose voltage is too high to match a 12 V battery), long cable runs and cold climates.

What size charge controller do you need

Charge controllers are rated by the current they can deliver to the battery, in amps, and by the highest panel voltage they can accept. Check both.

1. Current. Divide the array’s total watts by the battery bank’s voltage, then add a 25% safety margin:

Controller amps = array watts ÷ battery voltage × 1.25

Round up to the next controller size on the market. The same array needs half the controller current on a 24 V battery as on a 12 V one, which is one reason larger systems use higher battery voltages. Many MPPT controllers will also accept an array bigger than their rating and simply cap their output at the rated current. The manual lists the largest array that’s allowed.

2. Input voltage. Every controller has a maximum PV input voltage, and exceeding it can destroy the controller. The voltage to check is the array’s open-circuit voltage (Voc), which is what the panels produce with nothing connected. Voc rises as the panels get colder, so check it at the coldest temperature your site sees:

Cold Voc per panel = Voc × (1 + temperature coefficient of Voc × (25 − coldest temperature in °C))

Use the panel datasheet’s Voc and its temperature coefficient of Voc, which is listed as a negative percentage per °C. Enter the coefficient as a positive decimal, so −0.28%/°C becomes 0.0028. Panels wired in series add their voltages, so multiply by the number of panels in each series string. The result must stay below the controller’s maximum input voltage, with some margin to spare. How you wire the panels sets both the array voltage and its current, so plan the wiring and the controller together. Our guide to how to wire solar panels compares series, parallel and series-parallel layouts.

Worked example

Here’s a hypothetical system, with round numbers for illustration:

Input Value
Panels 3 × 200 W, wired in series
Panel Voc (datasheet) 24 V
Temperature coefficient of Voc −0.28%/°C
Coldest expected temperature −10°C (14°F)
Battery bank 24 V

Current: 600 W ÷ 24 V × 1.25 ≈ 31 A, so a 40 A controller covers it. On a 12 V battery, the same array would need about 63 A.

Input voltage: the panels will be 35°C colder than the 25°C test temperature on the coldest morning. Each panel’s Voc rises by 35 × 0.28% ≈ 9.8%, from 24 V to about 26.4 V. Three in series reach about 79 V, safely under a controller with a 100 V maximum input. A fourth panel in the same string would push it to about 105 V, which is over that limit. To add a fourth panel, you’d either need a controller rated for a higher voltage or wire the panels as two strings of two in parallel.

That makes this system’s controller a 40 A MPPT unit with an input limit of at least 100 V. A PWM controller wouldn’t work here, because the string voltage is far above the battery’s.

Settings to get right

A controller set up wrong can undercharge your batteries or shorten their life. (If you haven’t chosen your batteries yet, our guide to building a solar battery bank compares lithium and lead-acid.) Before you connect anything, check these settings against your battery’s datasheet:

Wiring order and safety

Most controllers detect the system voltage when the battery is connected, so connection order matters:

  1. Connect the battery first. Wire the controller to the battery bank, with a fuse or breaker on the positive cable close to the battery. Check that the controller recognizes the right battery voltage.
  2. Connect the panels second. With the panel disconnect switched off, or the panels covered, wire the array to the controller’s PV input. Then switch the disconnect on.
  3. Disconnect in reverse. Disconnect the panels first and the battery last. Disconnecting the battery while the panels are live can damage some controllers.

Put overcurrent protection on both sides: between the controller and the battery, and between the array and the controller when the array is large enough to need it. Add a DC disconnect so you can isolate the panels. Size the cables for the controller’s rated current, mount the controller somewhere ventilated and keep it near the batteries, as the manual directs. Remember that the panels produce voltage whenever light hits them.

For where the controller fits in a whole system, from your load list to the inverter, see our guide to planning and building a DIY solar system. The next part to choose is the inverter: our guide to sizing an off-grid inverter covers running and surge watts, sine wave types and battery voltage.

Frequently asked questions

Do I need a charge controller?

Yes, if your panels charge a battery. Without one, the panels can overcharge the battery and damage it. The only common exception is a very small trickle-charging panel, of a few watts, on a large battery, but any system meant for real use needs a controller. Grid-tied systems without batteries don’t use one, because their inverter feeds the grid directly.

Can a charge controller be too big?

No. A controller larger than you need works fine. It only delivers what the panels produce, and the extra capacity leaves room to add panels later. The only downsides are cost and size. A controller that’s too small is the problem: it either caps the charge or can be damaged, depending on the model.

Is an MPPT charge controller worth it?

For most systems over a few hundred watts, yes. It harvests more of each panel’s power, lets you wire panels at a higher voltage, which allows thinner cable, and works with large residential panels. For one or two small 12 V panels on a 12 V battery, a PWM controller is often good enough.

Can I connect solar panels directly to a battery?

Not for regular use. Without a controller, nothing stops the panels from overcharging the battery or the battery from draining back through the panels at night. Use a charge controller sized for the array and set to your battery’s type.