Anyone know where to source an audio or logarithmic taper potentiometer in the 50 or 100'ish ohm range ? Mouser and Digikey don't show anything, even non-stocked. I'd like to build an adjustable current source with an LM317, and the current is proportional to the reciprocal of the adjustment resistor - so a linear taper is far from ideal. Thanks !

  • \$\begingroup\$ You can create a "pseudo-log" pot with a linear pot and a fixed resistor. \$\endgroup\$
    – uint128_t
    Jan 21, 2016 at 5:36
  • \$\begingroup\$ this is probably not a good way to build an adjustable current source, all that current through the wiper won't be good for the pot. \$\endgroup\$ Jan 21, 2016 at 8:35
  • \$\begingroup\$ As long as I've within the pot's ratings it seems like it should be ok, no ? \$\endgroup\$ Jan 21, 2016 at 22:14

2 Answers 2


This might be an option: -

enter image description here

It can be a very accurate constant current source and relies on the fact that the op-amp takes an input voltage referenced to the positive supply voltage rail (Vin) and, by op-amp action, supplies enough base current to the transistor to ensure that that voltage also appears across R1.

This means that the current through R1 is Vin/R1 and that the current through your load is also the same current (plus a little bit of base current). I normally expect the current output to be accurate to within 0.5% of the demand voltage (Vin) and the resistor value R1. So, if you need accuracy make R1 a 0.1% resistor.

There is also a version of this that can use a P channel MOSFET. Here's one that is dual stages to give you the control voltage referenced to the 0V rail: -

enter image description here

An LM317 is OK as a current source but it isn't very accurate and will tend to drift with temperature. It also needs a couple of volts headroom between input and output voltage to do the job properly. There is also a minimum current that you cannot get below due to the device needing a couple of mA to actually work (this flows into the load). Also, as a dynamic current source it's impedance is not very good at high frequencies.

  • \$\begingroup\$ Thanks. I've been doing digital design too long. I don't particularly need high accuracy and I certainly don't care about high frequencies. But I do care about simplicity and low cost, and the first circuit certainly provides that. And it's linear with Vin, which I can generate with a low power pot between Vsupply and GND. \$\endgroup\$ Jan 22, 2016 at 1:37
  • \$\begingroup\$ Back to this ... On the PNP circuit, it's tempting to omit the op-amp feedback loop. Vsupply will be 30vdc or so, so the 1v or base-emitter diode drop isn't much of a bother. But too, I need to be able to dissipate 10 watts or so in the BJT (I want the current to be adjustable up to 350ma, driving series LED strings) and it's possible I'll only have one LED in string (so transistor would drop almost full 30v). That means I need a device that can use a good heatsink, like in a TO-220 package, so base current might be 10ma or so. Which complicates generating Vin a little. \$\endgroup\$ Feb 3, 2016 at 4:41
  • \$\begingroup\$ It won't regulate as precisely without the op-amp. If you have a 30V supply then maybe you can use a buck regulator in front of the transistor that optionally drops the voltage to something more heat-manageable. This is the first time you've mentioned that a LED is the load and you can get pretty good switching regulators that are very efficient at driving a fixed current thru a string (or one) LED(s). \$\endgroup\$
    – Andy aka
    Feb 3, 2016 at 8:09
  • \$\begingroup\$ Andy, yeah I know about the LED-specific ones you can buy. I don't like the one I tried (Luxdrive BuckPuck): $14 or so, a lot more expensive that a transistor and an op-amp. Worse, does not dim very well to low levels (just glitchily cuts off at about 20%). Silly to think I can do better with 2-3 components, but sure seems like it. \$\endgroup\$ Feb 3, 2016 at 20:01
  • \$\begingroup\$ Most of the time I'll have a lot closer to a full load (8-9 LEDs), so I don't care that much about the waste; I just need to not burn up if there's only 1-2. I want to keep it simple and don't care much about precision. Also having difficulty spec'ing an op-amp; needs to be single supply (say 32vdc and GND), which it doesn't seem like a lot of them want voltages that high. \$\endgroup\$ Feb 3, 2016 at 20:03

Grab something called an "audio L-pad".

This is a device intended to allow adjustable level control for a 8-ohm loudspeaker.

This device contains two separate adjustable resistance elements arranged so that the input impedance of the pad remains constant as the level to the speaker is changed.

I don't remember the details of exactly how I wired those resistance elements but I do recall that I was able to do what you are trying to do.

It's worth checking out.

  • \$\begingroup\$ Thanks. Isn't the resistance going to be 8 ohms though (or maybe 4 or 16) ? I need considerably higher, in order to be able to dial the current down to 10 or 20ma (when LM317 is configured as current source, current is 1.25 divided by adjustment resistance). \$\endgroup\$ Jan 21, 2016 at 8:06

Not the answer you're looking for? Browse other questions tagged or ask your own question.