ChipStomp – A Digital effects pedal built with a ChipKit DP32
Here’s something I’ve been working on for a while. It’s a digital guitar effects processor based on a PIC32MX.
It started with a conversation with my brother John. We were playing with my mini drum-machine, using the tune mode to mash the hell out of the samples whilst running it though his bass guitar amp with some heavy feedback. It sounded pretty cool, very NIN and got us onto the idea of making a digital effects pedal using the same microprocessor. The PIC32MX is a pretty capable device running at up to 50Mhz with loads of built-in peripherals including a 10bit ADC. Definitely possible I thought.
The tricky part was going to be handling the analogue input. That needed some research, as I had no idea what sort of voltage range to expect from a Guitar. Wikipedia indicates that the range could be from 100mV to 1V rms with peaks of +/-10V if you’re really going for it! That’s not something I’ve dealt with before, so a bit more Google-ing lead me to the Stomp Shield from open music labs. This is an Arduino shield aimed precisely at what I wanted. It provides the analogue front-end to condition the incoming audio signal for the ADC and uses an interesting arrangement of two PWM DACs to get a high-resolution audio output. It also provides low-pass filters on the input and output stages (“3-pole anti-aliasing filters for the inputs and outputs (10kHz cutoff)” from the wiki), twiddly potentiometers to control the input gain, the wet/dry mix, analogue feedback and the final output volume. Plus a general purpose rotary encoder for the UI. Nice!
The shield layout is intended for a “real” Arduino so It’s a bit of a mess in this state but it works pretty well.
The DP32 is a simple prototyping platform for the Microchip PIC32MX250F128B which is the USB capable twin of the chip I’ve been using in the drum-machine. Same 32Kb RAM and 128Kb flash but with hardware USB built-in.
For more detail: ChipStomp – A Digital effects pedal built with a ChipKit DP32