Proto Pedal Example: Programmable Digital Pedal

Contributors: Byron J.
Favorited Favorite 11

Add the Software

It's up to your imagination to come up with the effect you want, but here's a few you can load right in and try.

They can be found in the teensy sketches directory in the Proto Pedal github repository.


We've already used the throughput sketch to test the audio hardware. It simply passes audio straight from the input to the output. Boring, but you can use it to make sure your system is working!

You can also use this as a template when creating new sketches.


The AutoRoller has an input filter for tone control, an output low-pass filter for effect, and a modulation source consisting of a sine wave generator with rate dependent on input peak values. The louder you play, the faster the filter sweeps. It creates a dynamically controlled warble, similar to a rotary tone cabinet.

alt text

AutoRoller block diagram.

Within the AutoRoller patch, the input hits a tone control, which allows the relative tonal balance to be adjusted. From there, it feeds a peak detector module. The output of the peak detector modulates the frequency of a sine wave, which is used to modulate the lowpass filter. The 'tone' knob is used to set the nominal characteristics of the output filter, combining cutoff frequency and resonance on a single knob.

alt text

The completed AutoRoller. The knobs are set to a good starting place for use with an electric guitar

More information about the AutoRoller can be found in the readme and other files in the repository.

Tape Echo Emulation

Finally, we've got an example of a tape echo emulation.

alt text

It consists of a delay line with highpass and lowpass filters in the feedback loop. It can be used as a subtly colored digital delay, or tweaked into an interactive, regenerative sound effect generator.

You can find the sketch and related files here.

Please note: the file for the echo contains some additional information about compiling the effect. In order to have the maximum amount of RAM available for the delay line, be sure to select a non-optimized build configuration in the tools->cpu speed menu.