Posted by & filed under Memorymoog, MKS-80, Moog, OB-Xa, Oberheim, Oscillators, Prophet 5, Prophet T8, Roland, Sequential, SH-101, Synth DIY, Vintage synths.

To celebrate the 2016 return of the CEM3340 chip, I thought I’d do another page in my series looking at how various synths implemented classic synth chips (the others being CEM3320 Filter designs and SSM2044 LP Filter designs). This is especially useful right now, since many people have bought a few CEM3340s or V3340s or AS3340s for their own use and are looking around for circuits to use them in. If that’s your purpose, note that these are all synth voicecard circuits, so they’re used in a known situation. If you want a VCO for a modular synth, you’ll need much more protection on inputs and outputs than most of these circuits offer.

First, the datasheet design.

Datasheet CEM3340 VCO

The datasheet design uses pretty much all the features of the chip, and shows one or two of its quirks too. The CEM3340 is extremely unusual in that it offers both Hard and Soft Sync inputs (pin 6 and pin 9), and neither of them work the way you might expect. As we’ll see, this lead to them being widely ignored. However, the datasheet does offer alternative circuits for synchronization which can give you the classic sync effect, and manufacturers seem mostly to have gone with variations on this instead. The datasheet’s claim that their inputs “provide a wider variety of synchronized sounds than available through conventionally synchronized oscillators” seems to have fallen on deaf ears. Sometimes people just want what they know and love.

One of the quirks of the CEM3340 is the waveform outputs. For a start, these are all different levels. The Ramp is 2/3rds of the positive supply. The Triangle is 1/3rd of the positive supply. The Pulse/Square is the positive supply level minus 1.3V. For a typical +15V supply, this gives levels of 0→10V, 0→5V, and 0→13.7V respectively. Another quirk is that the Pulse is an open emitter output, so it needs a pull down resistor to set the lower level. Usually this would just be grounded, but it could be taken to the negative supply. Most synths compensate for the differing levels in the following waveform mixer stage. This is easily done by changing the input resistors in an inverting op-amp mixer.

Another quirk is the supply voltage. Typical supplies for synth circuits would be +/-15V or +/-12V, but the CEM3340 can’t stand more than 24V between its supply pins, so even +/-12V is right at the limit. Curtis dealt with this by adding a zener diode to limit the negative supply connected to pin 3 to -6.5V, so this gives 21.5V across the chip with +15V positive supply. The zener diode needs to be protected from over-current, so you typically see a current limiting resistor hanging off pin 3 (820R with -15V in the datasheet circuit). Alternatively, you can run the chip from +15/-5V supplies, in which case pin 3 can be directly connected.

The circuit breaks up into various functional units quite neatly. Let’s have a look at some of them.

Starting numerically at Pins 1 and 2, this is the temperature compensation circuit. This works by generating a temperature-dependent voltage which is then multiplied on-chip by the incoming CV. Since the VCO and the temperature-compensation circuit are all on the same die, they’re all the same temperature, and this gives a highly accurate result. There are still some minor errors from the multiplication process (hey, this is analog, after all) but the datasheet gives details of how to trim those out too if you can be bothered.

Pin 3 we’ve looked at. Pins 4, 5, and 6 are inputs and outputs all labelled above, so no need to discuss those.

Pin 7 is more interesting. It’s the High Frequency Tracking. This pin produces a current which can be used to compensate for the way that the time taken for the internal comparator to switch becomes significant at higher frequencies (>5KHz or so). The lower half of the preset resistor serves as a resistor to ground which converts this current to a voltage, and the upper half and the series resistor (1M) feed a small portion back into the Frequency CV input at Pin 15.

Pin 11 is the next important one. It’s the VCO’s timing capacitor. Use a good quality capacitor here, with low leakage and low tempco. Polystyrene film used to be the best regarded, and is specified in many of the manufacturer’s schematics, but Mica is mentioned in the datasheet and there are other options now (C0G, for example). Note that the datasheet circuit describes the capacitor as “1000pF” rather than “1nF” and virtually all manufacturer’s schematics I’ve seen have followed both the datasheet value (logical, since they all want the same audio range) and the naming convention. I’ve saved space by breaking the convention and calling it “1nF” instead.

