Design Intent: to create a multidimensional polyphonic vocoder -- multidimensional in that it allows various (both physical and virtual) degrees of expression, and polyphonic in that it allows for more than one pitch so that harmonically complex songs are playable.

Above all, the Exocoder looks to add a physical element to electronic music performance.


Sketching, Ideation, Lateral Thinking


I created a handheld midi controller to familiarize myself with technical aspects of my project including circuitry, MIDI, and Arduino.

After using the Arduino Teensy for my MidiBox, I decided to use an Espressif ESP32 board for my final project primarily due to its wireless Wifi capabilities.


I was determined to create a device that was both comfortable and playable. During prototyping, I quickly realized that the platform needed to be slanted inward to account for the asymmetrical nature of hands, and that the buttons needed to be arced to account for the relative lengths of fingers.


Woodworking, Laser Cutting, Soldering, Circuitry


The bulk of my programming was in the strongly-timed audio language ChucK, which allowed me to alter pitches using a Fast Fourier Transform and create compelling soundscapes with various effects and ugens.

Data was read from the device using Arduino and sent to ChucK as MIDI signals containing frequency and amplitude values. A Gametrak string attached to each arm allows the user to control parameters via the distance between each hand -- volume (x), filter sweeping (y), vibrato (z).

Check out the full code in my Exocoder Github Repository.

The Exocoder