Wednesday, December 5, 2012

Build your own Synthesizer Part 3

I think the Arduino is one of the coolest things to come out in recent years it allowed me to go from someone who knew nothing about electronics to prototyping and building ideas in a very short period of time. When I started graduate school at the end of 2008 I literally had zero electronics experience. I always wanted to teach myself but I was daunted by the idea of using assembly language and no libraries. This is a realistic fear especially if one is using Texas Instrument microprocessors. They really need some good tutorials besides their code examples. Of course I had a really strong C programming background so that helped. I use the Arduino for anytime I want to interface hardware with my computer. This made it ideal for this project. I wanted to build a musical instrument or some type of synthesizer since I guess all the sounds are synthesized, it is technically a synthesizer. For all of this stuff I will be using Linux because it is so much easier to interact with devices such as the USB port that the Arduino will be plugged into. In linux that will be /dev/ttyUSBX where X is an non-negative integer (0,1,2,3). So our goal is to have it that when we press a button the Arduino sends information through USB to our computer which can then translate it into some sort of music. A good programs to help with this are ttymidi . The ttymidi program allows us to interact with JACK and fluidsynth to generate the actual sounds. So first we need a button.