Effects pedals: for some an object of overwhelming addiction, but for many, an opportunity to hack. Anyone who plays guitar (or buys presents for someone who does) knows of the infinite choice of pedals available. There are so many pedals because nailing the tone you hear in your head is an addictive quest, an itch that must be scratched. Rising to meet this challenge are a generation of programmable pedals that can tweak effects in clever ways.
With this in mind, [ElectroSmash] are back at it with another open source offering: the pedalSHIELD MEGA. Aimed at musicians and hackers who want to learn more about audio, DSP and programming, this is an open-hardware/open-software shield for the Arduino MEGA which transforms it into an effects pedal.
The hardware consists of an analog input stage which amplifies and filters the incoming signal before passing it to the Arduino, as well as an output stage which does the DAC-ing from the Arduino’s PWM outputs, and some more filtering/amplifying. Two 8-bit PWM outputs are used simultaneously to make pseudo 16-bit resolution — a technique you can read more about in their handy forum guide.
The list of effects currently implemented covers all the basics you’d expect, and provides a good starting point for writing custom effects. Perhaps a library for some of the commonly used config/operations would be useful? Naturally, there are some computational constraints when using an Arduino for DSP, though it’s up to you whether this is a frustrating fact, or an opportunity to write some nicely optimised code.
[ElectroSmash] don’t just do pedals either: here’s their open source guitar amp.
18 thoughts on “Stomping On Microcontrollers: Arduino Mega Guitar Effects Pedal”
I cannot help to think how awful this will work. The ADCs in the AVR chips are the worst of it’s kind, with a bit of luck you get 8 bits of actual data out of them, the rest is just noise.
As there is enough circuitry on this board already, I would put up a ADC from Analog Devices. Something like the ADS1013. Which in my experience, has 1 bit of noise on a bad day. Shouldn’t add much cost, but will reduce the noise considerably.
You’re right and yet wrong. A guitar pedal is about adding distortion to the signal and so their is no requirement for having a oscilloscope perfect output. Same reason why so many people like tube amps – the distortion they inherently generate is considered to be nice on the ears
…not all pedals are distortion effects. I don’t know about you, but distortion isn’t something I’d purposely add to any time-domain effect like phase, delay, or harmonizers…or even a basic amplitude effect like tremolo! Plus ADC distortion can sound pretty horrible compared to the pleasing harmonic content of something like the creamy distortion you’d get from overdriving a tube amp.
The ADS1013 ? You cannot use that for audio, it is a 3Ksps ADC!!, The AVR converters are 10 bits but at least they run over 30ksps.
My mistake, didn’t check the sample rate, but pretty sure they have an audio equivalent. Hench, the “something like”
A positive before a negative– I think this project is really, really cool: But yes, I wish it were built upon a much more powerful microcontroller. Even some of the STM series would do. But Arduino these days is so ‘ubiquitous’, what can one do ? I still think it is a fabulous project.
Could build it on a Nucleo-L152RE, ARM processor with better ADCs then the AVR. Has an on-board DAC, and not that hard to program with the mbed environment. Also a smaller form-factor.
Am I the only person who has concerns not about how this will work but about the practicalities of stomping on an Arduino with a shield on it? I don’t think it will take kindly to those forces, even if not intentional but done during a live performance by accident because it is physically on the ground and meant to be struck with a foot.
Agreed. ElectroSmash seems aptly named!
Great i need one for my air guitar. SOLO!!!!!!
Just the obvious question springs to mind, why mention their much older arduino model, when they’ve completed the raspberry pi based model?
You tell me this now? Man, I formed out for the new Bela mini, AND I have an old Pi 3b sitting around. Damn…
And the even more obvious answer to your question is that , they’ve already covered both version of the pedal at least once. This exact pedal was posted 5 years ago. https://hackaday.com/2013/12/21/an-opensource-arduino-guitar-pedal/ and then the pedal pi was covered last year https://hackaday.com/2017/09/12/pedal-pi-simple-programmable-guitar-pedal/ They were simply due to repost the arduino first , and wait a few months to talk about the raspberry pi version again.
This isn’t the same pedal.
It is a different guitar pedal, that one was the DUE model using DACs at the output and this one uses an Arduino MEGA with an oled screen and dual PWM outputs
That is cool! can you combine more than one effect at the same time?
Thats a really cool project, I have an old Arduino Mega sitting around and this could be a good idea to bring it back to life, thanks!!
Please be kind and respectful to help make the comments section excellent. (Comment Policy)