The Direct Answer: Which Current Source in Circuit Topology Wins?

When you need to drive a high-power LED, bias a laser diode, or charge a small battery pack safely, a simple series resistor fails because it cannot adapt to changes in supply voltage or load forward voltage. You need a true current source in circuit. But which topology should you actually build on your bench?

Here is the decision path to select the right topology based on your target current and precision requirements:

If your requirement is... Choose this Topology Concrete Part Pick
Iout < 20mA, low precision, Vin < 30V JFET Constant Current Diode J310 or 2N5457
Iout = 20mA to 1.5A, high precision, Vin up to 40V Linear Regulator Series-Pass LM317 (TO-220)
Iout > 1.5A, high efficiency required Switching Buck LED Driver AL8860 or TPS92515
Micro-current (< 5mA), ultra-low noise BJT Current Mirror / Wilson Mirror MAT-04 (Matched Quad)
The Default Recommendation: For 90% of hobbyist and bench prototyping tasks—especially LED driving and battery charging up to 1A—the LM317 series-pass topology is the undisputed winner. It requires only one external resistor, offers excellent line regulation, and is virtually indestructible if you respect its thermal limits. The rest of this guide focuses on designing and testing this specific configuration.

Topology Deep-Dive: The LM317 Series-Pass Configuration

Why use an LM317 instead of a simple BJT current mirror or a JFET? A discrete BJT current mirror relies on the base-emitter voltage (Vbe) of the transistors. Vbe has a negative temperature coefficient of about -2mV/°C. As the transistor heats up, the current drifts significantly. JFETs suffer from massive Idss (zero-gate-voltage drain current) binning spread; a J310 datasheet might specify an Idss anywhere from 24mA to 90mA, meaning you cannot design a precise circuit without hand-selecting parts.

The LM317 solves this by using an internal precision bandgap reference. It maintains exactly 1.25V (typical) between its VOUT and ADJ pins, regardless of temperature or input voltage fluctuations. By placing a single resistor between these two pins, Ohm's Law dictates a constant current flows through that resistor, and consequently, through your load.

Node Labels and Wiring

  • Node 1 (Vin): Unregulated DC input (e.g., 12V bench supply).
  • Node 2 (Vout): Regulator output pin. Connects to one side of the set resistor (R_set).
  • Node 3 (Adj): Adjust pin. Connects to the other side of R_set and the anode (positive side) of your load.
  • Node 4 (Load Return): The cathode (negative side) of your load, returning to circuit ground.

In this series-pass configuration, the LM317 acts as a variable resistor that automatically adjusts its internal resistance to keep the voltage drop across R_set pinned at 1.25V. For a deeper look at the internal bandgap physics and error amplifier design, refer to the Texas Instruments LM317 Datasheet and the Analog Devices MT-018 Tutorial.

Design Walkthrough: Building a 350mA LED Driver

Let's design a current source in circuit to drive a standard 3W high-power white LED. The LED has a nominal forward voltage (Vf) of 3.2V and a maximum continuous current rating of 350mA. We will use a 12V DC wall adapter as our Vin.

Step 1: Calculate R_set

The LM317 maintains 1.25V across R_set. To get 350mA (0.35A):

R_set = 1.25V / 0.35A = 3.57Ω

Since 3.57Ω is not a standard E12/E24 resistor value, we select the next closest standard value: 3.6Ω. This yields a current of 1.25V / 3.6Ω = 347mA, which is perfectly safe and within 1% of our target.

Step 2: Resistor Power Rating

Power dissipated by R_set = I² × R = (0.347A)² × 3.6Ω = 0.43W.
A standard 1/4W resistor will overheat and fail. You must use a 1W or 2W metal film or wirewound resistor to ensure it runs cool, which prevents resistance drift.

Step 3: Thermal Management for the LM317

The LM317 must dissipate the remaining voltage as heat. Voltage drop across the LM317 = Vin - Vf(LED) - V(R_set) = 12V - 3.2V - 1.25V = 7.55V.
Power dissipated = 7.55V × 0.347A = 2.62W.
A bare TO-220 package has a junction-to-ambient thermal resistance of roughly 65°C/W. A 2.62W dissipation would cause a 170°C temperature rise, instantly triggering the IC's internal thermal shutdown. You must attach a heatsink. A small extruded aluminum heatsink with a thermal resistance of 15°C/W will keep the temperature rise to a manageable ~39°C above ambient.

Behavior Table: What Changes When Elements Shift?

