Not an electrical engineer, but kicking around ideas for a polyphonic analog synth with digital memory, a simplified/modernized update of an older all-analog design.

I've riffled through some of the patent literature, notably the one for the implementation of patch memory read/write for the Oberheim Four-Voice, but since I'm not an electrical engineer, can someone patiently explain to me like I'm five, how digital patch memory works exactly? Specifically, how are the states of analog potentiometers + switches stored and then "read back out" without physically moving the components?

I can imagine if the analog controls are entirely converted to rotary encoders, that the values could be set inside the analog "synth engine" by some sort of conversion from digital to voltage? If it doesn't touch the actual signal path per se, of course.


It will vary depending on if the synthesizer is a full analog synth, or a hybrid synth with digital components. The way that analog synthesizers with digital components (one of the first of which was the Prophet 600) typically work is that there is a separate control A/D and D/A, which actually sits in between the potentiometers and the synthesizer engine. In older synthesizers (such as the Prophet 600 Prophet 600 schematics), there was only a single A/D and D/A pair, which are multiplexed by using several sample and hold circuits. In any case, when you store a patch, the voltages of the controls are digitalized using the A/D and stored by the microcontroller into whatever non-volatile memory. When you recall a patch, the D/A generates the control voltage and bypasses the potentiometer.

Of course you are correct a sudden "override" of the physical controls by either recalling the patch or external MIDI control can be jarring and quite 'unmusical'. Therefore, different synthesizer manufacturers have adopted different methods to overcome this problem. I know that one manufacturer uses a weighted interpolation, so that if you recall a patch and then start "twisting the knobs", cleverly designed circuitry will allow the knob to operate from the starting point that was stored in the patch, but also assuring that you cannot exceed the normal bounds of the control.

Another problem which can happen is because the controls are sampled, sudden or precise movements of the control potentiometers can cause stepping or other artifacts in the sound. The was very much a problem on the Prophet 600 and other vintage analog synthesizers with patch memory, but is less of a problem now that processors and A/D and D/A technology works at higher speeds.

Finally, now that I've had a chance to look at it, it seems that the OB-4 voice programmer works the same way: according to this schematic. Of course, this is only a voice programmer, and not a full MIDI controlled synthesizer like the Prophet 600, so only the second problem is an issue. It is not meant to be used to modify the parameters of a sound in a real-time performance.

| improve this answer | |
  • \$\begingroup\$ Thanks. I would probably go with digital controls for an analog "engine" - so using momentary-on buttons to toggle "switch" values, and infinite rotary encoders for "pots" with some sort of numeric display of the value; so in that respect all the values will be kept digital, but then D/A to voltage-controlled "internal" pots as part of the sound circuit, if such a thing is possible. Yes, there'd need to be a buffer for smooth value interpolation. Thanks very much for explaining this so clearly! \$\endgroup\$ – A.J. Kandy Jul 14 '14 at 20:05
  • \$\begingroup\$ Cool - good luck on the project. The Prophet 600 is a good place to start, since it is one of the first and therefore one of the most straightforward. \$\endgroup\$ – Zuofu Jul 15 '14 at 22:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.