This project is a part of experiments done while doing an artist in residence at Instructables. You can see the other projects here.

Inspired by Korgs Kaossilator I took it upon myself to build an opensource version of it. This way people can design new ways of interacting with the touchpad. The basic principle is creating sound via a trackpad. This enables you to create an instrument with quite wobbly possibilities. The challenge is to program something that would enable you to create interesting sounds. This is also a challenge with the Kaossilator which get mixed reviews for the same reason. This is an initial prototype. It uses the an arduino as basic 8 bit sound engine and uses a capacitative trackpad from adafruit industries as the input device.


As seen in the video I have only programmed the first proof of concept so far. The arduino is able to generate 4 times as many concurrent voices and the envelope modulation has much more potential. I am looking forward to see if anybody adds new dimensions to it. I will update the code as I go along as well.

The design works with a few limitations. The synth used is a really simple 8 bit synth with the 8 bit noisy aesthetic qualities. Further the synth used requires quite a lot of CPU which has proven to be a challenge when reading the touch gestures from the trackpad. I had to rewrite the trackpad library from Adafruit to enable much faster readings. This enabled the synth and the trackpad to play sort-of-nice together, but sometimes it get wrong readings from the trackpad. This is solved by doing a little prediction of the data coming in and skipping it if the data seems implausible. I am sure this could be solved much more elegantly by using looking at the parity bit, but I have not gotten around to do this yet.

Step 1: Components and Tools Needed

The following componets are needed:
  • Trackpad from Adafruit.
  • Prototyping shield.
  • Pin headers
  • PS2 breakout from Adafruit (This is not necessary just simplifies the process).
  • Arduino uno board.
  • LCD screen from Adafruit. (Honestly I would leave this step out, since the update rate on the screen is rather slow and it is only a nice to have).
  • Homemade synth shield based on the following synth instructable.
  • Wooden box (I got mine from the container store in SF).
  • Acrylic plate.
  • Two buttons.
  • Wire.
For the synth shield you will need:
  • A prototyping shield.
  • pin headers (the stackable ones).
  • Wires
  • 2.2k Resistor
  • 100n Capacitor
  • 100u Capacitor

The electronics can be done with basic soldering tools. The enclosure was made with  a laser cutting some acrylics and a drillpress to make holes in the wooden box.
nice one
To make a square hole as needed here, I would do one of two methods. <br>1) Make the outline of the final square hole that you want. Take a small drill bit and make note of its size. Draw a smaller square inside the final square. The smaller square should have its sides a short distance more that the radius of the small drill bit. Now mark centers for many holes along the outline of the smaller square. Drill the many small holes and the carefully punch out the piece in the middle. Use a file to make the edges of the square straight. Use the remaining outline as your guide. <br>2) Use a high speed rotary tool to cut out the square. Make sure to leave a little bit of wood showing inside the square so you can file the edges to make them straight.
Very nice build, and really looks fun to play! <br> <br>FWIW I have used the GinSing synth board on the Arduino, on a somewhat related build ( airmonica ) and it looks like it might be an easy fit for improving the tonal quality of this project. <br> <br>http://www.ginsingsound.com/
Thats a cool board - I did not know about it. I will definitely look into it. For this instructable I wanted to enable people to build it with a minimum of components. Hence the internal synth - plus the internal synth is surprisingly good.

About This Instructable




Bio: IMPORTANT: Please do not message me personally with technical questions. Use the comments in the respective instructables. I really love sharing and helping people makes ... More »
More by madshobye:Guino: Dashboard for your Arduino Making noise machines Making sound (noise) machines 
Add instructable to: