Instructables
Picture of Arduino Guitar Pedal
main2.jpg


The Arduino Guitar Pedal is a digital multi-effect pedal based upon the Lo-Fi Arduino Guitar Pedal originally posted by Kyle McDonald. I made a few modifications to his original design. The most noticeable changes are the built-in preamp, and the active mixer stage which lets you combine the clean signal with the effects signal. I also added a sturdier case, foot switch, and rotary switch to have 6 discreet steps between the different effects.

The cool thing about this pedal is that it can be endlessly customized. If you don't like one of the effects, simply program another one. In this way, this pedal's potential is largely dependent upon your skills and imagination as a programmer.

Step 1: Go get stuff

Picture of Go get stuff
You will need:

(x1) Arduino Uno REV 3 (Radioshack #276-128)
(x1) Make MakerShield Prototyping Kit (Radioshack #276-138)
(x3) 100K-Ohm Linear-Taper Potentiometer (Radioshack #271-092)
(x1) 2-Pole, 6-Position Rotary Switch (Radioshack #275-1386)
(x4) Hexagonal Control Knob with Aluminum Insert (Radioshack #274-415)
(x1) TL082/TL082CP Wide Dual JFET Input Op Amp (8-Pin DIP) (Radioshack #276-1715)
(x2) 1/4" Stereo Panel-Mount Audio Jack (Radioshack #274-312)
(x4) 1uF 63v capacitor (Radioshack #55047191)
(x2) 47uF 16v capacitor (Radioshack #55047280)
(x1) 100pF 50V 10% Hi-Q Ceramic Disc Capacitor (Radioshack #272-123)
(x1) 0.082µf 100V Mylar Capacitor (Radioshack #55046837)
(x1) 5pf 50V Ceramic Disc Capacitor (Radioshack #55047529)
(x6) 10K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #271-1335)
(x2) 1M Ohm 1/4-Watt Carbon Film Resistor (Radioshack #271-1356)
(x1) 390K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #55049555)
(x1) 1.5K Ohm 1/4W 5% Carbon Film Resistor (Radioshack #271-1120)
(x1) 510K Ohm 1/4W 5% Carbon Film Resistor (Radioshack #55049227)
(x1) 330K Ohm 1/4W 5% Carbon Film Resistor (Radioshack #44049468)
(x1) 4.7K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #271-1330)
(x1) 12K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #55049436)
(x1) 1.2K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #55049409)
(x1) 1K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #271-1321)
(x2) 100K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #271-1347)
(x1) 22K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #271-1339)
(x1) 33K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #55048044)
(x1) 47K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #271-1342)
(x1) 68K Ohm 1/4-Watt Carbon Film Resistor (Radioshack #55049451)
(x1) Heavy-Duty 9V Snap Connectors (Radioshack #270-324)
(x1) 90-Ft. UL-Recognized Hookup Wire (Radioshack #278-1221)
(x1) Enercell® Alkaline 9 Volt Battery (Radioshack #25-853)
(x1) Box 'BB' Size Orange Powder Coat (Small Bear #0301G)
(x1) DPDT Stomp switch (Small Bear #0203)
(x1) 1/8" x 6" x 6" rubber mat
(x1) 1/8" x 12" x 12" cork mat

Step 2: Header breakdown

Picture of Header breakdown
2B.jpg
2C.jpg
2D.jpg
2E.jpg
Break the male header strip down to fit properly in the Maker Shield kit.

An easy way to do this is to insert the end of the strip into each of the Arduino sockets and then snap off the excess pins. You will end up with 4 strips of proper size.

Step 3: Solder

Picture of Solder
3B.jpg
3C.jpg
Insert the male header pins into the Maker Shield and solder them into place.

Step 4: Template

Picture of Template
4B.jpg
4C.jpg
Print out the attached template on full-sheet adhesive paper.

Cut out each of the two squares.

(The file has the pattern repeated twice in case to optimize use of the paper, and in case you need an extra.)

Step 5: Drill

Peel off the backing of the adhesive template and stick it squarely on the front of the casing.

Drill all of the crosses with a 1/8" drill bit.

Starting from the left side, widen the first three holes with a 9/32" drill bit.

Widen the last hole of the top row with a 5/16" dill bit.

And then widen the singular hole in the bottom right with a 1/2" spade bit to finish off the front of the case.

Peel off the adhesive template from the front of the case.

Next, stick the next adhesive template to the back edge. In other words, stick it to the edge face most closely abutting the potentiometer holes.

Drill the crosses first with 1/8" holes and then widen them with larger 3/8" holes.

Peel away this template as well, and the case should be ready.

Step 6: Wire the pots

Picture of Wire the pots
6B.jpg
Attach three 6" wires to each of the potentiometers.

For simplicity's sake, you should attach a black ground wire to the pin on the left, a green signal wire to the pin in the middle, and a red power wire to the pin on the right.

Step 7: Wire the Rotary Switch

Picture of Wire the Rotary Switch
7B.jpg
7C.jpg
7D.jpg
Attach a 6" black wire to one of the inner pins.

Next, attach 6" red wires to the 3 outer pins both to the immediate left and right of the black inner pin.

To be sure you did this right, you may consider testing the connections with a multimeter.

Step 8: Build the circuit

Picture of Build the circuit
schematic.jpg
cap017.jpg
Start to build the circuit as pictured in the schematic. To see the schematic larger, click the little "i" in the upper right-hand corner of the image.

For now, while building the circuit, do not worry about the potentiometers, rotary switch, bypass switch, and input jacks.

To better understand what you are doing, this circuit consists of a few different parts:

Preamp
The preamp uses one of the two op amps packaged in the TL082. The preamp is both boosting the guitar signal to line level and inverting the signal. When it comes out of the op amp the signal is split between the Arduino input and the "clean" volume knob for the mixer.

Arduino Input
The input for the Arduino was copied from Kyle's input circuit. It is basically taking the audio signal from the guitar and constraining it to roughly 1.2V, because the aref voltage within the Arduino has been configured to look for an audio signal in this range. The signal is then being sent to analog pin 0 on the Arduino. From here, the Arduino is then converting this to a digital signal using its built in ADC. This is a processor intensive activity and where most of the Arduino's resources are being allocated.

You can get a faster conversion rate and do more multiprocessing of the audio signal using timer interrupts. To learn more about that, check out this page on Arduino Real-Time Audio Processing.

Arduino
The Arduino is where all of the fancy-shmancy digital signal processing is happening. I'll explain a bit more about the code later. For now, in relation to the hardware, what you need to know is that there is both a 100k potentiometer connected to analog pin 3 and a 6-position rotary switch connected to analog pin 2.

The 6-position rotary switch is functioning in a similar way to a potentiometer, but rather than sweeping through a resistance range, each pin has a discrete resistance associated with it. As you select different pins,  voltage dividers of different values are created.

Since the analog reference voltage had to be remapped to handle the incoming audio signal, it is important to use aref as the voltage source, as opposed to the standard 5V for both the rotary switch and the potentiometer.

Arduino Output
The Arduino output is only loosely based on Kyle's circuit. The part I kept was the weighted pin approach to get the Arduino to output 10-bit audio using only 2 pins. I stuck with his suggested weighted resistor ratings of 1.5K as the 8-bit value and 390K as the added 2-bit value (which is basically 1.5K x 256). From there I scrapped the rest. His output stage components were unnecessary because the audio was not going to an output, but rather to the new audio mixer stage.

Mixer Output
The effects output from the Arduino goes to a 100K pot connected to the audio mixer op amp. This pot is then used in conjunction with the clean signal coming from the other 100K potentiometer to mix the volume of the two signals together in the op amp.

The second op amp on the TL082 is both mixing the audio signals together, and inverting the signal once again to get it back in phase with the original guitar signal. From here the signal goes through a 1uF DC blocking capacitor and finally to the output jack.

Bypass Switch
The bypass switch toggles between the effects circuit and the output jack. In other words, it either routes the incoming audio to the TL082 and the Arduino, or skips all of this entirely and sends the input straight to the output jack without any altering. In essence, it bypasses the effects (and hence, is a bypass switch).

I have included the Fritzing file for this circuit if you want to look at it closer. The breadboard view and schematic view should be relatively accurate. However, the PCB view has not been touched and probably will not work at all. This file does not include the input and output jacks.

Step 9: Cut Brackets

Picture of Cut Brackets
Cut out two brackets using the template file attached to this step. They both should be cut out of non-conductive material.

I cut out the larger base bracket out of a thin cork mat and the smaller potentiometer bracket out of 1/8" rubber.

Step 10: Insert knobs

Picture of Insert knobs
10B.jpg
10C.jpg
10D.jpg
10E.jpg
Place the rubber bracket on the inside of the case so that it aligns with the drilled holes.

Insert the potentiometers up through the rubber bracket and the 9/32" holes in the case and lock them firmly in place with nuts.

Install the rotary switch in the same fashion in the larger 5/16" hole.

Step 11: Trim

Picture of Trim
11B.jpg
11C.jpg
If you use long shaft potentiometers or rotary switches, trim them down such that the shafts are 3/8" long.

I used a Dremel with a metal cutting wheel, but a hacksaw will do the job too.

Step 12: Switch

Picture of Switch
12B.jpg
Insert the foot switch into the larger 1/2" hole and lock it in place with its mounting nut.

Step 13: Stereo jacks

Picture of Stereo jacks
13B.jpg
13C.jpg
We will be using stereo jacks for what is fundamentally a mono circuit. The reason for this is that the stereo connection will actually serve as the power switch for the pedal.

The way this works is that when mono plugs are inserted into each of the jacks, it connects the batteries ground connection (which is connected to the stereo tab) with the ground connection on the barrel. So, only when both jacks are inserted can ground flow from the battery to the Arduino and completed the circuit.

To make this work, first connect together the ground tabs on each jack with a short piece of wire.

Next, connect the black wire from the battery snap to one of the stereo audio tabs. This is the smaller tab that touches the jack about halfway up the plug.

Connect a 6" black wire to the other stereo tab on the other jack.

Lastly, connect a 6" red wire to the mono tabs on each of the jacks. This is the large tab that touches the tip of the male mono plug.

Step 14: Insert jacks

Picture of Insert jacks
14A.jpg
Insert the two audio jacks into the two holes in the side of the case and lock them in place with their mounting nuts.

Once installed, check that none of the metal tabs on the jack are touching the body of the potentiometers. Make adjustments as necessary.

Step 15: Wire the switch

Picture of Wire the switch
15B.jpg
Wire one of the outer pairs of the DPDT stomp switch together.

Wire one of the jacks to one of the center pins on the switch. Wire the other jack to the other center pin.

Connect a 6" wire to each of the remaining outer pins on the switch.

The wire that is in line with the jack on the right should be the input. The wire that is in line with the switch on the left should be the output.

Step 16: Finish the wiring

Picture of Finish the wiring
Trim the wires attached to the components installed inside the case to remove any slack before you solder them to the Arduino shield.

Wire them to the Arduino shield as specified in the schematic.

Step 17: Cork

Picture of Cork
Affix the cork mat to the inside of the case's lid. This will keep the pins on the Arduino from getting shorted on the metal of the case.

Step 18: Program

Picture of Program
The code that this pedal is largely built upon ArduinoDSP which was written by Kyle McDonald. He did some fancy things like mess around with the registers to optimize the PWM pins and change the analog reference voltage. To learn more about how his code is working, check out his Instructable.

One of my favorite effects on this pedal is a slight audio (distortion) delay. I was inspired to try creating a delay line after seeing this really simple code posted on Little Scale blog.

The Arduino was not designed for real-time audio signal processing and this code is both memory and processor intensive. The code that is based on the audio delay is especially memory intensive. I suspect the addition of a stand-alone ADC chip and external RAM will greatly improve the ability for this pedal to do awesome things.

There are 6 spots for different effects in my code, but I have only included 5. I have left a blank spot in the code for you to design and enter your own effect. That said, you can replace any slot with any code that you wish. However, keep in mind that trying to do anything too fancy will overwhelm the chip and keep anything from happening.

Download the code attached to this step.

Step 19: Attach

Picture of Attach
19B.jpg
Attach the Arduino to the shield inside the case.

Step 20: Power

Picture of Power
20B.jpg
20C.jpg
Plug in the 9V battery to the 9V battery connector.

Carefully situate the battery snugly between the DPDT switch and the Arduino.

Step 21: Case closed

Picture of Case closed
21B.jpg
Put the lid on and screw it shut.

Step 22: Knobs

Picture of Knobs
22B.jpg
22C.jpg
Place knobs onto the potentiometer and rotary switch shafts.

Lock them in place by tightening the set screws.

Step 23: Plug and play

Picture of Plug and play
Plug in your guitar to the input, connect an amp to the output, and rock out.
 
Remove these adsRemove these ads by Signing Up
1-40 of 170Next »
nitro21 month ago

Hi ,

Can someone confirm the correctness of the veroboard design ??

I am a bit confused about some capacitors

my project is almost finished , so a confirmation of that design would rocket me forwards toward the finish.

thanks a lot for your help

m_IMG_3995 (2).jpgm_IMG_3925.jpg
giovani.robb2 months ago

Do you have another image of the circuit of step 8? It gets blurred when I zoom it

ashish_bait2 months ago

hii,

would you please tell me what we are exactly connecting to analog 2,3.i couldn't find any knobs(potentiometers) attached anywhere in ckt dia..also the input signal.

this is my first time to follow instructables project i really love this one.i hope you will help me.reply as soon as possible.

THANK YOU.

Carrion Crow made it!3 months ago

Here's the finished thing. It works but only after I correctly insulated the pots from the casing. See my other comment for the other things I noticed. Mine doesn't have a switched input jack, instead I opted for a 2.1mm power port on the back, the same kind as used by standard effects pedals. I just use a 9V battery with the correct connector.

Be very careful when pushing the knob on your rotary switch as it can break the switch and they are not fun and games to reassemble. I used a sharp blade to cut down the shaft to the right diameter for it to slide on easily and be secured with the screw.

Also make sure your input and output are the right way around when testing. That seems like an obvious statement to make but it is a likely error. The schematic isn't the easiest to comprehend, my method was to go through with a felt tip pen and colour in each link as I soldered it down. This is definitely worthwhile as it reduces the chance of error.

photo 4.JPGphoto 3.JPGphoto (1).JPG
Carrion Crow made it!3 months ago

Hi all, I attempted this this week. Some important things:

1. It will only work if you compile with an older version of the Arduino software. I used version 0021 found here: http://arduino.cc/en/Main/OldSoftwareReleases

2. The schematic uses a capacitor (C2, 100nF if I remember right) not found in the bill of materials at the top of this article, the only reason I had enough is because I ordered two of everything because I'm experienced at being inexperienced. I used the other 82nF in its place and all was well.

3. The design relies on you using a switched type of 6mm jack. I ordered non-switched ones because I am a fool. I don't like this method of turning it on and off, I would rather the main switch included more poles and throws so I think my solution will be to buy another foot switch for this build. It would be the easiest to plumb in to the case.

4. The article doesn't state whether or not you need a special spade bit for metal. I've yet to cut the larger holes in my Hammond enclosure but I would suspect it would make short work of spade bits intended for wood (most of the ones for sale seem to be, otherwise they are prohibitively expensive). I would be tempted to print the enclosure on my reprap in future. I had to phone my father regarding this issue, he's going to email me some tips.

5. Some pots have a low range over the ADC I think this may be corrected in code somehow. I measured the voltages and they seemed to sweep uniformly between 0 and 5V.

I'll report back when I've got my case made up and the selector wheel installed.

photo (1).JPG
jleeuwen3 months ago

can someone make a shopping list for dx.com ?
Im not that experianced in electronics that i can figure it out my self

fightdu12 months ago
i have been searching for octive pedel coding specifically down or bass octive .also does it matter if i use arduino mini or ,nano ?

You need to check that the pwm pins in nano and mini are enough, moreover finally you must translate the code for linking the correct pins to the timer (look at for my previous coment for Leonardo). However, I am not sure how much memory have the mini and nano. When I run a code for an UNO this appears: Global variables use 2,025 bytes (98%) of dynamic memory, leaving 23 bytes for local variables. Maximum is 2,048 bytes.

aslaine11 months ago
hello there i'm currently trying to make this project but whenever i try to verify the code and then upload it to the arduino it gives me errors...Does anyone has the same problems as me or knows what to do?

give us details, Arduino version, board you use, and paste the error.

I've been following this tutorial and I've some issues with the code, I already changed the "WProgram.h" and "WConstants.h" with "Arduino.h" but I still get some errors:

dsp.cpp: In function 'void output(int, short int)':
dsp.cpp:23: error: 'OCR2B' was not declared in this scope
dsp.cpp:24: error: 'OCR2A' was not declared in this scope

I'm using Arduino 1.0.3 and my board is an Arduino Leonardo

Hello I am using an Arduino Leonardo as well. First, in new IDE's (mine is 1.5.6 r2) we need to change "WProgram.h" and "WConstants.h" with "Arduino.h" as you said. I realized that if you select that the board is an Arduino one, the code works perfect but when we change the board for an Arduino Leonardo I have the next error

timers.cpp: In function ‘void waveformGenerationMode(int, int)’:

timers.cpp:29: error: ‘TCCR2B’ was not declared in this scope

timers.cpp:30: error: ‘TCCR2A’ was not declared in this scope

Basically your error are mine are the same, the meaning of the error is that the variables are not defined in the header. Then I saw that there is something extrange. The variable is defined as OCR2A in the file timers.h but it is used as TCCR2A in the timers.cpp, somehow Arduino one manages to get this change but the Leonardo dont.

For fixing it, do yo have declared the OCR2A and OCR2B variables in the time.h file?

I dont understand the difference between #define pwm11 OCR2A and int OCR2A = 11; the 2nd one makes more sense for me, even the sintaxis of #define in the time.h file seems to be different to the standard one. http://arduino.cc/en/Reference/Define

Does someone over here knows what is the difference betwen Arduino one and leonardo in terms of libreries?

I got the the code running for a Leonardo, the problem was that OCR2A, OCR2B, TCCR2A and TCCR2B references to the timer 2, The arduino Leonardo does not have that timer, then we need to change the timer 2 for one that Leonardo really has. Leonardo has 0, 1, 3, 4 ones (but not 2, weird). Moreover the other timers are not linked to the same pins in Leonardo and in UNO.

It is necesary to reorganize them.

Open the file

/arduino-1.5.6-r2/hardware/arduino/avr/variants/leonardo/pins_arduino.h,

Mine is linked as following

TIMER0B,/* 3 */ TIMER3A,/* 5 */ TIMER4D,/* 6 */ TIMER1A,/* 9 */

TIMER1B,/* 10 */ TIMER0A,/* 11 */ TIMER4A,/* 13 */

The definitions on the file timers.h must be

#define pwm3 OCR0B

#define pwm5 OCR3A

#define pwm6 OCR4D

#define pwm9 OCR1A

#define pwm10 OCR1B

#define pwm11 OCR0A

********and timers.cpp must content the following code: (et voilà)

#include "timers.h"

#include "Arduino.h"

int getTimer(int pin) {

switch(pin) {

case 5: case 6: return 0;

case 9: case 10: return 1;

}

return 2; // 3, 11

}

int getChannel(int pin) {

switch(pin) {

case 6: case 10: case 11: return 0;

}

return 1; // 3, 9, 5

}

// - - -- timer settings

void waveformGenerationMode(int pin, int type) {

int timer = getTimer(pin);

int wgm = type == phaseCorrect ? B001 : B011;

if(timer == 0) {

TCCR3A &= ~(B1 << 3); // clear WGM02

TCCR0A &= ~B11; // clear WGM01 and WGM00

TCCR0A |= wgm; // set WGM01 and WGM00

} else if(timer == 2) {

TCCR0B &= ~(B1 << 3); // clear WGM23

TCCR0A &= ~B11; // clear WGM21 and WGM20

TCCR0A |= wgm; // set WGM21 and WGM20

}

}

void waveformGenerationMode(int pin, int type, int bits) {

int timer = getTimer(pin);

if(timer == 1) {

TCCR1B &= ~(B11 << 3); // clear WGM13 and WGM12

TCCR1A &= ~B11; // clear WGM11 and WGM10

TCCR1B |= (type << 3); // set WGM12

TCCR1A |= (bits - 7);

}

}

void timerPrescale(int pin, int prescale) {

int timer = getTimer(pin);

if(timer == 0) {

TCCR3A &= ~B111; // clear CS02 CS01 CS00

TCCR3A |= getPrescale01(prescale);

} else if(timer == 1) {

TCCR1B &= ~B111; // clear CS12 CS11 CS10

TCCR1B |= getPrescale01(prescale);

} else if(timer == 2) {

TCCR0B &= ~B111; // clear CS22 CS21 CS20

TCCR0B |= getPrescale2(prescale);

}

}

int getPrescale01(int prescale) {

switch(prescale) {

case 1: return B001;

case 8: return B010;

case 64: return B011;

case 256: return B100;

case 1024: return B101;

default: return B000;

}

}

int getPrescale2(int prescale) {

switch(prescale) {

case 1: return B001;

case 8: return B010;

case 32: return B011;

case 64: return B100;

case 128: return B101;

case 256: return B110;

case 1024: return B111;

default: return B000;

}

}

// - - -- analog prescaling

void analogPrescale(int divisionFactor) {

ADCSRA &= ~B111; // clear analog prescale

ADCSRA |= divisionFactor;

}

i have the same problem but start's with analogWrite not declared in scoop

use version 20
danejo9 months ago

For those of you having trouble following the corrections needed to make the pedal work, here is a veroboard layout I made. With this you can also create the circuit without the Arduino shield.

ard2.png
m4ns0nite danejo5 months ago

Hey , are you sure this layout is 100% correct ? I've been trying for days to make this pedal work and still nothing . I've checked it with the schematic and it seems right, but i'm an amateur and i can't be really sure . Have you managed to build this pedal ?

Sit tight - I will let you know as soon as it is done. I also bought twice as many parts so I can build it with the arduino shield kit board I have.

m4ns0nite5 months ago

Can someone please confirm that the veroboard layout made by

danejo is ok ?

I will let you know shortly - I have like 5 more components to solder....

lhörst6 months ago

I'm not 100% sure where i'm supposed to be wiring the input and output jacks to, unless it doesn't really make a difference. I have them on either side of the pushbutton but it doesn't appear to make a difference which side i connect them too.

I'm also testing mine with an oscilliscope and a function generator, if you could tell me what i'm supposed to be seeing to make sure i did it right that would be awesome!

Nithrate6 months ago

Have you tried using a Bass guitar instead of a guitar? It just sounds too fuzzy

STARDEMOS9 months ago
HI
THANKS FOR SHARING THIS PROJECT..

I CANNOT DOWNLOAD THE CODE. CAN YOU HELP ME?
jwestenberg10 months ago
I really want to make this, but since there are so much revisions that are only mentioned in the comments I don't think I can get it to work. I think it would really help if this instructable would be revised or someone would make a new working instructable.

cheers
aballen11 months ago
Can I use a TL072 for this(I have these on hand)
randofo (author)  aballen11 months ago
I see no reason why it should not work, but I cannot be 100% certain.
aloriedo1 year ago
Ok guys, I'm plannig to build this pedal... But, how does it actually sounds? And is it easy to build? Can I use my Arduino Leonardo to build it?
X1L31 year ago
I think the only reason most of your projects aren't working is because you're uploading the code with a later version of arduino. I just spent the afternoon on this and like a lot of others i had clean audio but no output from the atmega. So i downloaded arduino 0020 and uploaded the code with that. No need to rename libraries etc. Just open the code here and that's it. Providing your circuit is ok it'll work. It's very very dirty and very lo-fi. Which is cool by me. Awesome for synth basslines and drums. Stick a clean 808 through it and you've got instant raggacore.

Hope this helps. I spent hours going over the circuit, swapping chips, trying different caps and resistors etc. This is all it was though.

improCJB1 year ago
Hey there! I am currently working on building this pedal. I have a question about it and I was hoping I could get some feedback or clarity of information. My question is, what do the 3 potentiometers and the rotary switch do. Like what are their functions when the pedal is up an running? If you shed light on this subject that would be very helpful and greatly appreciated! Im looking forward to creating this pedal!
jservin11 year ago
Hi,
I have made this with a breadboard and I get no effects running through. I am using the arduino rev 3 and tried using arduino 20 as well. I get clean guitar through and have checked all my wiring and polarity on the breadboard, everything looks good. I am thinking either the arduino is deffective or the code isnt processing right even though I followed all the instruction to the T. I even changed Wprogram.h and Wconstants.h in the code. Is there anything i am missing that should be done to the code specifically for a rev 3 arduino?
jreeg1 year ago
I recently finished putting everything together, and I get no sound out of the arduino. I've checked and re-checked my connections according to the schematic with a multimeter, and everything looks to be in order, but still I get nothing.

Is this a software problem? I only modified the Wprogram.h and Wconstants.h to both be arduino.h in the code.

Would soldering the resistors in the wrong order on the rotary switch cause a problem? Because that's the only other thing I can think of.
Hi,
Great work, I'm doing mine version of this guitar pedal with a different preamp and output, but i have just one problem :
I can't find Wprogram.h and Wconstants.h, i read all comments and nobody seems to have this probleme.
Is it about my version of arduino ide ? (i didnt dl version 20 yet)
replace both with "Arduino.h" and it should take care of the problem
csmith1521 year ago
Hi, so I have put together the circuit and and I am in the process of testing it. I am getting a clean signal out, however it seems as tho no effected signal is being sent from the Arduino. Can anyone offer me any help? I am not sure if the rotary switch is doing nothing because there is no effected signal coming out but having a little issue with that as well.

I have worked on including a small display to show which effect is selected. I got the rotary switch to work with the display without including the audio/op amp. However when I include the display with the rest of everything it does not work.
I am more concerned about getting the effects to work more than the display.

Any help is much appreciated!!!
BassPab1 year ago
Can you also use this for your bass?
jchhebson1 year ago
I don't know why, but I'm still unable to find the template to download.
BenBurge1 year ago
What exactly do each knobs/rotary switch do? You do an awesome job coving the build part of the project, but i'd really love to see the final product!
jreeg1 year ago
I'm going to be putting this together in a few days when the parts come in the mail, and I noticed that the templates for all the drilling on the project box and for cutting out the brackets aren't actually attached to their steps. Just something I thought you might want to know. Thanks!
I hear the clean sound, but none of the fx effects. Even I try to make the program with only one effect without array, but doesnt seem to work. Also I tried to change the resistors and capacitors and others things as said in the comments below but nothing. Any idea of what can it be? Thanks for reading.
randofo (author)  Richard Zusak1 year ago
Which effect are you trying?
1-40 of 170Next »