back to Juergen Haible homepage

Wave Shapers


Nonlinear functions can serve as a powerful tool for creating sounds in musical synthesizers.
Among the best known wave shapers are the overdrive in one form or the other (soft of hard clipping, used by myriads of guitarists, and used as a triangle-to-sine shaper and saw-to-pulse shaper in synthesizers), and the  full wave rectifier (used as saw-to-triangle shaper in synthesizers).
These wave shapers can be used in a static way (careful adjustment for low distortion in triangle-to-sine conversion), but the real fun starts when parameters are changed dynamically. Pulse Width Modulation means adding a variable offset voltage to the input of a very "steep" hard limiter (a.k.a. comparator), for instance. And a guitarist can get a variety of sounds out of his overdriven tube amplifier by just altering the input gain.
There is one type of waveshapers that has a kind of "mystery" status: The Serge Wave Multipliers, especially its "Middle Section". Obviously related to the full wave rectifier type, this performs a "folding back" of peaks that exceed a certain limit. Unlike a simple full wave rectifier, this happens not once, but several times as the input signal increases. The voltage transfer function must be "non-monotonous", i.e. it has several "peaks" and "valleys". The sonical effect of an input signal with decaying amplitude can be similar to FM at times.

How to emulate a Wave Multiplier ?

It's quite easy to produce a similar effect with the Interpolating Scanner I have introduced a few years ago, by simply setting the breakpoints to min - max - min - max, and so on. But building a Scanner to emulate a partially periodic voltage transfer function means breaking a fly on a wheel. Especially when the original Serge circuit is so simple - and so brilliant. I am not entitled to disclose the original, and I will make no attempt to publish a "slightly modified" version.
But I have made some experiments with other "simple" circuits, and I finally found a circuit for a wave folder core that only needs 3 opamps - that's a "single chip wavefolder" (;->).
I don't claim it emulates the Serge perfectly (I know it does not), but from my first experiments I've seen that it opens a door to a multitude of different possible transfer functions. I have yet to explore how much variance of the transfer function really makes sense, because you can already get so many different output wave shapes by just changing the input level and input offset voltage.

The following is my first version of the wave folder: Shaper A  (PDF, 35kB)
A string of diodes is driven with the amplified and level shifted input signal. After each diode there is a "tap" with a resistor that will contribute positive or negative to the output of a two-opamp subtracting amplifier. There are two virtual GND nodes for these summing and subtracting operation. By feeding these virtual GND nodes alternately from the taps of the diode string, you can have the output voltage increased when one diode drop voltage is reached, and have the output voltage decreased again when the next diode in row starts conducting. The number of valleys and peaks is only determined by the length of the diode string, and not by the number of opamps. It turned out that choosing equal resistor values results in an almost regular pattern of the voltage transfer function. It's not perfect - the slight unsymmetry is clearly visible in the simulation plot.


It's probably possible to adjust the resistor values to get a better fit. But the opposite is more rewarding: change resistor values to get different transfer functions which are farther from the Serge wavefolder, but still have a smooth character to scan thru various harmonics.
Here is an example for a new wave shaper that doesn't have much in common with Serge anymore: Shaper B (PDF, 74kB)
With a single 10k linear potentiometer you can get a variety of different nonlinear transfer functions. They all share the "smoothness" of the courves, and they all have that "FM kind" character, but the degree of "metal" in the sound changes with different potentiometer settings.


I have built Shaper A and Shaper B on breadboard, and I have tested it with unfiltered sine waves from synthesizers, and with a guitar sound from a Yamaha VL7.
The synthesizer waveforms definitely need a VCA at the input of the Shapers. An OTA to the summing node of the input amplifier will do, but I have made tests with the VCO and VCA of a modular system.
The VL7 guitar does not need any VCA in front of the Shaper. (And neither does a real guitar, I guess). So the circuit makes sense as a novel kind of guitar stomp box without many additions (a high impedance input amp, input and output level potentiometers, bypass switch ...). And it make sense as a standalone Module with one VCA included in a Modular Synthesizer.
Juergen Haible