Results
Overall, this project was a complete success (naturally). However, there were many times when the outlook was bleak. On the long and winding road to defeating "The Shredder", we encountered many obstacles.

The first troubles came when we tried to sample the guitar signal. We quickly discovered that the guitar's signal is on the order of millivolts. The Atmel microprocessor typically expects a voltage swing of 0 to 5 volts. Clearly a few milivolts would give us almost no resolution. This called for the introduction of an amplifier. Given the fact that most our Cornell experience is in theory, we spent countless hours playing with the opamp circuits trying to find the right gain, or even the right connections. Many a time we got no results at all. After hours of tweaking with the circuitry we settled on a gain of 10:1 with a DC offset of approximately 2.5 Volts.

We spent a great deal of time working with digital to analog conversion hardware. Ultimately we found the best way for our purposes to convert the signal was with the standard 7-bit R-2R ladder much like the one we were introduced to in lab. Although this does not give a perfect reconstruction of the original signal, it is more than adequate considering the other sound issues involved.

Once we heard sound from the processor, we realized that we were getting tremendous levels of noise that dominated the output. We applied simple RC low pass filters to both the input and output. This had several effects. It minimized the noise contributions of the output. It also decreased the volume of the signal and even filtered out some of the upper guitar frequencies.

In order to use RAM in our circuit, we needed to use the Atmel 8515 microprocessor. This meant that we needed an external Analog to Digital converter. This turned out to be one of the biggest headaches that we encountered. It took many hours of struggling (often at unusually late hours) to get a protocol working to convert the input signal to its digital representation. We modelled our code on that of Daanish Khan (found easily on a link from the EE476 web page: http://instruct1.cit.cornell.edu/courses/ee476/AtmelStuff/adc2.htm

The most important observation of all: Analog BLOWS!(or perhaps, analog doesn't work - EVER)

We also ran into a few minor problems with power supplies. The lab seemed to run into a shortage of working 12 Volt power supplies. One of them refused to give us a 12 Volt output. Several of them seemed to do nothing at all. Sometimes they just got tired of supplying power and decided to stop working. In fact I think we blew quite a few fuses in the process (shh, don't tell Professor Land.) We learned the valuable lesson that one should never hook VDD directly to ground. Nor should one use his tounge to make a connection after the fuse blows.

In the end, however, we developed a working prototype. This included an easy to use Matlab graphical user inerface and 6 different effects. We even have a few deamons that decided to take up residence in our project. First of all, when we calculated the appropriate sampling rate, it turned out that our period was 666 timer ticks. In addition to that, one night while we were playing around with some of the circuitry, we stared hearing voices coming from the amplifier. They started out quiet at first, and then when I picked up the guitar they grew louder. When we listened carefully we noticed that these voices were singing oldies tunes. It turns out that these mysterious deamons decided to implant a small radio in the amplifier and an antenna in the guitar. Another wonderful side effect of analog circuitry.

Most importantly, we had a lot of fun doing this project. And we might have learned something too! :-)

EE 476 - Final Project - Sp '00