When it is up and running, this little circuit takes a sawtooth at its input and hands you a clean triangle at the other end. It works on its own as a standalone waveshaping device, and it can also be wired up to a simple VCO, where it gives a SHAPES VCO an extra waveform to pick from. On the final scope shot the triangle looks proper, and the maker demoed it with musical tones playing over an audio track, which is exactly the kind of proof I want from a waveshaper.
The parts count is refreshingly small: one TL074 quad op amp, a pair of 1N4148 diodes, two 1uF foil or ceramic capacitors, two 200k resistors, one 20k and two 10k resistors. The maker worked out the design in Falstad first, then took it to the bench with an analog oscilloscope and a digital multimeter. There is even a hand-drawn schematic on dot-grid paper, which I find charming and honestly easier to follow than some CAD exports.
A few choices stand out to me. The input signal goes through an inverting buffer, and two diodes run in parallel into a single output node. Matched 10k resistors are used to correct gain mismatches between the two halves, which seems like a smart bit of care for such a minimal circuit. Pulling the output junction to a -12V rail before the output AC capacitor, rather than to ground, lets that node swing below 0V, and that reads as a neat fix for an otherwise awkward limitation.
It is not all solved, mind. Input DC offset shifts the waveform crossing point and distorts the triangle shape, so a high-pass filter at the input was added to move that crossing point back where it belongs. And ordinary 1% resistor tolerances still cause gain mismatches in the inverting stage, so how close the two slopes match depends on how lucky you get with your parts. That feels like a fair trade-off for a circuit this compact.
Project by Moritz Klein. Watch it on their YouTube channel: