Hackers in Residence - The ElectricBone

Contributors: Carlos E. Mello
Favorited Favorite 4

Planning it Out

Measuring the slide positions was fairly straight forward. There are a number of distance sensing technologies available, and during these two weeks at SparkFun, I also learned of some possibilities I'd never heard about. To control the basic shape of the note, I needed to identify its beginning, its end, and its intensity curve, from the lip's vibration. That part turned out pretty easy using the Sound Detector sensor.

Determining the pitch from that buzzing, however, was a much more challenging task. After considering many suggestions by the engineering folks here at SFE, it became clear that I would need some extra firepower. So on top of an Arduino to control the I/O, the project also included a Raspberry Pi to handle the heavy lifting of pitch detection. We began by modeling the problem in PureData on a regular computer. We created a bank of adjustable bandpass filters to identify the most likely harmonic candidate. The plan was to then install the software on the Pi, however, despite some very promising results with the PD filters, that portion of the project had to be postponed due to time constraints. Instead, I "cheated" by including a Softpot as a hand control for pitch. Also, in this first version, I made the instrument send MIDI commands to an external synthesizer, which in turn produces the actual sounds.

Pure Data diagram

Pure Data adjustable bandpass filters.