DIY Midi Controller v0

This project was my first prototype midi controller. It incorporates 4 endless encoders that double as pushbuttons, two analog potentiometers (top) , and two latching LED switches.

The sensors are read by a Teensy 3.2 and sent to computer via the usbmidi library ( https://www.pjrc.com/teensy/td_midi.html ). Components were wired onto an adafruit perma-proto board. Encoders are debounced by .1uf caps and buttons de-bounced digitally. The encoders send signed bit relative CC optimized for controlling Ableton Live.

Something I aimed for with the encoder reading was scaled “velocity”. By computing a Delta value (change over time) the speed at which you turn a knob will multiply the resulting control change. This is intended to give greater control when fine tuning things like filter frequencies or pitch, as you twist the knobs slowly they gradually step up CC’s. Twisting it quickly lets you get to the other end of the control range in order to avoid having to spin the knob multiple times. 

The enclosure was designed with performance in mind, raising the controls up and allowing a small keyboard or other controller to sit just below it.

Special thanks to Paul @ PJRC and the PCC cascade interactive lab