Midi Controller with knobs, buttons and screen. Need an advice.

Hi,

I have an idea to build custom midi controller for software synth with:

  • knobs and buttons, some amount of high quality ones
  • RGB screen, medium quality
  • USB midi out (connect to laptop)

I'm professional programmer and happy to build UI (presented on a screen),
but I would like to minimize my hardware efforts and learning curve.

I would be happy to buy some kind of DIY kit or pre-assembled solution,
so I can quickly have something to program actual UI and logic on. Is there something like that?

May there is some kind of instructional video or course for similar configuration
(happy to pay for it), so I can simply buy parts and assemble it.

If such a solution does not exist, I would be happy to receive guidance about parts and assembling procedure.

You'll have to be more specific than "medium quality". Size? Resolution? What do you want to display on it?

USB MIDI out is really easy if you pick the right board (I'd recommend a Teensy, because it has a lot of RAM for the display as well).

Knobs and buttons are nothing to worry about. Pretty much any kind of push button will work, and for the knobs, you need 10kΩ linear taper potentiometers. You can connect them to the Arduino directly, no extra parts needed.

Pieter

PieterP:
You'll have to be more specific than "medium quality". Size? Resolution? What do you want to display on it?

USB MIDI out is really easy if you pick the right board (I'd recommend a Teensy, because it has a lot of RAM for the display as well).

Knobs and buttons are nothing to worry about. Pretty much any kind of push button will work, and for the knobs, you need 10kΩ linear taper potentiometers. You can connect them to the Arduino directly, no extra parts needed.

Pieter

Thank you very for reply, Pieter.

Is this or similar screen compatible with Teensy? They say it's Arduino UNO compatible. Not sure what does it mean.

Ive worked on custom midi controllers using arduinos off and on for a little while and just finished my first complete working prototype. I used a mega flashed it with the moco-lufa firmware to make it a native midi device with the ability to switch the usb back to plain serial via a jumper. If you want to go this direction it saves the hassle of using level shifters and multi plexers but your form factor is going to be much larger than a teensy, If you go this route use the linux dfu programmer to flash the firmware. its the easiest to use. i had to be selective on my choice of pots. the cheap ones bounce and you end up having to solve the issue with either a capacitor or software smoothing. for this prototype i also used a dj hero controller as a jog wheel and interfaced to it via i2c, another protocol native to the mega. i'm about to finish my second project which is a conversion of a kids toy into a midi controller. here is an image of my most recent project. its not overwhelmingly attractive, but it was also built from stuff i had hanging around. let me know if you have any specific questions and ill try to help.
im guessing i cant link to images yet?

I wouldn't recommend using an Arduino Mega at all. Get a board that supports MIDI over USB natively, without having to flash custom firmware. If you want the Mega form factor, get an Arduino Due.
But I personally prefer the Teensy 3.2, 3.5 or 3.6. They have plenty of IO and analog inputs. If you do need more IO, just multiplex your buttons in a matrix, and if you need more analog inputs, use analog multiplexers.

I agree on the due over the mega, unless you're doing it on the ultra cheap or using hardware you happen to already have. I own 2 megas already. I can get megas for under 10$ so they become attractive to use at that point and honestly run rather well. I prefer to not use the teensy because i dont like using multi-plexers etc. To me they are added points of failure for what I am doing. For the most part I modify existing stuff and am trying to do it as cheap as I can. Using a mega and some creative fabrication i can build a useable working custom midi controller in a few hours for under 25$.

frourricker:
I can get megas for under 10$ so they become attractive to use at that point and honestly run rather well.

The problem with cheap Mega clones is that many of them use a single-purpose USB-to-Serial converter (CH340 e.g.) instead of an ATmega16U2 microcontroller, so they are incompatible with moco-lufa.

frourricker:
I prefer to not use the teensy because i dont like using multi-plexers etc. To me they are added points of failure for what I am doing.

The Teensy 3.6 has 25 analog inputs, the Mega only has 16. Teensy 3.6 has 62 digital IO in total, an Arduino Mega has 70. Combine that with an ARM processor that runs 11 times faster than the Mega's, a megabyte of flash, 256KB of RAM, and countless useful peripherals, I think it's a pretty easy choice.