
Quad VCO

This was my first module for the
Bergfotron. It was originally based on a Doepfer PMS quad VCO board.
The PMS was a polyphonic modular synthesizer kit, that Doepfer
developed in the early 80s. The board worked fairly well, but
consumed quite a bit of power, because of the chip heaters.
Also the oscillators had a slight
tendency to sync (lock) when the frequencies were really close.
Therefore I have replaced it with ASM-1
VCOs.
The VCO board only has sawtooth and pulse waves.
Therefore I have added waveshapers that produce triangle and sine
waves. These are my own circuit,
based on the Moog 921.
I have also included a VCA for each VCO.
This can be used for velocity sensitivity or connected to an envelope
generator, if I want loundess control of an indivdual VCO. It is also
useful if you want one VCO to amplitude modulate another.
On the
module there is a mixer, with level knobs for each VCO. If you turn
the mix knob fully anti-clockwise, that VCO will be removed from the
mix and routed to the jack that normally outputs the raw triangle
wave. This is important if you want to route one VCO to another
destination, but still want to use the VCA.
To control the pitch,
I have designed my own CV quantizer.
It is based on John
Simonton's 4 bit digitizer. It outputs calibrated octaves and
fifths. Because it has 16 steps, it covers 8 octaves and a fifth. It
is controlled by a normal pot on the panel. In addition, there is a
fine tune pot. As the quantizer outputs fiths, the fine tune pot only
needs to cover a little over a fifth. This makes tuning the VCOs
easier.
Circuits
VCO core
I have crammed four ASM-1 VCOs on a single 100x160 mm circuit board, to make it a drop-in replacement for the Doepfer board. The module already had four boards and it would be too much work if I had to change the mechanical design.
Issues with the Doepfer PMS VCO
The 555 timers have slightly varying threshold voltages. This means that the pulse width modulation will not be the same from VCO to VCO. This is of course most noticable when you use really narrow pulses. I added trimmers is series with the pots. This doesn't help if you want to control several VCOs from the same CV though.
I already mentioned power consumption. I think my quad module consumes 500 mA from the positive rail and 300 mA from the negative rail. And that is after the heater temperature has stabilized. While heating it is around 700 mA from the positive supply. I'm building a very compact portable synth and I don't have room for huge heatsinks or extra power supplies.
The sawtooth wave is not quite linear at low frequencies. The ASM-1 also has a slightly quicker reset time, which is important when you add waveshapers like saw to triangle.
The fact that the ASM-1 doesn't have a high range trimmer simplifies adjustment a lot. The PMS is rather sensitive to adjust. That's fixable by adding resistors in series with the trimmers, but it is difficult to find room for them on the board.
The oscillators sync slightly even when you don't want them to. They don't lock completely, but the beating is jerky when they are almost in sync and the frequency difference is less than approx . 1 Hz. I think this is the most serious problem and I haven't found a fix for it. The slow beating between oscillators is very important to get that lush analog sound.
No sync
The ASM-1 VCO
My quad VCO board layout is avaliable for download as
two PDF files. One file is the actual board
artwork and the other is a component
placement plan. This board could be an excellent choice for those
of you who build a polyphonic synth or for other reasons need a lot
of oscillators in a small space.
There has been numerous request
for board layouts for the other circuits in this module. Therefore I
designed two new boards, one containing four octave quantizers and
the other four saw to triangle/sine converters. These are improved
designs, compared to my original module.
Basic quad VCO, component placement plan
Octave quantizer, board layout
Octave quantizer, component placement plan
Saw to triangle/sine, board layout
Saw to triangle/sine, component placement plan

The ASM-1 VCO clone prototype.
I have designed, etched and populated a small PCB with a clone of the ASM-1 VCO for evaluation purposes. I have also used it to test different matched transistors for the exponential converter and different temperature compensation resistors. The test results were quite satisfactory. As I mentioned in the beginning, I have repalced the Doepfer board with oscillators of this design.

