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:
| Symbol | Meaning |
|---|---|
| Pm (Pmax) | Maximum power, the top of the power curve |
| Vmp (Vpm) | Voltage at maximum power |
| Imp (Ipm) | Current at maximum power |
| Voc | Open-circuit voltage — the highest voltage the module can produce, with no current flowing |
| Isc | Short-circuit current — the highest current, with the terminals shorted |
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.
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
| PWM | MPPT | |
|---|---|---|
| Operating principle | Switch that connects the array directly to the battery; the array is pulled down to battery voltage | DC-DC converter that runs the array at its maximum power point and converts to battery voltage |
| Energy harvested | Baseline | Typically 10-30% more, up to 40% on cold days |
| Array voltage | Must 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 runs | Large wire, short distance | Smaller wire, long distance at high voltage |
| Cost | Low | Higher, but usually cheaper per watt harvested above a few hundred watts |
| Best for | Small 12 V systems, lighting, tight budgets | Any system above ~300 W, solar home systems, pumps, telecom, off-grid microgrids |
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:
- Battery voltage. Fix the nominal battery voltage the controller will charge — 12, 24 or 48 V (or higher for large systems).
- 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).
- Pick the model whose maximum charge current covers that number.
- 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).
- 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.
