120 likes | 163 Views
Guitar Tuner. ECE 5330 Embedded Systems Design Final Project Proposal Mike Heiny November 17, 2008. Background. I used to play guitar, 20 to 25 years ago. But I stunk. And I always had trouble tuning. I still have my guitar and amp, though.
E N D
Guitar Tuner ECE 5330 Embedded Systems Design Final Project Proposal Mike Heiny November 17, 2008
Background • I used to play guitar, 20 to 25 years ago. • But I stunk. • And I always had trouble tuning. • I still have my guitar and amp, though. • I’ve seen electronic tuning gadgets used by roadies at concerts, seems like an interesting thing to design.
Basic Proposal • Implement hardware to allow connecting an electric guitar to the board. • User selects which string is to be tuned. • User plays the string. • AVR “listens” to the note and communicates to the user, via LEDs, how close to perfect the note is and whether it is high or low.
TBD 1 • What is the output of an electric guitar? • I think I read +/- 5 mV was typical • That’s too small to be much use and will have to be amplified. • Does it put that out with no input, or will I need to power it somehow?
TBD 2 • How accurate does it need to be? • Strings are 82, 110, 147, 196, 247 & 330 Hz. (I was really surprised at how low they are.) • When you tune you can hear the wah-wah-wah of interference. • That’s noticeable to about once every 3 or 4 seconds, which would be ~0.3 Hz. • If I shoot for within 0.1 Hz of target, that’s 0.03%, which is pretty tight.
TBD 3 • Determining Frequency • I plan to have the AVR determine the period of the input signal and from that determine the frequency. • But the difference in periods between 330 Hz and 330.1 Hz is less than 1 μs! • I think this is the biggest challenge.
Other TBDs • How should the board communicate to the user? • What will it do when no note is played, and how will it know? • How will it start and end?
Possible Additional Features • Add a microphone to allow acoustic guitar tuning. • Have the program automatically detect which string is being tuned. • Allow user-specified target frequencies for tuning basically anything.