Guitar Note Detection With Shift Register

Status
Not open for further replies.

Arjuna_1000

New Member
I am working on a guitar note detection project with Arduino.

It works by sending output HIGH to the frets one fret at a time and then for each fret that is HIGH, loop through the 6 string inputs and check if it is HIGH.

It works fine as long as only one fret is touching one string. But if an input-string touches two outputs (two guitar frets), it reads LOW always (it is touching two outputs, but actually only one of them is high at a time). Is the voltage somehow being lost when this happens, or what is happening? If I figure that out maybe I can think of a workaround.

Thanks!
 

Attachments

  • GuitarNoteDetectionSchematic.jpg
    1.9 MB · Views: 206
Because the outputs of the 595 that are not high are low. So a string touching two frets is shorting a high to a low, and the low is winning.

Place a diode (1N4148 or similar) in series between each output of the 595 and the frets. The anode end connects to the 595.
 

Thanks a lot! That is what I needed to know!
 
If you get rid of the shift register and use Arduino outputs then you can switch non high outputs to input.

Mike.
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…