A Custom Control Surface For Audio/Video Editing

Control surfaces (input devices with sliders, encoders, buttons, etc) are often used in audio and video editing, where they provide an easy way to control editing software. Unfortunately even small control surfaces are fairly expensive. To avoid shelling out for a commercial control surface, [Victor] developed his own custom control surface that sends standard MIDI commands which can be interpreted by nearly any DAW software.

[Victor]’s control surface includes several buttons, a display, and a rotary encoder. His firmware sends MIDI commands whenever a button is pressed or the rotary encoder is turned. [Victor] plans on adding menu functionality to the currently unused LCD display which will allow the user to change the scrubbing speed and other various settings.

One advantage of making your own control surface is that you can customize it to your own needs. [Victor] has posted a model of his 3d-printed enclosure and his source code on the project page so you can easily modify his design with any button configuration you might want.

18 thoughts on “A Custom Control Surface For Audio/Video Editing

  1. I’ll be amazed if you get this fully working with AVID software (pro tools, media composer) – Their protocol isn’t documented anywhere. Rats – why the HAD projects don’t show all your work??? – do you have detials elsewhere? Would love to follow it!

    1. Forgive me if I am incorrect, as audio/video editing/mixing/production isn’t anything I’m very skilled in, but the CM Labs MotorMix control surface seems to be compatible with Pro Tools using HUI MIDI. Here’s the guide on setting it up in PT: http://www.cmlabs.net/motormixProtools.html and here is the Developer Guide that details the messages used for each button/encoder (warning: PDF): http://www.cmlabs.net/MotorMix%20V%201.2%20Developer%20pkg3.pdf

    2. Well, it currently works with Adobe Audition and Sony Vegas Pro out of the box. If you look on the links portion of the HAD project page, you’ll see links to the mackie controller midi map I used as my starting point. It has a list of all the buttons and pots and on a standard Mackie HUI as well as their corresponding Midi values.

  2. I’ve just built a similar control surface (buttons, faders, pots, rotary encoders, rgb leds), all scalable, currently runs on a mega2560 but with small adjustments will run on any other arduino.

      1. https://github.com/Reggi3/megafighter Mostly :-) You could fairly easily adapt it to suit any arduino/teensy board, I also have a loose collection of undocumented .ino files with various extra functions added to them. once you’ve got the basics for creating multiple and handling multiple controls, it all gets a bit easier.

        I originally built my controller for dj software but I’ve been working on making my controller(s) work with presonus studio one, I’ve currently got a behringer cmd-pl1 acting as a presonus faderport, basically, everyone seems to use the mackie control/mackie hui as the basis for their mappings, it was a very good choice by the project owner!!

        I would suggest anyone thinking of making their own controller or adapting their existing kit to take a look at ‘bomes midi translator’ it’s a fantastic piece of translation software that will allow you to do all sorts of midi magic. 2 buttons as an endless rotary encoder? No problem, want that as an absolute value that can be tracked? no problem, would you like that in 7 or 14 bit? Bomes handles it all :-)

    1. Use raised text, then coloured in carefully. I use permanent markers on the raised letters/symbols on molded cables e.g. the PS/2 keyboard/mouse cables for KVM switch for marking them.

      If you have good hand control, only the raised part is tall enough to make contact with the marker.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.