If you need to drive a high-power LED string, charge a lithium cell, or run an electroplating bath, you need a constant current regulator (CCR). The direct answer for 90% of modern bench and commercial builds is this: use a switching buck CCR like the Diodes Inc AL8860 for any load over 350mA. Linear regulators like the LM317 are only viable for low-current lab prototypes or noise-sensitive analog circuits where thermal dissipation is under 1.5W. Below, we break down the exact topology math, thermal limits, and a concrete 1A design example so you can stop guessing and start soldering.
Linear vs. Switching Topologies for Constant Current Loads
Choosing between linear and switching topologies dictates your PCB footprint, heatsink requirements, and electromagnetic interference (EMI) profile. Linear CCRs act as variable resistors, burning off excess voltage as heat. Switching CCRs use high-frequency pulse-width modulation (PWM) and an inductor to transfer energy, maintaining current with minimal thermal loss.
| Criteria | Linear CCR (e.g., LM317, LM334) | Switching Buck CCR (e.g., AL8860, PT4115) |
|---|---|---|
| Efficiency | Low (30% - 60%). Scales linearly with Vout/Vin ratio. | High (85% - 95%). Largely independent of dropout voltage. |
| Heat Dissipation | High. Requires bulky aluminum extrusion heatsinks for >1W. | Low. Typically handled by the IC's exposed thermal pad and PCB copper. |
| Output Noise/Ripple | Extremely low (<1mA ripple). Ideal for precision laser diodes. | Moderate (10% - 30% peak-to-peak current ripple at switching frequency). |
| Component Cost | ~$0.40 (IC) + $1.50 (Heatsink) + passives. | ~$0.15 (IC) + $0.20 (Inductor) + passives. No heatsink needed. |
| Best Application | < 100mA loads, audio/analog biasing, lab testing. | > 350mA loads, high-power LEDs, battery charging. |
Dropout, Headroom, and Thermal Derating Math
Before picking a part, you must calculate the dropout voltage and resulting thermal load. Dropout is the minimum voltage the regulator needs between its input and output to maintain regulation. For a linear CCR, the power dissipated as heat is calculated as:
P_dissipated = (V_in - V_out) × I_out
Switching regulators have a different headroom requirement. A buck CCR like the AL8860 requires a minimum dropout of about 0.5V to 1.0V to keep the internal MOSFET fully enhanced and the current sense amplifier in range. However, because it switches, the heat generated is based on conduction and switching losses, not the raw voltage drop. A 3V drop at 1A in a switching regulator yields roughly 0.3W of heat, compared to 3W in a linear regulator.
Worked Design Example: 1A LED Driver from 12V
Let's design a constant current regulator to drive a string of three Cree XP-G3 LEDs (nominal V_f = 3.1V each, total V_out = 9.3V) at exactly 1.0A from a 12V nominal (11.5V to 14.4V) automotive or solar battery source.
| Parameter | Specification | Notes |
|---|---|---|
| Input Voltage (V_in) | 11.5V - 14.4V DC | Nominal 12V lead-acid / LiFePO4 battery range. |
| Output Voltage (V_out) | 9.3V (nominal) | 3x Cree XP-G3 in series. |
| Target Current (I_out) | 1.0A | Continuous DC forward current. |
| Selected Topology | Switching Buck CCR | Linear would dissipate (12-9.3)*1 = 2.7W (requires large heatsink). |
Component Selection & Math:
- IC: Diodes Inc AL8860. It handles up to 40V input and 1.5A continuous output, costing roughly $0.18 in single quantities.
- Sense Resistor (R_sense): The AL8860 regulates current by maintaining 0.1V across the sense resistor.
R_sense = 0.1V / 1.0A = 0.1Ω. Use a 0.1Ω, 1% tolerance, 0.5W surface mount resistor (e.g., 1206 package). - Inductor (L): We want a peak-to-peak current ripple of roughly 20% (0.2A). Assuming a switching frequency (f_sw) of 500kHz:
L = (V_in - V_out) / (ΔI × f_sw) = (12V - 9.3V) / (0.2A × 500,000) = 27μH.
Select a standard 33μH shielded ferrite inductor rated for at least 1.5A saturation current (e.g., Wurth 744774333). - Freewheeling Diode: Use a 40V, 1A Schottky diode like the 1N5819 or SS14. Do not use a standard 1N4007; its slow reverse recovery time will cause massive switching spikes and destroy the IC.
The Decision Tree: Which Constant Current Regulator to Pick
Stop debating topologies in the abstract. Follow this decision path to lock in your BOM.
| Condition | Then Choose... | Concrete Part Number |
|---|---|---|
| I_out < 50mA AND low noise is critical (e.g., laser diode, sensor bias) | Linear CCR (2-terminal) | Onsemi LM334Z (Adjustable 10mA-100mA) |
| I_out < 300mA AND V_in - V_out < 2V (low thermal load) | Linear CCR (3-terminal) | Texas Instruments LM317L (SOIC-8 package) |
| I_out > 350mA AND V_in > V_out (Standard LED / Battery) | Switching Buck CCR | Diodes Inc AL8860 (Up to 1.5A, 40V max) |
| V_in < V_out (e.g., driving 12V LED from 5V USB) | Switching Boost CCR | Texas Instruments TPS61088 (Configured in CC mode) |
| V_in range spans above and below V_out (e.g., 12V battery draining to 9V, LED is 10V) | Switching Buck-Boost CCR | Analog Devices LT3795 (LED controller, requires external FETs) |
Default Recommendation: For general-purpose maker, automotive, and solar lighting projects operating between 10V and 30V, standardize your inventory on the AL8860. It requires minimal external components, survives automotive load-dump transients better than bare linear regulators, and eliminates the need for mechanical heatsinks.
Input Protection and Ripple Management
A constant current regulator will only perform as well as its input stage. Switching CCRs draw pulsed current from the source, which can cause input voltage sag and radiate noise back into your power rail.
Input Range and Protection:
Always place a 10μF to 22μF X7R ceramic capacitor directly across the VIN and GND pins of the switching IC. This provides the high-frequency pulsed current the inductor demands, preventing the input voltage from dipping below the IC's undervoltage lockout (UVLO) threshold. If your CCR is connected to an automotive or long-wire solar source, add a bidirectional TVS diode (like the SMAJ15CA) at the board input to clamp inductive kickback and load-dump spikes before they breach the IC's absolute maximum voltage rating.
Ripple and Noise Expectations:
Unlike constant voltage supplies where you measure output voltage ripple in millivolts, CCRs are evaluated on current ripple. A well-designed switching buck CCR using the 33μH inductor calculated above will exhibit roughly 15% to 20% peak-to-peak current ripple. For a 1A nominal drive, the LED current will swing between 0.9A and 1.1A at 500kHz. Human eyes cannot perceive flicker at 500kHz, and the thermal mass of the LED die smooths out the temperature variations. However, if you are using the CCR to power a sensitive analog load or an electroplating bath where pure DC is required, you must either increase the inductor value to 100μH+ (lowering the ripple to <5%) or add a secondary LC pi-filter on the output, accepting the penalty of increased PCB area and potential control-loop instability.
For deeper theoretical background on current source stability and loop compensation, refer to the foundational design guides on constant current source design at All About Circuits and the Texas Instruments LED driver topology overviews.






