About two years ago, Wayne Read (AKA Wayne from Maine) came to my office and asked if I knew anyone who might be able to help him build an electronic harmonica. It was an interesting challenge – he wanted an instrument that could sound pretty much like any other instrument.
Having worked in the MEMS (Micro-Electro-Mechanical-Systems) industry, it was relatively easy to recognize that a MEMS pressure transducer could be used to detect the air pressure at the mouthpiece – the next issue was to use those signals to create actual sound.
We found something called the MIDI CPU by a company called Highly Liquid, and our first prototype used this to control an external synthesizer. For a proof of concept, this worked well, as you can see here:
This worked to show us that what we wanted to do was possible, but there were some drawbacks. For one thing, Wayn wanted some dynamamics – he is, after all, a musician! I tried a few things with the MIDI CPU, and with using a VCA (Voltage controlled amplifier) and modulating the output of the external synthesizer with that, but it proved a bit unsatisfactory.
In our development process, I became familiar with Cypress Semiconductor and their PSoC product. I realized that with a bit more knowledge, I could construct a more dedicated MIDI engine, designed specifically for the X-harp. So while maintaining the first version of the X-harp, we thought about what features we would want in a more advanced version.
- It would need to have individual volume on a per-hole basis
- It would produce sounds internally
- It would have a functional user interface
- It would have external MIDI capability
- It would be quick and responsive
- multiple tunings – major, minor, blues, pentatonic, etc.
- It could be field-upgradeable
- It would have an internal rechargeable power source.
- It would have a joystick for effects such as vibrato and tremolo.
- And a host of other features we’re still dreaming up.
So I began development of the hardware and firmware, and the Cypress Semiconductor PSoC with its ARM core has proved to be an amazing platform to work with. I found a digital synthesis IC that we implemented internally, which I’m really happy with, and overcame the problem of producing sound at different volumes on a per-hole basis. This was a huge lesson in MIDI programming, because no other wind instrument operates in this fashion. While most keyboards are capable of playing different notes at different volumes, they aren’t required to duplicate the breath dynamics of a wind instrument.
The approach I took with the X-harp was to consider each hole in the X-harp as a separate MIDI channel. This has the added benefit of being able to assign different instruments to different holes – much like a keyboard split, but on a per-hole basis. The result is a very playable instrument. Here is Wayne playing one piece on the second prototype:
So what’s left? The joystick is working, but we don’t have any videos of that yet. We have an internal battery, and we’re finishing the charging circuit. We will be adding a headphone amplifier and USB support so the instrument can be upgraded in the field.
Wayne is building some awesome cases and mouthpieces with his print-bot, but for production, we both have work to do. I’ll be designing the circuit board, and he’ll finalize a case design, and then we’ll be able to get them manufactured – hopefully sometime in the next few months!
This is more than the story of a product – it’s a demonstration of what Deesigned Studio can do for you as well. The skills involved in this product are the skills that can help your next product come to fruition. From programming, embedded systems, mixed signal design, circuit board layout, fine-pitch prototyping by hand and working hand-in-hand with mechanical designers, all with an eye to creativity and thinking “outside the box” – these are the skills that truly enable something to become more than an idea.
“What if” is a great question! But finding the answer to that question takes dedication, talent and creativity. Deesigned Studio is there to help you answer that question. Feel free to contact us.