Ideas for a DIY performance controller

I am quite new to performing with the modular synth. After a couple of performances I see it as something I definitely want to develop but at the same time I find it quite frustrating not having more immediate and tactile/expressive ways of interacting with the system. I looked at many eurorack controllers (pressure points etc.) but they are either too primitive for what I’m looking, too attached to the traditional keyboard paradigm with all its good/bad sides or simply too expensive.

I’m putting together a portable system that fits in a suitcase and therefore I’m in need of a controller that will serve a couple of functions without requiring extra modules/devices.

I will probably end up building something myself, therefore I’d be very interested to see what you think about my ideas. I do realise the design of the controller affects the way of playing - Don Buchla definitely got it right with his keyboard controllers - they feel like a part of the instrument.

What I’m looking for is a keyboard like controller which is:

  • polyphonic,
  • somewhat similar in layout to the ordinary piano keyboard but with a few more keys in an octave for microtunings (particularly I like the idea of 22 or 23 keys - I am interested in the modern indian ‘22 shruti’ system of pitches).
  • flat and non mechanical,
  • pressure sensitive (like Buchla 208)
  • possibly position sensitive (like Buchla 222e)
  • additional keys for transposing/accessing functions etc.
  • with a few additional long ribbon like surfaces for crossfading, continuous pitch/CV etc.

In terms of the functionality I’d like:

  • USB OSC (possibly MIDI)
  • also CV outs,
  • arpeggiator (similar to what can be achieved in Buchla 208)
  • simple recorder/sequencer (similar to Synthi AKS - records a live sequence of notes from the keyboard and loops it; the sequence can be transposed or the tempo changed).

The dimensions: no more than ca 50cm width 40 cm height, max ca 8 cm depth. The width of the octave should be maximum 1.5x larger than the ordinary piano keyboard.

In the spirit of Monome Grid I think the interface/keyboard surface should be separate (but not necessarily physically) from the ‘brain’ and the output part:

physical controller <—> brain <—> output module

Communication would be via OSC (or similar).

The output module could be an OSC to CV interface with CV/GATE outs (possibly GATE INs too for clock/reset).

I am not worried by the ‘brain’ and ‘output’ parts - once I figure out the physical controller part they will be reasonably simple to put together using teensy (or similar) and an array of DACs.

For the controller itself I considered building a capacitive interface (very easy in principle, quite tricky in practice for that many keys) - I could make it by hand by cutting out copper tape shapes for each key and then putting a PVC printed top surface on it with keys’ outlines.

This is a very crude mock up of what I had in mind:

The reason I’m not too sure about it is that it will probably take many iterations to come up with the satisfying designs and it could get quite time consuming having to make a new one by hand every time.

This led me to conclusion: it might be worth using a LCD display with touch interface. I considered using a tablet with TouchOSC or custom Processing app but they are too expensive/not large enough (at least I couldn’t afford the ipad pro). I also like the idea of a device that performs only one function and well, instead of being designed for checking the email etc.

A 15 inch LCD with multi touch capability can be purchased for a little over £100. If I get lucky I could score a cheaper second hand one.

I could drive it by raspberry pi running Processing app for the interface. I could design various interfaces and see which one works best for me. Processing would then transmit OSC data to a pure data app for the actual ‘brain’ part (keyboard/arpeggiator/recorder etc). Pure data would output OSC which could be then transmitted to an external custom OSC to CV/USB/MIDI module.

Do you think going the above route makes sense? Or am I better investing in a large tablet? I’d still need to build the output module part (assuming the tablet also runs the ‘brain’ part). And yes, I’m trying to avoid bringing a computer into the equation. Are there any other approaches I should consider?


I like it.

To get pressure sensitivity (of a sort) you could put piezos on each corner.

I thought of 2 options for pressure sensitivity. If the resolution of the touch sensor is high enough, I could read the surface of the finger touching the screen (larger surface - higher pressure). Another option would be to put a transparent film on the screen and make it a part of the capacitor used by a separate capacitative sensor. It could work very well depending on the thickness/material.

What do you mean with USB OSC? I’m probably missing something since I’m not very familiar with the Monome technology, but there isn’t an USB class for OSC devices like there is for MIDI devices right?

Well it was more so a mental shortcut. I know OSC is based on the UDP network protocol. If I was to use the controller with the computer I’d have to send that over USB serial and then write a daemon which would listen and convert into local OSC data.

Unless I end up using raspberry pi as a 'brain. In that case, I might as well use the Ethernet (or WiFi).

This is really just an idea and I’d be grateful for any suggestions. I’m not really that worried about connecting the controller to the computer, it was more so an extra feature which I know can be implemented one way or another.

Several iOS apps do this. It’s somewhat useful but pretty coarse. I’m curious about your other capacitive film idea though.


meets most of your needs.

Yeah, there are a number of ways to implement this, I was just curious what you had in mind.
I’m designing a MIDI controller myself and thought it would be nice to also support OSC, but I’m not sure what the common and/or most reliable approaches are.
I’m using a simple MCU (and want to keep it as simple as possible), so ethernet or WiFi are not really an option.

I definitely have to do some more research to list all the options. It would be nice if there is some standard way to “OSC-enable” an USB device.

Arturia Keystep? Lovely feeling controller. Outputs cv/midi. Cheap.

Oops, sorry. Didn’t see the DIY bit. Ignore me.

Thank you for the great suggestions! I wasn’t aware of Manta, seems like a great device. It is a bit out of my price range at the moment.

I never thought about Arturia Keystep, maybe because it reminds me too much of the cheap Midi keyboards I used over the years. It is also a bit too large for my setup and it doesn’t have more than 12 keys per octave. Definitely a food for thought. I’m really tempted by the recording facility on it.

On the other hand, I have korg nano keys, I could just make a teensy based sequencer/arpeggiator for it and have the same functionality as the Keystep in a much smaller package. (No aftertouch though)