DIY Ableton Launcher MidiFighter

by msobolak in Circuits > Arduino

3843 Views, 20 Favorites, 0 Comments

DIY Ableton Launcher MidiFighter

Screen Shot 2019-03-12 at 2.03.12 PM.png

I was inspired by some of the hardware dedicated to work with Ableton as well as the many DIY Midifighters on Instructables already but wanted to take it a step further by putting it through the DIY lens and taking advantage of some of the cool visuals that the Neopixel Rings can add to projects. Visuals are so important in electronic music performance and the need for some additional feedback to the musician and audience can really make the musical experience something to remember!

I scrapped a previous project and tried to to push the possibilities of what a Pro Micro Arduino can do!

Enjoy!

Gather Materials

IMG_20190308_145447.jpg

I wanted to base the device around a Pro Micro but because of the many buttons it was going to have I needed to use multiplexers. I hadn't had much success with my novice coding skills but this was going to be a challenge I needed to take on. Here is a list of what I used, most everything can be found on Amazon.

1/4 inch MDF

Pro Micro

Neopixel Rings

Arcade Buttons (Large)

Smaller Buttons (I cannot recommend the ones I used as the plastic was not very heat tollerent and made soldering quite difficult.)

Arduino Uno

10k potentiometers

16 channel multiplexers

8 channel multiplexer

Hookup wire

Arduino IDE

Design & Cut

Screen Shot 2019-03-12 at 11.17.50 AM.png
IMG_20190306_221248.jpg
IMG_20190308_144936.jpg

I used Adobe Illustrator to design the front and had it cut out with a laser cutter. I have also done a manual drilling method so just make the holes how you manage... it's DIY not "go out and buy".

Solder-fest

IMG_20190308_161904.jpg
IMG_20190308_170413.jpg
IMG_20190310_134613.jpg
IMG_20190310_134618.jpg

This is the most time consuming part of the project... I hope you find soldering meditative like I do.

The wiring skill needed are just scaled up from those needed for wiring your standard button and potentiometer for any old Arduino project: Everything needs a data pin, and everything needs a ground connection. If it is your first foray into multiplexing(like it was for me) you might find it helpful to read this and other well documented tutorials on multiplexing. I'm not much for neat aesthetics of wiring so I was fine with the birds nest of wires as it gets concealed by the top.

One "solution" I had to come up with: The Neopixel sketch and Midi sketch could not be compiled in the same file so I ended up running the Neopixels off an Uno and the Midi off the Pro Micro with the data pins on the potentiometers splitting off to both Arduinos. DIY, not "perfect solutions", right?

Code & Test

IMG_20190307_105625.jpg
IMG_20190306_102606.jpg
IMG_20190307_120238.jpg

This is after the soldering, but in reality I was coding, testing, soldering, and fixing at the same time. I suggest doing the same but for simplicity the code step is after the soldering. Like I said in the previous section, the Uno is running the Neopixel code and the Pro Micro is running the MIDI_controller.h library code. I've said it before and I'll say it again, big big props to tttapa for creating the MIDI_controller library and putting up tons of samples and resources for people like myself to reference!

The Neopixle code was first seen by me here and then I scaled it up to work with 4 rings instead of just one.

Map With Ableton

IMG_20190310_160409.jpg

Mapping MIDI with Ableton is easy, here is a tutorial on how to do it. I wanted to use this instrument to cue samples and adjust mixes as well as add in some drum sounds if I wanted to. Ableton is sort of on the next level to be flexible enough to do this... However, it is not a cheap program by any means but if you are curious then start a trial maybe you'll get hooked like me!

Jam!

SoboJam test session

I'm still getting to grasp with the live performance part of this, but I'm having a lot of fun doing it! I hope you enjoyed this Instructable and feel free to reach out if you have any questions, comments, or ideas to take it further!