This is my SMD-module with a BC847BS and a tempco resistor. It fits in an ordinary 8 pin IC socket. The top will be covered with a bead of Araldite, as seen on the VCO prototype board.
Temperature compensation
The ASM-1 VCO uses temperature compensation resistors
to compensate for the temperature dependency in the transistors that
are used as exponential converter.
I used two different tempco
resistors and compared the tuning error over an eight octave range. I
also measured with an ordinary metal film resistor instead of the
tempco. Measurements were done at 25 degrees and 38 degrees
(centigrade) and the tuning difference was plotted (see diagram
below). My CV quantizer was used to
get repeatable control voltages.
Without compensation, the error
is quite small att the high frequency range. At 7V CV (4186 Hz) it is
19 cents sharp. But with lower CVs the error increases linearly. At
0V CV (32,7 Hz) the error is a hefty 300 cent. No, that's not three
dollars. It is three semitones. Completely unacceptable, in other
words.
With the 3000 ppm/C tempco, things looked completely
different. Now it went slightly flat in the top range, when the
temperature was rised. The error was -19 cent at 7V CV (4186 Hz). In
this case the error didn't increase at lower frequencies. It got
smaller. At the lowest frequency the error was so small that it
couldn't be measured with my frequency counter.
I also tried with
a 3900 ppm/C tempco. This overcompensated slightly. At 7V CV (4186
Hz) the VCO went 30 cents flat. Lowering the frequency caused it to
get flatter still. At the lowest frequency the error was -50 ppm.
For
the tests I used the 1k SMD tempcos that Farnell sells (catalog
number 732-310 for 3000 ppm, 732-369 for 3900 ppm). The expo
converters were BC847BS dual transistors. They were potted together
with the tempcos to keep them at the same temperature. Without
potting even the smallest movement of air caused the frequency to
drift.

Exponential converters
The two transistors for the exponential converters
should be matched for best tracking. But how well must they be
matched and how large is the error when they aren't quite perfectly
matched? To find out, I plugged in different transistor types and
measured. In some cases I also tested with several units of the same
transistor type, to see how much they differed.
The transistors
were three different BC847BS dual SMD transistors, two different
CA3046 transistor arrays, one CA3086 and two BC550C matched to within
1 mV. The BC8477BS a and b differed 2 mV and the one marked c
differed less than 1 mV. I didn't measure the matching of the CA3046,
but if I remember correctly it it specified for max 3 mV difference.
The CA3086 is normally quite a bit worse, although I didn't measure
this sample.
The conclusion is that if the Ube matching is within
2 mV, the tracking error is less than 5 cents within an eight octave
range. This should be good enough for most cases. If the thermal
coupling of the transistors and the tempco resistor isn't very good,
the tuning error will be larger than the tracking error, as soon as
there is a movement of air inside the synth. It was wery difficult to
measure the tracking of the dual BC550C, because it drifted slightly,
all the time. And bear in mind that these transistors were fitted
with a large cap for thermal coupling.
![]()
A note to the diagram: Because the frequency counter can't display fractions of a hertz, the measurement error gets higher at lower frequencies. So the large deviation in the lower octaves is really a result of measurement error and not bad matching of the transistors.
This circuit consists of a 4 bit analog to
digital converter that drive a 4066 quad analog switch. Basically,
the swiches select different points on a voltage divider, consisting
of five matched resistors and a trimmer. These voltages are summed to
get 16 calibrated voltage steps. The summing amplifier needs to have
three matched resistors. Total parts count is two TL074, one 4066 and
a stack of resistors.
Although I call it Octave quantizer, it
actually outputs control voltages for both octaves and fifths. It
also incorpoates the fine tuning pot.
My prototype quantizer output the
following voltages (with fine tuning disconnected):
-0,002 V
0,583
V
0,997 V
1,580 V
1,999 V
2,582 V
2,999 V
3,582
V
3,997 V
4,580 V
4,998 V
5,581 V
6,000 V
6,583
V
7,000 V
7,583 V
The exact voltages of course are dependent
on the matching of the resistors.
Saw to triangle/sine converter
I developed this circuit, with the Moog
921B VCO as inspiration. It uses the classic one-transistor approach
for folding the sawtooth wave into a triangle wave. But I added a
special RC-network to cancel the glitch that comes from the
less-than-instant reset time of the saw wave. I also replaced the
emitter follower transistor with an op-amp buffer. This was necessary
to get the output voltage up to 10 volts peak to peak. In addition,
the circuit was adapted for +-15 volts supply, instead of Moog's +12
and -6.
The triangle to sine converter consists of two transistor
pairs from a CA3046 array. Properly adjusted, this gives a very good
sine wave. It sounds much cleaner than the diode-limiters that many
synths use to approximate a sine wave. Again the emitter follower is
replaced by an op-amp.

This is the triangle wave at 1047 Hz.

