Microcontroller-based VCO (3HP)
SIMPLICITY IS KING.
If you want an all-singing, all-dancing VCO with lots of bells, whistles and foghorns well, there are plenty of them on the market so feel free to go take a look at them. However, if you want something simple and hackable then we've got you covered.
Analogue VCO cores are a pain to build so this is based around a microcontroller instead - cheating? Maybe so, but it's pretty damned versatile and if you have the knowledge to program microcontrollers then you can hack it to your heart's content.
What makes things a bit more interesting is that both the output frequency and the waveform can be voltage controlled - normally, the waveform would be selected via a pot alone, but I decided it would be interesting to allow voltage controlled waveform selection too.
As supplied, the module can provide six different output waveforms: sine, triangle, square, sawtooth, something pulse-ish and digital noise - waveform selection is either via the pot _or_ it can be voltage controlled. If you want to get down and dirty with the code then you could easily replace the wavetables with something else.
It'll track 1V/octave pretty well over 5 octaves, this being governed by the fact that microcontrollers tend to get a bit upset if you feed more than 5V to their input pins. There are three inputs (CV, Wave and OP) - the OP input can be used to do interesting things, although by default it'll allow you to alter the duty cycle of the square-wave output and introduce some nasty-sounding distortion into everything else.
In addition, these modules were designed to fit behind 2HP panels however in some cases there's a risk of interference with adjacent modules particularly if these modules have PCBs which are the full width of their panel, so they're supplied with a 3HP panel as standard.
The output waveform is a filtered PWM signal - the output filter has a cutoff frequency of 1.6kHz which gives you a usable range of 5 octaves - it's a lot cheaper than a DAC ... The schematic, source and BOM for the module can be found here, as can panel files: https://bitbucket.org/yorkmodular/avr-vco-diy/src/master/ - all the bits you need, including a pre-programmed firmware chip, are included .
The firmware source has a permissive license, so feel free to hack on it - updates and modifications are most welcome
The module is ~47mm deep, so please bear this in mind if you're using a skiff-style system. The module is finished with Alpha potentiometers and Davies-style knobs. Power cable and mounting hardware are also provided - the 3HP panel is laser-cut and engraved from 3mm black acrylic. If you'd prefer to fab your own panel then you can find the design files in the Bitbucket repo.