DIY: OT Pickup Machine footswitch (now with final pics!)


What did it cost?

2 x 220 Ohms resistors -> ~0.04€
1 x cheap arduino nano knock off (Elegoo on Amazon) -> ~4€
5 x footswitches (TRU COMPONENTS TC-R13-85A-05 …) -> 18.1€
1 x MIDI DIN connector (Neutrik NYS325) -> 0.75€
1 x 45x91mm protoboard -> 0.65€

With the wires and solder, let’s say 24€. Not bad :slight_smile:


that XTpower battery pack… can you recommend it?

if so, is there a specific model to look out for? I see some units from that company sell for as low as 70 euros…


Oh yeah it works perfectly. And I like the fact that all recent machines from Elektron use the same PSU so I can use it with all of my machines OTmkII, Digitone, A4mkII and ARmkII (although with these two, the battery lasts less longer).
The model is XT-20000QC2 20400mAh.


that is the one model I´ve seen advertised for <70€, nice.


I finished my footswitch using a ~20€ Ikea foot-rest (Dagotto), 8 zip ties and 2 m3 screws/nuts.

PS : please don’t pay attention to the footswitches order, I don’t know what I did :smiley:


Please remind what is your controller?
It looks solid, a bit high maybe. A side view?


Looks great! My enclosure should be arriving soon too!


For now it’s standard functions for pickup machines : combo rec, start/stop, sync start on the bottom row and select previous and next track on the top row.
It’s robust, clearly not a FCB1010 but it’s lighter. Note the zip ties keep the thing in place as it’s intended to be a foot-rest you can adjust.
It is a bit high but the angle makes it useable.


Any idea on how to implement MIDI to make the HOLD recording mode work in Pickup machines? The manual is a bit unclear about this.

Should one send the MIDI note on when pressing the footswitch, and MIDI note off when releasing? I will have to test this at some point…


Yes, this is how I implemented it and I did test with hold. It works perfectly.


If you’re interested, I added a system of presets. Holding a footswitch at startup select one preset. And as there’s a default configuration, you’ll have N+1 possible configurations (N being the number of footswitches, for me, 5).


Nice, that’s clever! I thought of maybe adding another button and some LEDs to program more presets into it, but this is a great way of doing it without adding any more clutter.


Finally got to finish up the project. Will add these two pictures to the main post!

I had a terrible accident while applying the glossy finish, which lead to a very messy finish on the top part unfortunately… I might try to fix it at some point. But it works perfectly! It just needs 4 little standoffs on the bottom. I will probably add a 9V battery inside besides the power jack as well. Also I mounted the MIDI port upside down :sweat_smile:

Currently playing around with this setup:

  1. INABrec
  2. INCDrec
  3. active track up
  4. active track down



Many facturers too !


this is a very cool project!!


hi there thanks for sharing your code… forgive me if I have missed something but where do you define INPUT_PULLUP I see you have used it on line 32 but I cant see where this is defined… thanks Gareth


A quick google and I see it’s inbuilt into Arduino, in the middle of breadboarding mine and although I was able to see the correct midi notes when I connected to my squarp pyramid I was unable to get the pickup machines to activate as expected so suspect I am doing something wrong at the OT end… just seen your “preset” code very cool!!! I am really excited about getting this to work… I am even going to attempt to weld up my own metal box for it… also planning on making some kind of weird playstation style controller to send cc … thanks so much for the inspiration!!


INPUT_PULLUP is builtin and allows the use of the internal pullup resistor of the Arduino. So the logic in inverted (switch by default HIGH and LOW when pressed) but it’s one less resistor (per switch) to use.
If it’s not recognized on your platform maybe it’s not supported by your Arduino. Then you just need pulldown resistors and to invert the logic of the switches.


Make sure you set the channel to the same MIDI channel that is set as autochannel in the Octatrack :slight_smile:


the code compiles ok… I did some serial monitoring in the arudino software and could see the correct data being sent… and also could see the correct notes being triggered on the pyramid when I had that connected it was just the OT wasnt responding as expected to be fair I am not an expert in the pickup machine setup so need to re-visit this however as usual not enough time… especially when wires everywhere and soldering kit to tidy away thanks again!!