The Weirding Module - ESP32 I2S DSP Using Faust

I've been taking a break from analogue circuits to investigate the world of DSP using an ESP32 microcontroller and the Faust DSP librares. This has been quite an adventure involving building my first dedicated Linux computer with PlatformIO running in Microsoft VS Code. So far I've got it running three sawtooth oscillators, a noise source, triangle LFO, amplitude and pitch envelopes and a simulated Moog resonant filter. The I2S interface produces impressive 24-bit sound quality at 48kHz sampling rate. Unfortunately the Faust delays and reverbs seem to make the processor brown out and it goes into a reboot cycle. More work required. Or possibly just a lot more memory. That couldn't hurt. The crackling noises are due to having the record level turned up too far rather than any problem with the synth.

CEM3340 Voltage Controlled Oscillator

Just got this one completed and working. Uses the classic (reissued) CEM3340 chip as used in so many classic synths like the Sequential Prophet 5, Roland SH-101 and many others. The PCB wasn't quite right so I had to bodge wire a resistor and capacitor into the CV mixing section, not really worth fabricating a new PCB though as the finished module works very well.

FrequencyThing New PCB

After several failed PCBs, we now have a working version that reads frequency from the modular! So far I've burned out four Arduino Nanos and a 20x4 LCD display module but we're getting closer to a working unit all the time. Next step is writing the rest of the firmware for the Nano to control the DAC and the 4066 switch.

Buchla 292 Low Pass Gate Clone

I stumbled across a video demo of a clone of the Buchla LPG on Youtube and was phenomenally impressed. So much so that I knew I had to build one. It's an ancient type of filter using Vactrols, a combination of an LED and a light-dependent resistor to effect a frequency response change. And it sounds wonderful.

The first PCBs aren't quite right, I managed to omit the two voltage tracks to the ICs so this first version is patched up with a couple of bodge wires to make it work. Only smoked one opamp making it, a new record.

Oscilloscopery - The Rigol DS1054Z oscilloscope

To assist in my electronic endeavours I have treated myself to the very wonderful Rigol DS1054Z digital storage oscilloscope and BLIMEY, it is good. This machine does everything from FFT analysis to SPI bus decoding in realtime (almost). It's a four-channel scope, brilliant for watching the channels of something like an SPI or I2C bus.

So naturally the first thing I'd want to connect up was my modular synth. Here's the MakeNoise DPO oscillator outputs running in hard sync mode. FFT shows the harmonics and already I can see that I need to turn up the sweep extent trimpots for the pulse width modulation on two of my other oscillators.

The scope has LAN connectivity, PNG waveform saving to USB memory stick, hundreds of features you might normally expect to pay twice the asking price for.

And by illicitly googling "RIGLOL" you can find a page that lets you enable the paid performances for free.

Not that I condone such behaviour.

Routemaster Number five

Having made a complete fuckup of two previous boards by putting the voltage regulators in the wrong way round, I've rattled through building this new version. One more board to build then the modular cases will finally be ready for me to transfer the synth modules into.