[sdiy] Control voltages for digital modules

paula at synth.net paula at synth.net
Fri Jul 14 15:14:45 CEST 2017


Elaine,

> Here's the problem: how do I get a pitch CV from a sequencer or other 
> module converted to the 0-5 volt input necessary for the 
> microcontroller ADC.

so, for this you need to understand what the resolution of the micro's 
ADC is, and also the error (in number of bits).
for example, you could have a 14 bit ADC (awesome) but it could have 5 
bits of error (booo), giving you a "reliable" 9 bit ADC.

If you're doing Pitch CV from a modular this is typically 1v/oct. Let's 
assume you have a 10 octave range (same as MIDI), then you'll need 7 
bits to get every semitone.
But these need to be a REALLY accurate 7 bits. Typically I'd look to use 
a minimum of a 12 bit ADC with an error no greater than 1 bit to give an 
accurate CV.

Now, to go back a step, 10 octaves at 1V/oct will mean a maximum input 
of 10V to your ADC, which runs the risk of frying your micro if it runs 
from 5V.
You can use a simple resistor divider to drop 10V down to 5V (two equal 
value resistors), again for this it's worth getting high precision 
(0.1%) resistors.

You'll also need a filter (can be a simple one) to help reduce aliasing.

Here is a good paper on ADCs - 
http://cache.nxp.com/docs/en/application-note/AN5250.pdf


> 
> And what sort of DAC should be used to make proper CVs out of the 
> digital signals?
> 

For GorF-XL and the 002 I used the MCP4822, same as Tom suggested.
It's a good little DAC at a good price, odds on your micro will also 
support SPI, so you can control it from that without needing to write 
your own 'bit banged' spi function.

In general, I'd go for as a higher quality ADC and DAC as you can afford 
:)

Good luck
Paula



More information about the Synth-diy mailing list