Development issues

We tested several op amps. We recommend  you to use a rail-to-rail op amp, so you can achive the range we need (0-5V).

Arduino is not very capable of signal processing tasks

[Code] With time methods(we use this) –> Sampling rate limitation (Resolution constraint for high notes)

Adquisition circuit

This circuit has essentially 3 parts:

  • Electret microphone preamplifier (green)

The basic electret mic circuit consists of the mic itself, a resistor and a capacitor. That circuit is provided by the manufacturer. Values can be adjusted in order to match your requirements.

  • Operational amplifier (red)

We use the chosen op amp (check materials section) in an inverting amplifier configuration. The amplification follows this formula:

In our case, Vs is the voltage coming from the mic capacitor C1 and Vo the voltage in the op amp output. Rf corresponds to R5 and Rs to R4. So, the gain will be R5/R4 = 470.

  • Shifting (blue)

As we needed to have our signal centered at 2.5V in order to work with the Arduino analog input, we added a shifting part. It consists of an output coupling capacitor and a voltage divider built with two resistors of the same value.

Finally, the signal after the shifting enters the Arduino A0 analog input pin.

circuit,

Actuator circuit

We decided to show the output with LED’s. There are six yellow LED’s, each one corresponding to a different guitar string and  each one connected to a different Arduino digital output .
The other three (one green and two red) are the indicators of the tuning accuracy.

As all LEDs are powered through 5V digital signals, and they need to have a voltage drop of around 2V, there should be a resistor producing a 3V voltage drop. Furthermore, the current through the LEDs should be around 20mA. So, the formula to calculate the resistor is: R = V/I = 3 / 0.020 = 150 ohms. The nearest resistor value we had was 100 ohms.

circuit2