This is the sine wave at the same frequency.
A simple logarithmic VCA is added to the
output of each VCO. It is based on the trusty old CA3080 OTA.
This
VCA is either controlled from an envelope generator that is selected
with the thumbwheels or an external signal connected to the jacks.
The AM knob controls the amount of modulation. It is bipolar, as most
of my modulation knobs. So the "off" position is in the
middle (12 o'clock). Turning it introduces either positive or
negative modulation, depending on direction.
If you don't want to
modulate the amplitude at all, the VCA needs to be fully open.
Otherwise the signal would not come through. A special feature takes
care of this. In addition to the AM signal, the VCA is controlled
from another signal, that the dual ganged pot provides. It is 10
volts when the knob is in the middle position. Turning it either way
reduces this DC voltage down to 0 volts at the extreme positions. So
when you turn the modulation amount up, the fixed voltage is
automatically reduced.
Waveform router
Used to select among four waveforms. This
avoids using an expensive and space-consuming rotary switch. I
employed one 4053 analog switch per VCO.
To be able to break out
the signal from the VCO to separate outputs, I use a 4066. The signal
then replaces the triangle wave in the front panel jacks. The reason
I used the triangle jacks for this "double duty", is that
this feature was added after I had cut the front panel.
Output mixer
Just a simple summing amplifier with level pots to set the mix. The pots have a built in switch, that breaks out the signal to a separate jack when they are turned beyond zero, counterclockwise (see waveform router).
Because adding the waves from several VCOs can create an amplitude that clips the mixer and following modules, this LED indicator was added. It glows green when there is enough signal and red when there is danger of clipping.
Controls
The following functions are available separately for
all four VCOs:
Octave / fifths selector. Rotary
pot with 16 quantized control voltage steps.
Frequency
fine. Rotary pot with a range of little over a
fifth.
Control source. Three position toggle
switch seletcts between Keyboard A, Keyboard B or Off.
FM.
Rotary switch for negative or positive FM amount. Because the exact
position for no modulation can be hard to find in 12'o clock positon,
the pot has a built in switch that turns the modulation completely
off. Just turn the pot fully counterclockwise. It's the old
transistor radio volume knob concept.
PW. Rotary
pot for pulse width. Turned maximally counterclockwise, it engages
the sine wave.
PWM. Rotary pot for positive or
negative pulse width modulation.
Waveform. Three
position toggle switch seletcts between sawtooth, triangle and pulse
wave. It only governs which waveform is sent to the VCA. All
waveforms are available simultaneously at the separate jacks.
AM.
Rotary pot for positive or negative amplitude modulation. This is a
stereo pot which also adds a DC component. With the pot in
off-position (12 o'clock), it adds 10 V DC, to open the VCA fully.
When the modulation amount increases, the DC decreases to 0V at the
maximum positive or negative setting. That allows the AM signal to
take the amplitude between off and full.
Envelope source.
Thumbwheel selector that selects among the nine most used envelope
generators, envelope follower or similar modulation sources.
Output
level. This rotary pot controls the level to the mix output.
The built-in switch connects the signal from after the VCA to the
triangle output jack (instead of the triangle signal), when the pot
is turned fully anticlockwise. This feature came about because there
was no room on the panel for "after the VCA but before the
mixer" signal jacks.
Bicolor LED. Glows in
various shades between red and green, depending on the pulse width.
Jacks
CV 1 – 4. These are 1 volt per
octave inputs for connecting to keyboards, midi-to-CV, sequencers
etc. Inserting a jach disconnects the internal routing from keyboard
A or B:
FM 1 – 4. This is logarithmic
frequency modulation. Disconnects the internal connection to a future
patch matix.
PWM 1 – 4. input for pulse
width moulation. Disconnects the internal connection to a future
patch matix.
AM 1 – 4. Controls the VCA, to
modulate the amplitude of the VCO signal. Disconnects the internal
connection to a future patch matix.
Saw 1 – 4.
Outputs for the sawtooth wave
Pulse 1 – 4.
Outputs for the pulse wave
Tri 1 – 4.
Outputs for the triangle wave. These outputs also double as post-VCA
outputs, when the mix knobs are turned fully counterclockwise and the
built-in switch is engaged.
Mix out. The mixed
signal of all four VCOs is output on this jack. This is the normal
output for connecting to another module, like for instance a filter.

The quad VCO module, seen from the back.