Thursday, March 29, 2012

Chord ID using force sensors

In the likely scenario that we are unable to achieve chord recognition using FFTs, our backup plan is to use force sensitive resistors underneath the strings on the frets of the ukulele. These sensors would act like switches which would be activated when pressed, and the chord would be identified based on the state of the each of the sensors, as conceptualized in the following images.
Basic major chord diagram. Shows which of the basic major chord formations overlap.
Possible Boolean logic equations to identify chord based on state of force/pressure sensors.  Topological issues, namely the proximity of the sensors on the same fret under adjacent strings, were considered in determining the optimal logic scheme. We are planning on purchasing these force sensitive resistors:  http://www.sparkfun.com/products/9673









Sunday, March 25, 2012

Here we have a nice flowchart of the architecture of RoboUke. Everyone loves flowcharts.




On chord recognition

Recognizing the chord that the user is playing on the master ukulele will likely be the most complicated part of the project. Our original idea was to use a DFT to identify the four dominant frequencies of the audio signal from the master ukulele, and determine the chord that way. While researching the feasibility of this approach, Nick came across this discussion of identifying guitar chords. It seems that this approach may turn out to be even more complicated than we initially thought, but it could still be doable.

Some alternative chord identification methods that we have been brainstorming are:

  • Ditch the idea of a real ukulele as the master altogether, and use a guitar-hero style controller (lame, but fairly easy)
  • Take sample audio signals from the chords of interest, and match the incoming audio signals with the stored audio signals (much less lame, but potentially more challenging)

In the next few days we will have to nail down exactly how we want to approach this problem. Stay tuned.

Saturday, March 24, 2012

And so it begins...

Welcome to our blog!  My lovely comrade, Sam Wolfson, and I, Nick Howarth, will be documenting our month-long final project for ESE 350 (Intro to Embedded Systems and Microcontrollers). 

The goal of our project is to design and implement a trainable robotic ukulele system.  The system will consist of a "master" ukulele, played by the user, and a "slave" ukulele, which will mimic the user's recorded performance -- perfect for the lonely ukuleleist in your life!

Follow us on our journey as we delve deep into the world of DSP and tinker with servo motors!