[sdiy] Hi / search? / programmable resistor for VCO?

cs80 at therogoffs.com cs80 at therogoffs.com
Tue Jan 7 05:24:48 CET 2014

Hi all.

Thought I was already subscribed here but I guess not…   I have an idea/questions about a digitally controlled resistor for a VCO.

First, sorry if this has been discussed, but I don’t see how to search the archives other than going through the threads month by month.  Is there a way to search like on AH (and most other mailing lists)?

Anyway, on to the topic.  Your typical linear oscillator is going to have a frequency proportional to V(or I) / R*C.  Usually, the conversion for expo / 1v/oct control is done on the voltage/current input.  However, inspired by the weird Yamaha IG00153 VCOs in the CS80/60/50, I was looking at controlling the resistance.  In these synths, the keyboard/DAC generate exponential CVs for the VCO’s linear input.  However, this has a limited range and the octave switching is done by selecting different resistances to ground using FETs and some extra circuitry to clean up offsets.  The lowest range (16’) uses 80k, and halves the resistance for each octave above.  To deal with resistors not being perfect and other non-ideal stuff, there’s a trim-pot for each octave range.  And this is repeated for each VCO - a total of 4 * 16 trimmers for a CS80!

Besides being a pain to tune, this scheme also is limited to a few fixed tunings.  There’s no way, for example, to detune the oscillators by a third or seventh.  So, I’ve been thinking of ways to make the resistance have a lot more steps in order to support and tuning offset and to have small enough steps to allow auto-tuning to correct the resistance curve.

Ideally, the resistance would drop exponentially with the digital code so that the code is linear with notes like a 1v/oct voltage.  At first, I looked at the funky exponential DAC resistor ladder on the made key-scanning board (KAS).  This would work but it’s one-hot with a ladder step per voltage step.  If I wanted a 4-octave range (like the existing circuit) and about 16 steps per semi-tone to be able to correct the curve, I’m looking at a 768-step ladder!  Per VCO!!  Even with 16:1 CMOS muxes, that’s 48 24-pin muxes + 1500 precision resistors and misc decode logic per VCO!

Then I looked at digital Pot chips like the AD5241.  It’s got 1024 steps of resistance programmable.  However, it’s linear.  Therefore, at the higher frequencies, I’m not going to have much resolution :(

Then I started messing with r-2r ladders used in DACs.  I made a spreadsheet to calculate the resistance and by screwing around with the values, I can actually get a response resembling the negative exponential resistance I want.  However, I can’t get enough range and there are some glitches in the curve. I’m not too up on the theory and it’s been many years since I’ve had to do super-positioning of sources and Thevinin-equivalent circuits so I’m mostly changing parameters at random…

Any ideas on this?  Anyone know of parts like the AD but with exp/log response - maybe designed for audio use / attenuators?  Any more knowledgable info on resistor ladders?

Thanks much for any ideas and/or pointers!

Happy Analog New Year!


More information about the Synth-diy mailing list