Pin 13 is the Linear FM input, with an associated bias network. I haven’t seen a schematic that uses it, so mostly you only see the bias network (1M5, 470R, 10n) connected to this pin.

Pin 15 is the Frequency CV input. This is a virtual ground summing node, and you usually see a bias network as shown (360K, 470R, 10n), although often with the values tweaked, followed by the summing resistors coming from the various CV sources.

Roland MKS-80

Roland MKS-80 CEM3340 VCO

Ok, so here’s one of Roland’s several implementations. This seems to be virtually identical to the Jupiter 6, bar one or two minor value changes. It’s a bit hard to tell, because the Jupiter 6 schematic doesn’t tell you what values are inside the special resistor arrays Roland used in both synths. The layouts are the same for sure, so I’m guessing the arrays are too.

Roland SH-101

SH101 CEM3340 VCO

The SH-101 is a strange beast, in that it uses four different positive power rails; +5V, +9V, +14V and +15V. In addition there are Ground and -5V power connections.

So, what’s different in this one? There’s a common emitter amplifier on the Pin 4 Pulse output, and the Pulse Width control on Pin 5 is handled quite differently to other designs. They’ve added a trimmer to get an exact value on Pin 14. The recommended value is 1.8K, and the combination of 1.69K plus a 300 Ohm trimmer gives that value. Other synths have simply specified a 1% resistor in this location, so the trimmer seems a little like overkill. There are also trimmers for the “Range Width” (that is to say “1V/Oct”) coming in from the DAC, and a VCO Tune trimmer to set the basic pitch. Again, there’s no linear FM.

Sequential Prophet 5 Rev.3

Sequential Prophet5 Rev.3 CEM3340 VCO

As everyone knows by now, the early Prophets used SSM chips, while the later Rev.3 moved to CEMs, which Sequential then stuck with for all future products. You can argue about the relative merits of one versus the other, but the fact is that they were having tuning problems, and using the CEM3340 helped them solve them.

Interestingly, the High Frequency tuning trim on Pin 7 isn’t used. Presumably the P5’s internal autotune routine was able to compensate for the notes tending towards flat at the high end, so there was no need.

Notice the sync circuit. This is the “Figure 5” sync circuit from page 6 of the datasheet, and produces the standard Hard Sync waveforms.

Also note that this is Oscillator A, the Sync Slave. Oscillator B is the same, except it uses the Triangle output and doesn’t have the Sync circuit.

Sequential Prophet T8

Prophet T8 CEM3340 VCO

Another Sequential design, this time their flagship Prophet T8, five years after the Prophet 5. There are several differences to note from the Prophet 5 design. The Triangle output is used, and the Sync circuit has been altered, no longer using the Soft Sync input, but still using a transistor to reset the triangle core.

The Pulse Width mixer has also gained a few extra components. There’s a resistor connected to -5V which gives a +5.5V offset on the output, and the diode acts as a half-wave rectifier which prevents the output from going negative, since the input range for Pin 5 is 0→5V. Presumably this situation couldn’t arise in the Prophet 5, making such protection measures unnecessary.

With the other inputs at 0V, the +5.5V offset will set the pulse wave to beyond 100% – e.g. it will turn it off. Whereas the Prophet 5 uses three 4016 CMOS switches to turn each waveform on or off, the Prophet T8 only uses two, saving a CMOS switch by using this alternate method of turning off the Pulse output. It’s a clever little trick to save hardware.

Moog Memorymoog

MemoryMoog CEM3340 VCO

When Moog tried building a polyphonic synth (still the only “proper” voice-based polysynth they’ve built, even in 2016 – Come on, Moog!) they couldn’t fight the tide and used CEM3340s for the oscillators. Imagine trying to tune six Minimoogs all piled up together!

The Memorymoog’s reputation has been somewhat spoiled by its poor reliability, probably a result of it being rushed out of the door in an attempt to save the company from bankruptcy. It’s a shame they didn’t have a little longer to spend on it, because in many ways it’s a great synth, perhaps even a masterpiece. Imagine! A three oscillator polysynth with Moog filters! That’s got to be good, if it works.

The CEM3340 implementation is pretty standard, apart from the 1M resistor linking the PW input and Pulse output which I suspect is to cancel the DC offset you get with pulse waves is to add a little hysteresis to the pulse comparator (Thanks Bob! – see comments), and the non-inverting op-amp buffer on the Triangle output. This amp has x2 gain, so it boosts the triangle to 0-10V, the same range as the Ramp wave.

