Knob-O-Matic: it had to have a name of course …
I loved my Neutron and Model D from the start, but missed the possibility to change their settings the way I am used to doing with digital synths in a sequencer. So soon after buying them I build a midi2cv and a cv12 interface. Then of course I found I needed a controller to produce midi events which could be recorded by my sequencer and send to the midi2cv interfaces to control the analog gear. So I looked on the net and came across a midi controller made by Evan Kale ( most of his youtube videos are gone alas ). I got inspired by this and made my own version. It basically consists of an arduindo nano, 8 potentiometers, one rotary encoder a 2 x 20 LCD display, a midi-out connector (DIN style), a big square LED, a 4051 multiplexer and some code. So the Knob-O-Matic was born ( oh yes, pun intended ! ):
Oh yes, Zaphod B
is the name I sometimes use when publising my music.
Its core is formed by an arduino nano that uses a CD4051 multiplexer to scan 8 potentiometers. Those are successively connected to the A0 input and their values are read.
.It will then translate the top 4 knob settings into midi note events for channels 1 … 4, and the bottom row knob settings to controller values (all on the same channel) and send them to the midi out port. The midi2cv interface can convert either note events or controller values to a CV voltage. The hex values are shown on the display.
While I was playing with the device and the Neutron I found that it I sometimes had to rotate a knob to the left to get some effect while my intuition would tell me to rotate the button to the right. So I added a menu system to the device controlled by a rotary encoder with push button which makes it possible to give the knobs a positive or negative ‘polarity’. So to either have an increasing value or ‘decreasing’ value (i.e. midi value = 127 - knob value) when turning the knob to the right.
The neat thing about making your own midi controller is exactly that. You use it for a while, come up with some idea about a new feature and just add it!
I printed the casing using pla on a prusa mk3 3d-printer.
The code, schematic and stl-files are available for anyone who wants to give this a go.