Abstract

As a kid with a lust for music, I was rocked by the Moog synthesizer sounds of 1968's Switched-On Bach. I needed to learn how to make those sounds! Thus began a lifetime of learning and synthesizer making while I made my way in the tech industry, where I ultimately created the TV-B-Gone, a gadget that lets you turn off almost any model of remote-controlled television. Since the popular success of the TV-B-Gone, I've created many fun, open-source, hackable hardware kits for the maker workshops I give around the world. In these workshops, newbies learn to solder, tinkering their way into electronics and microcontrollers. Remembering my own youth, I wanted to provide them with a kit that was simple to assemble and use but still a fully fledged music synthesizer. • The result was the US $30 ArduTouch. This project incorporates, on a single board, a touch keyboard, an ATMega328P (the same processor used in the Arduino Uno), and an audio amp with a speaker. It also has a software library that can serve as an entry point into the world of digital signal processing. • The biggest challenge in designing the board was the ATMega328P's limited number of input/output (I/O) pins. I used 12 I/O pins for the synthesizer's touch keyboard to provide a complete chromatic musical scale. The keyboard is laid out like an old Stylophone—one of my favorite analog synthesizers from the late 1960s—and senses touch capacitively. Two more I/O pins are used for outputting stereo sound, and two pins are used for serial communications (the ArduTouch can be programmed with the standard Arduino development environment, although you'll need an FTDI cable to connect it to a host computer). The remaining I/O pins are just enough for two buttons and two potentiometers that control the synthesizer. • So that builders can get audible results immediately after soldering their kit together, I put an LM386 amplifier chip and speaker on the board. (The amp is bypassed when you plug into the audio output jack.) Digital-to-analog converter chips are expensive, so I used pulse-width modulation (PWM) to encode the stereo audio channels coming out of the ATMega328P. A low-pass filter for each channel, made up of one resistor and one capacitor apiece, converts the PWM signal into audio.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call