Ctrlr hardware


Device consists of an arduino, serial LCD driver + LCD display, a nice box and a few keys and knobs. Wiring diagram is pictured on the following image (click it for larger version).

wiring diagram

I used a RJ-45 connectors (network cable connectors) to connect main device with footboard. As you can see from the wiring diagram, there are a lot of wires to be connected and, since I wanted a nice little enclosure for the device, it gets pretty ugly when trying to fit everything in :). Also, I think I wired the MIDI connector wrong, but it is not used in current implementation so it doesn't matter.

opened device opened device

I really don't know how I managed to get everything inside (advice: if you want to make this use bigger enclosure). I also didn't had any electrical tape so you can see tape with lion and zebras used for isolation purposes.

At the end (next morning) I somehow managed to close the box so here is the final result:

device device device

LCD display on device currently is used only to display simple message and to show current bank (asterisk in first row means bank 1 and asterisk in second row means bank 2). Arduino code for the device can be downloaded from

Computer software to give some kind of functionality to this device can be found here.


Since the first idea was this to be a foot controller, a footboard is pretty important. Biggest problem were keys. There are pretty good keys made especially for this kind of things but they are usually expensive and hard to find. So my idea was to find an old poker or arcade machine because that keys are made to be hard to break. Accidentally I found this and immediately ordered needed+replacement buttons.

So, this is the result:

footboard footboard
footboard footboard

Continue to software >>


  1. Hi I'm very interested by your project. May be i will realize it . Is this foot controller able to send different midi informations in different midi channel with one foot switch ? I'm in the same case than you : i need a fcb 1010 but really smaller . Thanks LUC

    — by AMBRY LUC on Tue, 4 Jan 2011

  2. @AMBRY answer is yes. because all midi sending is done in software (python script), you can add as many different midi messages to one footswitch as you wish, and also each message (program change, note on, midi cc) can be sent on its own channel

    — by igor on Tue, 4 Jan 2011

  3. ok ,it sound good A last question : i see that you have only one bank button . Is it possible to put a bank + and a bank - ? how does it work ? ( i'm absolutely ignorant about programming )

    — by AMBRY LUC on Tue, 4 Jan 2011

  4. i put only one bank button because of lack of pins on arduino and also for simplicity - this way i have only two banks and i can easily see which one is active on lcd. 'bank +' and 'bank -' can be added by sacrificing one other button or knob, but then program needs to be changed.

    — by igor on Tue, 4 Jan 2011

  5. Hi IGOR i ordered every parts for this project ,and very good keys ,they don't need to be changed .they're here if you're interested . Many years since i use it on stage ,it's not so expensive ,and i think they are going to survive me , . I installed ubuntu on my mac and it look very complicated for me : i'm not able to install PyQt4, PySerial and alsaseq .Could those programs run with mac osx ? (that shall be simpler for me )

    — by AMBRY LUC on Fri, 7 Jan 2011

  6. @AMBRY conversation continued over mail for convenience

    — by igor on Fri, 7 Jan 2011