[sdiy] digitally controlled potentiometers

Heiko van der Linden hjvanderlinden at hotmail.com
Sun May 6 19:01:09 CEST 2007


Hi All,

I have been working recently on digitally controlled potentiometers.
The idea is to be able to use these potentiometers as drop-in replacements
for cloning projects and new synth projects. The potentiometers will be
controlled by a rotary encoder on the panel of the synth or by MIDI and a
supervisory microcontroller. This will make it possible to make real analog 
synths
that have patch memory and will be able to dump the movements of the knobs
as automation tracks via MIDI.

Looking into existing solutions I did not really find anything that I liked.
Motorized potentiometers would be really nice to have but these are
really expensive ! Another option would be the digital potentiometer
ICs that are prevalent on the market. But most of these ICs have standard
values and a much too low resolution. I am looking at 12 bits or higher and
would like to go to 16 bits to allow very accurate tracking of the movements
of a potentiometer.

So... I have started to take my own approach to these potentiometers.
The approach is pretty standard I guess. Basically I have a number of
resistors in series or parallel and their values increase in a binary 
fashion.
The lowest resistor is R, than 2R, 4R, 8R etc. I want to use digitally 
controlled
switches to bypass the resistors and thus increase or decrease the 
resistance
according to a digital value. The problem that I have found thus far is that
I could not find suitable switching components to allow a truely bipolar 
signal (10Vpp)
to pass through the bypass switches. If I use BJTs and MOSFETs these will
undergo unwanted conduction during the negative cycle of a signal. (Hence
my earlier question about switching of audio signals).
One option that I can see at the moment is using reed relays, but these have
slow switching speeds which do not allow the potentiometer to follow rapid 
knob
movements. And of course the reed relays are expensive, make switching noise 
and
the method is patented.
Another option was suggested by Ian Fritz: to use to mosfets connected 
together
by the sources. http://www.zetex.com/3.0/appnotes/design/dn3.pdf
And a furtherl method was suggested by ASSI. He suggested to use control 
gates like
the DG4xx series. I can see problems with both methods. The first method 
will result
in a voltage loss due to the forward diode drop over the substrate diode and 
probably
also in deterioration of the sound passed through this circuit. The second 
method
has the problem that the Ron of the switched in the control gates is quite 
high (60 Ohm).
If I want to make potentiometers with a high resolution the lowest 
resistance value (R)
is (very) low (in the range of 1 to a few Ohms). So this will not work.

Finally I have a third option which would be to voltage shift the incoming 
signal such that
the signal stays positive during the entire cycle. Then I would not need to 
use switching
solutions , which allow bipolar signal processing. But such a solution would 
mean that the
potentiometer is not truely bidirectional. Feeding a signal through the 
potentiometer in one
way would work, but not in the other way since the levelshifter opamps work 
only one way.

Am I doing things the wrong way and are there good commercial (and cheap) 
alternatives
to make digital potentiometers or is it just hard ? ;-) I really would like 
to make these
components because I think they will be very interesting for the 
construction of analog
synths and would be a nice addition to the pool of circuits for synths 
already floating on
the net !

Heiko

P.S. I forgot to mention that I know that MOSFETs can be used as linear 
resistors if driven
with a small signal, but this hardly seems viable to act as a drop-in 
replacement for pots in
existing synths. I also know that vactrols have been used as some sort of a 
voltage controlled
potentiometer, but they seem to be too non-linear and also not the real 
drop-in solution.

_________________________________________________________________
Exercise your brain! Try Flexicon. 
http://games.msn.com/en/flexicon/default.htm?icid=flexicon_hmemailtaglineapril07




More information about the Synth-diy mailing list