This project, as mentioned previous, is a guitar effect unit based on and powered by a Raspberry Pi "micro-computer" and the free DSP software "Pure Data". All of the effects are written in the Pure Data (Or "PD") language. The effect box currently contains 15 effects in all, but the entire system was built around the concept that the user should be able to switch out effects for new ones very easily. Continuing on, the effect unit (Or "pedal" as I'll refer to it from now on) consists of six main components: The buttons, the potentiometers, the VFD display, the ADC (Reads pots), the USB sound card, and the Raspberry Pi itself. I'll now go over what each component does. First, the buttons. There are three momentary push buttons on the front panel of the pedal. They enable you to cycle through effects and enter menu screens. The top most button acts as a "next" button, cycling through to the next effect, and the bottom most buttons acts as a "previous" button, cycling through to the previous effect. When the middle button is pressed, the pedal enters "edit mode", in which the user can edit the parameters of an effect, such as a chorus's speed or depth, by using the four potentiometers on the front of the pedal. This brings us into a description of how the potentiometers function. Each potentiometer is wired as a voltage divider into a channel of the ADC chip, which converts the voltage off the pot to a digital value, and that digital value takes the place of a hard coded value in a PD effect file, thus changing a certain parameter of an effect. Moving on, when the pedal is in "normal" (non-edit-mode) the VFD display shows the name of the currently selected effect, and what it's editable parameters are. The parameters are listed from right to left, corresponding to their own potentiometer. Using the image below as an example, the user has selected the effect called "Chorus" using the next/previous buttons. You can see that the editable parameters for this effect are (from right to left): Speed, Depth, and Fdbk (Feedback). If the pedal were in edit mode, the parameter "Speed" would be controlled by potentiometer #1, the one closest to the orange cable; the other parameters following suit with potentiometers #2, and #3.
|The front panel, showing the buttons, pots, and VFD|
|Inside the pedal|
The photo above shows the internals of the pedal. In the top center you can see the Raspberry Pi model B, the heart of the device. Connected to it via the GPIO pins is the main circuit board, which holds the ADC chip and various resistors. I'll provide a link to the schematic at the end of this post. Also connected to the Raspberry Pi is a small black rectangle with both a yellow and a black cable connected to it. This is the USB sound card. The yellow cable is the audio input from your guitar, and the black is processed audio out from Pure Data. The reason a USB sound card was necessary was because the Pi doesn't have a built in audio-in port. Having covered 5 of the 6 main components, all that remains is the Raspberry Pi. I'm not the person to explain the Pi, so I'll redirect you here to learn more about it.
Finally, to end this post, here are some more pictures:
|The VFD display and four pots|
|A shot of the pedal with my amp and strat|