Arduino Midi Foot Controller for Ableton Live




Introduction: Arduino Midi Foot Controller for Ableton Live

I'm a geek. I know it. I like DIY'ing things. I bought a 3d printer (which is sitting in my office not working right now)... and like building drones. I usually bite off more than I can chew and often have to go to others for help. This time around, it was to build a custom Midi foot controller to use with Ableton Live for our click/loop tracks.

I'm a worship leader for a church and we use Ableton Live to play our click tracks and backing tracks in our in ear monitors. As a guitar player I need a midi pedal to send midi commands to the software to play and stop a particular track.

I have a Keith MacMillen Softstep... but its really complicated to program, and the buttons are rubber. I never knew if the thing was ever pressed or not. I wanted the "click" of a regular guitar pedal. And I don't need something that complicated. There are some other pedals you can purchase... but their footprint wasn't correct for my pedal board. And I didn't want to spend another $300-$400.So for around $70 I built my own.

Using a similar method, one could also use a different library and use a foot pedal as a keyboard input device (to scroll a page, fire a video... whatever).

Step 1: Physical Construction

This is the beautiful part-- you can make it to fit whatever you want. You could buy a custom enclosure, or just an electrical box from the hardware store. Its up to you.

I used luan plywood and spent quite a bit of time in the woodshop to make this hoss. No doubt someone with better DIY skills, yeah verily a CNC machine, could make a real marvel.

Attached to this project is my google sketchup file.

Step 2: Electronics


You need momentary SPST switches. I got the "silent" ones so it doesn't sound like a firecracker going off in the middle of the worship service. Something like this:


I used an arduino teensy that I bought from sparkfun. It offers a couple of important things:

• It has USB connectivity

•It's powered via USB

•It supports a native MIDI control without need for some intermediary software.

•It has a ton of digital pins

LCD Display

I bought it HERE from sparkfun. I wanted a serial rather than parallel connection so I didn't have to chew up lots of extra pins. (pins= possible switches or leds, or connectors)


I suppose if I were really thorough I'd have some sort of fancy connection diagram. Basically,I hooked pin 1 up to the serial LCD pin. And then the switches have all the connections from there. You could in theory have 24 or so physical buttons/switches. Or if you were really good with programming could figure out a way to use multiple banks. But that's too complicated for me.

Step 3: CODE


This was the hard part.

Disclaimer:{ I AM NOT A PROGRAMMER;()} { I AM A GUITAR PLAYER. } take that into consideration when you see the code.

I first got it working with the MIDI buttons sketch. Then got the serial LCD sketch to work. As I'm not a programmer, I had to learn to combine the two together. The arduino code is attached to the project. Tweak the pins assignments to whatever you end up using.



  • Metalworking Contest

    Metalworking Contest
  • Tiny Home Contest

    Tiny Home Contest
  • Creative Misuse Contest

    Creative Misuse Contest

19 Discussions


Could you please send schematic in PDF for connections switches to Arduino board? I'm not an electronics. I'm planning build this project for Guitar Rig. Regards.

which kind of wires should I use in this project?

Did you use normally open (NO) or normally closed (NC) momentary switches?

Hello can you send me the code ?

Hi, could you upload wiring sketch ? fritzing file ? Thanks


1 year ago

One more question 'bout the second version. how did You organized so many in\out for buttons & LEDs? Used some kind of multiplexer?



1 year ago

great thing especially for worship service purpose.
can You say is there any special commands for ableton live in midi (or somewhere)
1) to fire prev/next scene,
2) to choose pre/next scene
3) to fire chosen scene
4) to fire/stop particular track in chosen scene

Thank You!

2 replies

yes all those should be able to be fired via a midi message.

upd: wanna constrict smh like

Keith McMillen 12 step, but lil bit cheaper and tweaked for my purposes


2 years ago

cool project!

But why to send midi notes instead of program/control changes?

I wonder that it can control another midi device. (Ada mp-1 or TC g-major)

hi, can you put the electronic scheme, please?

Hi, excellent projetc, but did not understand how you connected the buttons and the teensy. Could illustrate? thanks

Hi. I want to construct it. Can I have a detail of button wiring? Do you use a resistor or not? Thank you.

1 reply

No resistors. I think there are pulldown resistors on the teensy for each of the channels.

You can use Arduino uno with hiduino firmware and some modifies in the sketch.