Element Changed Effect on Circuit Behavior
Vin increases from 12V to 15V Current remains exactly 347mA. The LM317 absorbs the extra 3V, increasing its power dissipation by ~1W.
LED heats up, Vf drops to 2.9V Current remains 347mA. The LM317 absorbs the 0.3V difference.
R_set drifts +5% due to heat Current drops to ~330mA. The LED dims slightly. (Why we use a 1W+ resistor to prevent this).

Failure Modes: What Breaks at the Extremes?

Understanding how a current source in circuit behaves during faults is what separates a working prototype from a melted breadboard. Here is the failure-mode contrast for the series-pass LM317 topology versus a parallel/shunt topology.

Extreme 1: Open Load (Load Disconnects)

  • Series-Pass (LM317): Current drops to zero. The ADJ pin floats, and the Vout pin rises until it hits Vin - Vdrop (roughly 10V in our 12V circuit). The LM317 dissipates zero power because I=0. Result: Safe, no damage.
  • Shunt/JFET Topology: Depending on the exact shunt design, the voltage across the open terminals can spike to the full supply rail, potentially exceeding the breakdown voltage of the JFET or BJT and destroying the component.

Extreme 2: Shorted Load (Load Terminals Touch)

  • Series-Pass (LM317): The circuit attempts to push 347mA through a 0Ω short. The full 12V (minus the 1.25V across R_set) drops across the LM317. Power dissipation spikes to 10.75V × 0.347A = 3.73W. Without a massive heatsink, the LM317 will hit 150°C and enter thermal shutdown, blinking the LED if the short is intermittent. Result: IC survives due to internal protection, but thermal cycling stresses the silicon.
Safety Note: Always include a fast-acting fuse rated slightly above your target current (e.g., 500mA) on the Vin line when testing current sources on a breadboard. If your set resistor fails short, the LM317 will attempt to output its maximum unregulated current, potentially melting your breadboard jumper wires.

Breadboard Testing & Verification Protocol

Do not just plug it in and hope the LED lights up. Follow this step-by-step verification protocol to prove your current source in circuit is regulating correctly before connecting sensitive loads like laser diodes.

  1. De-energize and Wire: With the bench supply OFF and set to 0V, insert the LM317 into the breadboard. Wire the 3.6Ω 1W resistor between the Vout (Pin 3) and Adj (Pin 1) of the LM317. (Note: Pinout is Adj, Vout, Vin when viewing the front face with pins down).
  2. Connect the Dummy Load: Instead of your expensive LED, wire a standard 10Ω 5W power resistor between the Adj pin and Ground. This simulates a load and allows safe meter probing.
  3. Set Vin: Turn on the bench supply and slowly dial it to 12V. Verify the input current on the bench supply display reads roughly 0.35A.
  4. Verify the Reference Voltage: Set your digital multimeter (DMM) to DC Volts. Place the red probe on the LM317 Vout pin and the black probe on the Adj pin. You should read exactly 1.25V (±0.05V). If you read 0V or Vin, your resistor is open or the IC is wired backward.
  5. Verify the Current: Switch the DMM to DC Amps (using the 10A fused jack). Break the ground connection of your dummy load and insert the DMM in series. The reading should be 347mA ±10mA.
  6. Test Line Regulation: Increase the bench supply to 15V. Watch the DMM current reading. It should not change by more than 2mA. If it jumps significantly, your LM317 may be oscillating (add a 1µF ceramic capacitor directly between Vin and GND to fix this).
  7. Swap to Real Load: Power down, remove the dummy resistor, and wire in your high-power LED. Ensure the LED is mounted to a star PCB or heatsink, as a bare LED die will overheat in seconds at 350mA.

Topology Comparison Matrix

To finalize your design knowledge, here is how the LM317 stacks up against the alternatives for general bench use. For more foundational theory on active semiconductor current limits, consult the All About Circuits semiconductor textbook.

Criteria LM317 Series-Pass JFET (J310) Discrete BJT Mirror
Component Count 2 (IC + 1 Resistor) 1 (Just the JFET) 4+ (Matched pair + bias resistors)
Precision High (±1% bandgap) Low (±30% Idss spread) Medium (Depends on Vbe matching)
Min. Operating Current ~10mA (Needs min load) ~1mA < 1µA possible
Thermal Drift Very Low Low High (-2mV/°C per Vbe)
Dropout Voltage ~2.5V to 3V ~1.5V (Pinch-off) ~0.7V (Vce_sat)

While the JFET wins on sheer simplicity and the BJT mirror wins on ultra-low voltage headroom, the LM317 remains the most robust, predictable, and easily calculable current source in circuit for anyone building power electronics, LED drivers, or battery chargers on the bench. Grab a TO-220 heatsink, calculate your R_set, and you will have a bulletproof constant current supply in under ten minutes.