pedalSHIELD Arduino Guitar Pedal.
pedalSHIELD is a programmable Arduino Open Source & Open Hardware guitar pedal made for guitarists, hackers and programmers. Users can program their own effects in C/C++ or download ready effects from the online library.
It is designed to be a platform to learn about digital signal processing, effects, synthesizers and experiment without deep knowledge in electronics or programming.
How Does it Work?
The shield has three parts:
- The Input Stage or Preamp: Amplifies the guitar input signal and sends it to the Arduino microcontroller to be processed.
- Arduino Board: It does all the Digital Signal Processing (DSP) modifying the signal and adding the effect (delay, echo, distortion, volume…).
- The Output Stage: Once the waveform is processed, the signal is taken from the Arduino DACs and prepared to be sent to the Guitar Amplifier.
- This part also includes a Summing Amplifier which is very useful for delay effects like echo or chorus.
How to Program it?
The shield is programmed in C/C++ using the standard free Arduino platform (Linux/Windows/Mac). All tools and programs are open source and compatible with Arduino libraries.
pedalSHIELD Hardware Design.
- Based in Arduino Due.
- Configurable sampling time from 8kHz to 192kHz.
- More than 2200 instructions per sample at 48kHz
- 84MHz 32bit Atmel SAM3X8E ARM Cortex-M3.
- 96KB RAM, 512KB Flash Memory.
- Integrated DMA.
- 12 bit ADC/DAC integrated sampling up to 1Msps.
- 3 Configurable potentiometers.
- 2 Configurable switches.
- Blue power-on led PWM controlled.
- True Bypass Footswitch.
- Input Jack, 1/4 inch unbalanced, Zin=10M?.
- Output Jack, 1/4 inch unbalanced, Zout=1K?.
- Power supply: power taken from Arduino Due board.
The functionality is simple; 2 opamps will prepare the signal to be digitized and also 2 opamps will recover the signal from
the microcontroller. Two ADCs in parallel can be used to read the guitar signal, improving the bit depth (2x12bits). Furthermore, this arrange is also compatible with the «Double Span and Digitize Signals using Two ADCs» by placing the Jumper1.
- Input Stage / Preamp: The guitar signal is amplified for better acquisition by the first op-amp which follows the MicroAmp guitar pedal design. The trimmer VR1 adjusts the gain of this amplifier. There is also program which helps to automatically adjust this trimmer. The second inverting op-amp inverts the amplified signal to be applied to the ADC1. The Diodes D1, D2, D3, D4 are clamping diodes that protect the Arduino’s ADC from signals above 3,3V and below 0V.
- The Output State: Using a Differential amplifier (Gain=1) two DACs can be read in parallel improving the bit resolution (2x12bits). However, if a signal is generated at DAC0 and DAC1 is not used, the Differential amplifier behaves as a normal Buffer. The last op-amp is in a Summing configuration, adding the processed signal and the original one if the Mix Switch is ON. This stage is very convenient to implement some pedals like delay, flanger, chorus, metronome, etc..
- The Power Supply: Generates ±5V to feed the operational amplifiers and achieve maximum signal swing without distortion.
- User Interface: Is composed by the configurable potentiometers, switches, footswitch and LED.
- Arduino Connectors: 5 connectors link the shield with Arduino transferring the signals.
You can also find all the coding, bill of materials, and source files for the board in their website!