One thing to notice is that the Moog design uses three trimmers, whereas the Sequential designs manage with only one.  I imagine that the Sequential autotune routine provides high frequency tracking and range trimming and so forth, whereas it’s not exactly clear what Moog’s autotune manages to do, since everything gets a trimmer anyway. Probably it compensates for the synth warming up (the Memorymoog had a fan to keep it cool!) and that’s about it. It’s not a great design, since three trimmers per osc for each of three oscillators is nine trims per voice, 54 trimmers total – and that’s just for the oscillators! What a pain in the backside!

Update 11th February 2017

Heinz Weierhorst spotted that I’d drawn the connections to the high frequency trimmer incorrectly (below in the comments). This affected the Datasheet, MKS-80, and MemoryMoog schematics. This is now corrected.

Update October 2018

Moog finally have built a polysynth! No-one can afford it, but at least they’ve done it!

Building these designs

The CEM3340 VCO chip has been re-released as the Rev.G. It has also been cloned by CoolAudio as the V3340 and by Alfa as the AS3340. Any of these chips will work correctly in the designs above. We have all three chips available in the shop.

    Related Products

  • V3340 VCO

    The V3340 chip is CoolAudio’s modern clone of the famous CEM3340 voltage-controlled oscillator. It provides Ramp, Pulse/Square, and Triangle outputs,has inputs for oscillator sync, is temperature compensated and stable, and provides excellent 1V/Oct tracking. In short, it’s everything you need from an analog oscillator, on a chip. There hasn’t been a better design than the 3340. The 3340 is the oscillator chip found in many of the famous polysynths of the analog era; the Sequential Prophet 5 and T8, the... Read more »...

    More Info Buy Now
  • CEM3340 VCO Rev.G

    This is the re-release version of the famous CEM3340 voltage-controlled oscillator. It provides Ramp, Pulse/Square, and Triangle outputs,has inputs for oscillator sync, is temperature compensated and stable, and provides excellent 1V/Oct tracking. In short, it’s everything you need from an analog oscillator, on a chip. There hasn’t been a better design than the 3340. The 3340 is the oscillator chip found in many of the famous polysynths of the analog era; the Sequential Prophet 5 and T8, the Oberheim OB-Xa... Read more »...

    More Info Buy Now
  • AS3340 VCO

    The AS3340 chip is Alfa’s modern equivalent of the famous CEM3340 voltage-controlled oscillator. It provides Ramp, Pulse/Square, and Triangle outputs, has inputs for oscillator sync, is temperature compensated and stable, and provides excellent 1V/Oct tracking. In short, it’s everything you need from an analog oscillator, on a chip. There hasn’t been a better design than the 3340. Please note that Alfa recommend a 51K resistor on the pulse output in place of the 10K resistor that the CEM3340 used. There... Read more »...

    More Info Buy Now

