Instructable Posted and Final Thoughts

Our Instructable can be found by clicking the Instructable tab in the top right corner of the page or by clicking the menu drop-down button and selecting Instructable.

This project has been a great learning experience for us. It gave us hands-on experience working with signals that we learned how to manipulate in class as well as gave us insight to what Senior Design will be like next year. We encourage all that come across our site to try and build a system like this on your own and gain some practical knowledge.


Meeting: 4/27/17

After our meeting yesterday, I took the circuit home and changed one of the resistors to give us a larger gain. Previously, the circuit would only amplify our ~50mV signal to ~250mV (all of these values are peak to peak). We wanted our signal to have an amplified value less than (but close to) 5V. I was able to achieve a 2.5V signal, which the code seemed to be able to read without any issues. Here is our final circuit schematic:

final schematic

And here is a picture of our final circuit


When we met today, we tested our circuit once again with the guitar and got the correct notes! It works! We spent the rest of our meeting working on our final instructable. Here is a video of the tuner in action.

Meeting: 4/26/2017

Today we met to test our project. We successfully sent in a signal using the Waveforms software and it output the correct note on the LCD screen and on our testing window.

We then proceeded to testing on the guitar and our frequency were all over the map. When we are sending in the perfect signal using Waveforms and the Analog Discovery, we do not have to use the op-amp part of our circuit so that is where we looked first for debugging. We determined that we had the wrong capacitor and resolved this issue however, with the guitar as the input our project was still not working. Our next thought was to check the op-amp circuit with Waveforms. We ran the signal through it and measured the amplitude to see if we were receiving the correct amplitude. We determined that the input we were getting from the guitar did not have a high enough amplitude to register with our tuner. This issue will be addressed by changing the values of the resistor on the opamp until we get a high enough amplitude.

Our next meeting will be Thursday morning to hopefully finalize the project and start working on our Instructable.

Below are some images from testing today:


Meeting: 4/23/17

Today our group took the code found in this instructable and amended it such that it would print the name of the note to our LCD screen instead of LEDs, and also removed the bits of code that told you if the note was too sharp or too flat. When we first tested this code with the input coming from the microphone, but it seemed like the code was not able to get a frequency from this input.

We tried again using the Analog Discovery WaveForms sine wave generator as the input, thinking that the code was having trouble with the amount of noise in the microphone. The code was able to discern a note from the generated sine wave, showing to us that it worked, but we needed a different audio input. Our group has decided to purchase a guitar jack so that we plug in the electric guitar straight into our circuit for minimal noise. We plan to meet again this Wednesday to see if the guitar jack will work.

Here is the code we used at today’s meeting:

We plan to further condense the code between now and the next meeting.

Meeting: 4/20/17

  • After reviewing Eric’s code, we realized he used some java libraries we don’t have access to, so our group started looking at other arduino libraries
  • We found two libraries that look promising, however one of them requires an Arduino Zero, which we do not have, and the other has been difficult to make work
  • We’re considering that the code may not be cooperating due to the fact we’re using an Elegoo Uno and not an Arduino Uno. We plan to use either an Arduino Uno or a Teensy 3.2 next time to test this code

Meeting: 4/13/17


  • Prototype uses a for loop to play notes and display them on LCD screen for testing. Can be seen below:
    • Range of notes is 0-400 Hz
  • Discussed using FFT algorithm to convert signal from an array of voltages to an array of frequencies.
  • We will be referencing this project for converting our input voltages to output frequencies.
  • Our plan for the remainder of the week is to review Eric’s code, it is written in Java for an Arduino, and change it so that it fits our needs.
  • We will regroup Monday afternoon for a few hours and attempt to implement this code. We would like to test the final project with an actual guitar for the presentation.

Meeting: 4/6/2017

  • Joseph brought Elegoo Uno and provided ideas for possible audio input and output
    • Elegoo kit contained LCD screen and microphone with built in Opamp, the group has decided to use these item
  • Senait will create updated circuit schematic for this updated design
  • Joseph, Jack, and Sarah will work on code for the Elegoo for the next meeting
  • We hope to meet Sunday to put together and test a prototype