The complete project is Open Source Hardware, the design was done using KiCad, an open-source and free of charge ECAD tool. All the project files, schematics, and bill of materials are public. The circuit can be broken down into 5 simpler blocks: Power Supply, Input Stage, Output Stage, User Interface and Raspberry Pi Connector:
In a nutshell, it works like this: One op-amp will prepare the signal to be digitized by the ADC (amplifying and filtering the waveform) and also 1 opamp will recover the signal from the Pi Zero board. One external ADC is used to read the guitar signal and two PWM signals are used in parallel to generate the output signal.
The guitar signal is amplified and filtered using one op-amp, this part of the circuit looks very similar th the MXR MicroAmp guitar pedal, you can have a look to the analysis.
The trimmer VR1 adjusts the gain of this amplifier from 1 to 21, so the guitar level (typically 200mVpp) can be optimized for the ADC (ideally 3.3Vpp). The signal pass through several filters:
- 2 low pass filters (formed by R2&C2, R4&C5) that will remove the excess of high harmonics that can create aliasing during the ADC signal acquisition. The cut frequency used is 5KHz, also used in other commercial effects.
- 2 high pass filters: (formed by R1&C1, R3&C3) that will remove DC and avoid any hum in the signal.
Other important parts:
R0: is a pull-down resistor which avoids popping sounds when the pedal is switched on. The input pull-down resistor becomes the maximum input impedance of the pedal.
R1: Is a bias resistor, it gives the virtual ground (1.5V) to the op-amp.
C4: Will eliminate oscillations or noise in the line.
Uses a Sallen & Key 3rd order low pass filter which removes harmonics above 5KHz. Two PWM signals are used in parallel improving the bit resolution (2x6bits). If you want to read more about the PWM audio generation read the forum topic dedicated to the PWM configuration options. There is also a fantastic research done by OpenMusic Labs referring to this topic.
The power supply is a crucial part of the design, it is limited to 3.3V, this is why a rail-to-rail op-amp that allows to work with audio signals very close to the supply rails.
The power rails used in the design 3.3V and 5V are taken from the Raspberry Pi Zero, these levels are famous for being noisy, this is why several power filters are used:
- 100nF caps (C10 and C15) are placed very close to the ICs (opamp and ADC) for local decoupling.
- Two C-R-C filters (C11&R13&C12 and C13&R14&C14) are used to remove high freq noise from the power lines. The values are pretty high (220uF and 300R) that will guarantee that any noise over 2Hz is attenuated.
A resistor divider R11&R12 generates 1.6V for virtual ground and the cap C16 remove ripple on the power line.
The player can use 2 configurable push-buttons, 1 configurable toggle switch, 3PDT true-bypass footswitch and a programmable LED.
Raspberry Pi Connector:
2x20 pin header will link the hat with the PiZero transferring the signals and power supply.
Basically, the tip (signal) is pin1 and goes deeper into the jack.The pins 2 and 3 are ground (guitar mono signal) and are more at the "output side of the jack".
pins 1 2 3 are mirrored at the "other side" of the jack 1 faces 1, 2 faces 2, 3 faces 3. The trick here: Is that the pins of the left hand side get disconnected from the ones on the right hand side, so you only need to connect to the pins on the right (if you look straight to the hole)
The administrator has disabled public write access.
Pedal Pi Circuit Analysis.
3 years 1 week ago #1316
Pedal-Pi is a lo-fi programmable guitar pedal that works with the Raspberry Pi ZERO Board. The project is totally Open Source & Open Hardware and made for hackers, programmers and musicians that want to experiment with sounds and learn about digital audio.
You can code your own effects using standard C and get inspiration from the ready-to-use effects from the forum, like the Clean/Transparent, Booster/Volume, Distortion, Fuzz, Delay, Echo, Octaver, Reverb, Tremolo, Looper, etc.