Solar PV

Basics of MPPT Solar Charge Controllers — What MPPT Is, How It Works, MPPT vs PWM, and How to Size One

September 6, 2026LEONICS Engineering Team10 min read
Basics of MPPT Solar Charge Controllers — What MPPT Is, How It Works, MPPT vs PWM, and How to Size OneSolar PV

What is MPPT?

MPPT — Maximum Power Point Tracking — is an algorithm built into solar charge controllers (and into grid and hybrid inverters) that extracts the maximum available power from a PV module under whatever conditions it is operating in.

A PV module does not deliver constant power. At any moment there is one voltage at which its output is highest, the maximum power point (Vmp, or peak power voltage), and that point moves with solar irradiance, ambient temperature and cell temperature. A module rated at Vmp = 41 V under standard test conditions (25°C cell temperature) may sit near 36 V on a hot afternoon and rise past 44 V on a cold, clear morning. A charge controller that simply clamps the array to battery voltage — the old PWM approach — never operates at that point and throws part of the available power away. MPPT finds the point and stays on it.


The I-V curve: where the power is

Every module is described by an I-V curve: current on the vertical axis, voltage on the horizontal. Five numbers define it:

SymbolMeaning
Pm (Pmax)Maximum power, the top of the power curve
Vmp (Vpm)Voltage at maximum power
Imp (Ipm)Current at maximum power
VocOpen-circuit voltage — the highest voltage the module can produce, with no current flowing
IscShort-circuit current — the highest current, with the terminals shorted
Measured at 1,000 W/m² and 25°C the curve is the datasheet curve. At 100 W/m² — heavy cloud — the current collapses to about a tenth while the voltage falls only a little, so the maximum power point moves. MPPT controllers sweep or perturb the operating voltage many times a second to follow it.

How MPPT works

The controller measures the array's output, compares it with the battery voltage, determines the best power the array can produce at that instant, and converts it to the voltage that pushes the most current into the battery. It also supplies DC loads connected directly to the battery.

Electrically, an MPPT controller is a DC-to-DC converter. It takes DC from the array at Vmp, chops it into a high-frequency AC waveform, and converts it back to a different DC voltage and current that match the battery exactly. Two converter topologies are used:

  • Buck converter — the array voltage is *higher* than the battery voltage, and the controller steps it down. This is the normal case: the array runs at 60-150 V into a 12, 24 or 48 V battery. Nearly all controllers for battery banks up to 48 V are buck types.
  • Boost converter — the array voltage is *lower* than the battery voltage and the controller steps it up. Used with high-voltage battery banks or very small arrays.
The gain is simple arithmetic. An array producing 900 W at 82 V delivers 11 A. A buck MPPT controller feeding a 48 V battery converts that to about 18 A at 48 V (minus a few percent of conversion loss) — 60% more charging current than the array itself produces.

MPPT gives the most benefit when:

  • The weather is cold, cloudy or hazy. Modules produce more voltage in the cold, and MPPT captures it; under cloud the maximum power point moves the most.
  • The battery is deeply discharged. A low battery voltage widens the gap between Vmp and battery voltage, and MPPT converts all of that gap into extra current.
  • Modules are wired in series for a higher array voltage than the battery.

MPPT vs PWM charge controllers

PWMMPPT
Operating principleSwitch that connects the array directly to the battery; the array is pulled down to battery voltageDC-DC converter that runs the array at its maximum power point and converts to battery voltage
Energy harvestedBaselineTypically 10-30% more, up to 40% on cold days
Array voltageMust match the battery (12 V array → 12 V battery)Can be higher than the battery — modules in series, "60-cell" or "72-cell" modules on a 12/24 V bank
Cable runsLarge wire, short distanceSmaller wire, long distance at high voltage
CostLowHigher, but usually cheaper per watt harvested above a few hundred watts
Best forSmall 12 V systems, lighting, tight budgetsAny system above ~300 W, solar home systems, pumps, telecom, off-grid microgrids
LEONICS supplies both: PWM charge controllers for small systems and MPPT charge controllers with 1,500 Vdc models for utility-scale DC-coupled storage.

Main features of an MPPT charge controller

  • Tracks the I-V curve of any PV module and corrects for its variations with temperature and irradiance.
  • Forces the module to operate near its maximum power point, harvesting all available power.
  • Accepts an array voltage higher than the battery, so modules can be wired in series and placed far from the controller with a small cable — the power arrives at low current and low loss.
  • Reduces system complexity while keeping efficiency high: the array output directly drives the converter, and the same controller can accept other DC sources such as small wind or hydro turbines.
  • Protects the battery — three-stage charging (bulk, absorption, float), temperature compensation, over-charge and over-discharge cut-off, reverse-polarity and surge protection. Modern units add a low-voltage disconnect for DC loads, a timer for lighting, and a communications port for monitoring.