38 Responses to “CEM3340 VCO (Voltage Controlled Oscillator) designs”

  1. colin

    Thanks for this, and all the other resources you’ve made available to the public!

  2. Heinz Weierhorst

    Hi Tom.

    There is an error in the schematics.
    Pin 7 which is the output of a current mirror, whose current is 1/4 of the timing cap
    charging current, should lead to the Hi-End pot beginning, pot end to ground.
    The wiper is connected to a resistor whose other end is tied to the summing node, pin 15.
    The CEM 3340 is the work of a genius i.e. Doug Curtis.


    • Tom Wiltshire

      Hi Heinz,

      Thanks for spotting that! I just checked the datasheet circuit, and you’re quite right – the trimmer pot is the other way around as you describe. I’ll modify the images and get some updated diagrams in place.

      And I totally agree about Doug Curtis – the CEM chips are amazing work.

      Thanks again,

  3. Bob Grieb

    The 1M resistor from pulse out to pulse in on the Memory Moog adds hysteresis (a small amount of positive feedback from the output to the input of the internal comparator). This raises the threshold when the input is increasing and decreases the threshold when the input is decreasing, to prevent the comparator from oscillating right as the saw crosses the pwm control voltage level. It’s mentioned in the 3340 data sheet.

  4. Dagrith

    Thanks for this! I’m quite new to analog synth design (I’m a new electronics hobbyist). It took me hours to build a very basic schmitt trigger oscillator circuit that has 5 buttons that play different tones. It uses a CD40106 and a CD4040BE. I bookmarked this article and I will have to look into trying to make one of these circuits, I’m sure it will be a nice challenge for me if I try it ;P thanks again, this is very informative.

  5. Adrian

    Sorry for the stupid question but I wondering how the CV is generated for SH-101. All I see in the D/A section is multiplexer and dual op-amp?! I’m new to electronics. Made the subosc from the other article and now I want to try to build the SH-101 oscillator with 3340. If someone can point me on what to read to understand how they made the D/A on the SH-101 that will be great.
    Great article – thank you.

    • Tom Wiltshire

      If you’re looking at the service manual schematic for the SH101, the D/A convertor is at the bottom just below the CPU. It’s an interesting design because it’s not a single chip. Instead, they use the output from the CPU with weighted resistor values feeding op-amp 9a. It literally builds the required output using a weighted mixer. For the lower resistor values, the CPU outputs are buffered by multiple parallel stages of a 4050. Only after the “DAC” does a multiplexer appear, a 4052 which switches the DAC output between the VCO CV and the “LFO” Random waveform (scare quotes because that waveform isn’t really generated by the LFO at all).

      • Adrian

        Tom, thank you so much for taking the time to answer me. I don’t understand it but it gives me a direction. I have a lot to learn. This site is awesome. Cheers!

  6. KrzysztofWitkowski

    I have a bit strange issue with AS3340 – applying voltage to pw input detunes oscillator. Why? 🙂

    • Tom Wiltshire

      I don’t know. That’s not something I’ve seen. On some of the waveform outputs, loading the pin with too low a resistance can affect the frequency. Could it be similar on the PW input?
      Alternatively, could it be the voltage level? The PW input is only supposed to range from 0V to +5V.

      • KrzysztofWitkowski

        Well, I have pot attached to 0V and +15V, so only 1/3 range of pot is usable. After some thinking I think that it’s because lack of decoupling in my design at this moment. From pulse output I have of course 10k resistor, maybe I should add bigger one too.
        After all I realising that different PW means different power coming out from this pin, so maybe decoupling IC with 100nF capacitors will help. Am I right?

      • KrzysztofWitkowski

        Well, problem with detuning PWM solved!
        In my case setting PWM on 50% caused oscillator to go ~30 cents higher. I’m powering 3340 from symmetrical 12V supply. In datasheet we have a circuit for 15V, and there is REE resistor from pin 3 to – supply. For 15V it have 820 ohms, but for lower voltage REE must be smaller, for +/-12V it must be 680 ohms.
        Hope it can be useful for somebody 🙂

        • Nikolai Linden-Vørnle

          I have the same problem. I have a 680 Ohm resistor like you said, but i still get the detuning. I have tried to change the pull-down resistor from the Pulse output aswell and it doesn’t help. Did you just use a potentiometer to control the PWM or did you make a control circuit?

          • KrzysztofWitkowski

            I controlled PWM with potentiometer, and exactly 50% caused detune. This problem exists in early batch of AS3340, it was resolved later by Alfa. Simplest solution is to use 50k pulldown resistor, You can also try bigger. Maybe also powering IC with -5V without resistor directly to the negative voltage input may help. I have to try it out yet, especially because also AS3327E is powered from -5V. The best part is no part, and having only one negative voltage would be nice to have 🙂

  7. Jonah

    Hi Tom, excuse me for my ignorance, but I’m looking at the Roland MKS-80 circuit above and am not sure what that part that looks like a resistor with the T going through it represents. It’s labelled “10K PW”. Can you shed some light on that for me? Thanks

    • Tom Wiltshire

      Hi Jonah,
      Sure, the thing with the T through it is a trimmer (AKA preset) resistor. Hence “10K” for 10KOhms, and “PW” since it’s an adjustment for the pulse width CV.

  8. Matheus

    According to the data sheet, the pulse output is an open emitter (it wouldn’t make sense to have a pull-down resistor in an NPN collector).

  9. Bernard

    In the introduction, you mention the need for additional protection on inputs and outputs for a modular design. How would you design such protections? Thanks

    • Tom Wiltshire

      A typical modular synth module would probably use op-amp mixers to allow CV control alongside the control pots. The output from the op-amps is then a known quantity (say +/-13.5V on a +/-15V system using typical op-amps like the TL07x series, since they can’t go quite to the rails) and the voltage can be limited to something the 3340 can survive either by a potential divider (for voltage inputs) or a series resistance (for current inputs).


  10. Massimo

    What’s the purpose of 1M5 resistor between pin 2 and – 15V in the Prophet 5 ? Any opinion ?

    • Tom Wiltshire

      Hi Massimo,
      It seems to be a mistake. I checked the original schematic, and it’s not there, so it looks like it’s my error.
      Well spotted, and thanks for pointing it out!


  11. Gareth

    Hi everyone. I’m a total noob when it comes to all this, but I am keen to learn. Would I be able to run 12V from my modular power supply through a 2K pot to the PWM pin of the chip to allow know fiddling for the PWM?

    • Tom Wiltshire

      The PWM CV input expects 0 to 5V, so 12V is too high. However, if you put a 2K7 resistor from 12V to the top of the pot, that will reduce the maximum voltage on the pot ( 2K / 2K+2K7 = 0.425, and 0.425 x 12V = 5.1V).

      • Gareth

        Thank you so much! Sorry if my question is dumb – as I said I’m a total noob. Could you please explain the equation if you have a moment? Many thanks in advance.

        • Tom Wiltshire

          It’s a “voltage divider” or “potential divider”. There’s a nice explanation here:

          The short explanation is that the the voltage is multiplied by the ratio of the bottom resistor to the total resistance. In our example, we need 5V maximum output for a 12V input, and we know that the bottom resistor (the pot) is 2K. Our ratio therefore needs to be 5/12 = 0.416, and, flipping that upside down, our total resistance needs to be 12/5 x 2K = 4K8. That means the top resistor is ideally 4K8-2K = 2K8. 2K7 is the nearest realistic value. Hope that makes sense once you’ve had a chance to work it through! Good luck and happy learning!

  12. brunob

    Hey guys,
    thanks for the great chips!
    I’m having a hard time mixing the Ramp, Pulse and Triangle
    waves together..
    What would you recommend as a small mixer for the three
    outputs of this 3340?
    Thanks again!

    • Tom Wiltshire

      It depends a bit what you’ve got following the VCO.

      If you want a general mixing solution, then an inverting op-amp mixer is the way to go. Keep the resistor values pretty high to avoid loading the VCO – 100K, 200K, or so. The input resistors need to balance the perceived levels. A triangle wave of 10Vpp sounds quieter than a square of the same amplitude because it has many less harmonics.

      An op-amp mixer is not the only way though. In many synth voice designs, you’ll see the filter input used to mix the signals. This is essentially the same thing since many filter chips were design with “virtual ground node” inputs which allows this kind of mixing. Again, the inputs will be weighted to balance audio levels.

  13. Emmanuel Oluga

    Hello Tom, thank you for the article, I’m new and I want to build a basic monosynth with this chip and have two or three of them, so I can mix the outputs. What other solutions apart from the op-amp and filter can I use. Thank you

    • Tom Wiltshire

      Honestly, an op-amp mixer for the oscillators is by far the best solution. You could use a passive mixer of just resistors feeding your filter, but you won’t have any control over the level of each oscillator, so it’s not ideal.
      Do a couple of searches for “op-amp audio mixer” or check a few synth schematics (Sequential Pro-One schematics come to mind) to see how they’ve done it.

  14. Emmanuel Oluga

    Thank you for your apt reply. I did figure out the mixer function, now I have to find out how to do a sub-oscillator. There is so much to learn argh. Also, do you still have those wavetable chips from a while ago? Thank you

  15. Samuel Mills

    There’s an error in your description of the SH-101. “There’s an emitter follower buffer on the Pin 4 Pulse output.” That’s not an emitter follower, it’s a common-emitter amplifier or inverter. I have to say it’s not super clear to me what the point of that stage is, unless there’s a reason they wanted to change the phase of the pulse wave vs. the others (or maybe it just pulls the pulse up closer to being rail-to-rail?) Whatever it was, it must’ve been more important than having a low output impedance!


Leave a Reply

Your email address will not be published. Required fields are marked *