I was contacted by someone wanting a custom controller to work with the lighting control software they used. The controller would be programmed as a USB MIDI device and it just needed to send noteOn data to the software. I build controllers so how could I say no?
This was the first sketch based on our discussion, which had three 60mm diameter buttons. After some back and forth the client asked about adding more/smaller buttons, so we came up with this…
But they wanted to see a four button version as well as two buttons. These quick and dirty renders were mainly to show the spacing of things. Once we agreed on what it would consist of, I got to work. (I should note that sometimes I do 2D sketches in Inkscape for the client to see, and on occasion I do the sketches directly in OpenSCAD.)
For these projects I design the enclosure in OpenSCAD and try to make things parametric so it’s simple for me to change the dimensions of things if needed. I’ve got my own OpenSCAD library I use for this, and I continually tweak it to be exactly what I need…
I’ve found this to be what works best. I get the whole reusing of code, and I do that! In the past I’ve tried to use code that other people have written but usually hit a wall when I need to do something weird or something they didn’t anticipate. This way I know all the code and what it does and how to change it easily.
I should note that this isn’t your standard computer code that can do terrible things or compromise security if you do something wrong… it just renders a 3D object.
Anyway, the controller turned out well, the client was happy, and even sent me a thank you email once they got it and started using it. I really do like doing these custom projects, and I know that sometimes I may not charge enough but I am definitely learning things along the way and perfecting my process… and there’s some value in that for me, so I’m good with it.
As always, if you need some custom built MIDI or USB controller, get in touch!