How to size an MPPT charge controller

Controllers are specified by nominal battery voltage and maximum charge current, with a maximum PV input voltage and an MPPT voltage window. The steps:

  1. Battery voltage. Fix the nominal battery voltage the controller will charge — 12, 24 or 48 V (or higher for large systems).
  2. Charge current. Charge current (A) = array Wp ÷ battery voltage. Multiply by a safety factor of 1.2 (the NEC-style margin for irradiance above 1,000 W/m² and cold-weather output).
  3. Pick the model whose maximum charge current covers that number.
  4. Check the string voltage. With modules in series, Vmp(system) = Vmp(module) × modules in series, and Voc(system) = Voc(module) × modules in series. Vmp must sit inside the controller's MPPT window; Voc must stay below its maximum input voltage — at the coldest temperature the site sees, because Voc rises as temperature falls (about +0.3% per °C below 25°C for silicon).
  5. Parallel strings add current, not voltage: Isc(system) = Isc(module) × strings. Check it against the controller's maximum PV input current if one is specified.

Example 1 — solar home system

Array: 2 × 450 Wp modules in series (Vmp 41 V, Voc 49 V each). Battery: 48 V LFP.

  • Charge current = 900 ÷ 48 = 18.75 A × 1.2 = 22.5 A → choose a 48 V / 30 A controller
  • Vmp(system) = 82 V, Voc(system) = 98 V; on a 10°C morning Voc ≈ 98 × 1.045 ≈ 102 V → the controller needs a maximum PV input of at least 150 V

Example 2 — off-grid pump or telecom site

Array: 6 × 450 Wp (2,700 Wp) as 3 strings of 2. Battery: 48 V.

  • Charge current = 2,700 ÷ 48 = 56 A × 1.2 = 67.5 A → choose a 48 V / 70-80 A controller, or two 48 V / 40 A controllers each on its own sub-array — the common choice for redundancy
  • String voltage as in Example 1 (82 V / 98 V); three strings in parallel deliver Isc ≈ 3 × 11.5 A = 34.5 A into the controller input

Example 3 — 12 V lighting system

Array: 1 × 200 Wp module (Vmp 20 V, Voc 24 V). Battery: 12 V.

  • Charge current = 200 ÷ 12 = 16.7 A × 1.2 = 20 A → a 12 V / 20 A controller
  • Voc 24 V is far below any controller's input limit; at this size a PWM unit is also acceptable, but an MPPT unit will harvest 15-20% more in the cool season

Frequently asked questions

What does MPPT stand for?

Maximum Power Point Tracking — the control method that keeps a PV array operating at the voltage where it produces the most power, then converts that power to the battery's voltage.

How much more energy does MPPT give than PWM?

Typically 10-30% over a year, and up to 40% on cold or overcast days when the array's maximum-power voltage is far above the battery voltage. The gain is smallest on hot afternoons with a full battery.

Can I connect a 24 V solar panel to a 12 V battery with MPPT?

Yes. That is one of MPPT's main advantages: the controller steps the higher array voltage down to the battery voltage and turns the surplus voltage into extra current. With PWM you would lose roughly half the module's power.

How do I choose the amp rating of an MPPT controller?

Divide the array's total watt-peak by the nominal battery voltage and multiply by 1.2. A 900 Wp array on 48 V needs 900 ÷ 48 × 1.2 = 22.5 A, so a 30 A controller.

What is the maximum PV voltage of a charge controller?

The highest open-circuit voltage the controller's input can withstand — typically 100, 150 or 250 V for battery-bank controllers and up to 1,500 V for utility-scale DC-coupled units. Check the string's Voc at the site's lowest temperature against it.

Do I need an MPPT controller with a hybrid inverter?

No. Hybrid inverters such as the LEONICS MTP-620x have MPPT built into their PV input; a separate controller is only needed in DC-coupled systems where the array charges the battery directly.

Summary

MPPT is the difference between an array that delivers what its datasheet promises and one that delivers what the battery voltage allows. The controller tracks the maximum power point as light and temperature change and uses a DC-DC converter to turn every spare volt into charging current — more energy, higher array voltages, thinner cables and better battery care. Size it from the array's Wp and the battery voltage, then check the string's Voc on the coldest morning.

See the LEONICS MPPT charge controllers, the PWM range for small systems, or go back to the solar PV system design guide for the rest of the system.

Interested in the products mentioned?

LEONICS engineers are ready for a free consultation.