Archaeopteryx: a DIY MIDI controller

Posted by on May 31, 2011 in DIY, excitement, vj

And then I made this.  It’s called Archaeopteryx, it’s a MIDI controller designed with VDMX in mind and I think it’s pretty hot.  I’m going to make a run of similar, smaller controllers called The Sleep Crime so if you’d like to get your hands on one shoot me an email.  But for now here’s how this one came into being.

I came across this post by Fake Money detailing building a MIDI controller around a modified Korg Nanokontrol and a USB hub and, having hacked up a qwerty controller in the past, I started scribbling out ideas for my ideal controller.  I’ve always been big on the Livid Ohm 64 but it didn’t have enough knobs for me.  The first idea i scribbled down came out like this.


The required ingredients:

  • 2 nanokontrols
  • 1 usb qwerty keyboard
  • 1 usb hub
  • 3 10k linear faders
  • 33 10k linear pots and knobs
  • 9 toggle switches
  • 55 momentary push buttons
  • Some sort of case

All up the parts cost about $400 AUD.  The case I scored for free in hard rubbish.  In a past life it was a cutlery box.

I started with the keyboard – keyboards work by having two conductive sheets placed one on the other that lead to a little PCB with a whole stack of terminals.  When a button is pressed two terminals find each other and the keyboard figures out which button you pressed.  In order to make your more awesome push buttons do the same thing it’s a case of tracing the two sheets back to the PCB and figuring out which two terminals are shorted to the desired keypress.  There’s a good run down on how to do that on the ableton forums here.  I ended up with a squid like PCB and a notepad full of gibberish:

Getting stuck into the nanokontrols was a bit tougher.  I followed Fake Money’s guide to dismantling these little things and after a bit of trial and error managed to remove everything I needed to to solder my own pots.  If you’re trying this yourself, this is a good way to dismember the faders:


after a bit of trial, error and almost frying one of the boards, all the pots somehow soldered themselves in place.



wiring up one half of the buttons…

wiring up the other half…

attaching the qwerty squid…

slapping the whole shebang together.  I used a USB hub with a USB B connector to save more soldering and it’s actually a great little hub.

inserting the hyperstrobic eureka shield™ – scientifically designed to lift and separate.

and with the hyperstrobic eureka shield properly installed the whole thing was done.  there were a couple of little bugs found in testing.  just one or two miswired qwerty buttons but with that fixed  Archaeopteryx is ready to scavenge in the jurassic period.



  1. Giles Bowkett
    June 2, 2011

    Hi man, sorry to be a pain but I built a MIDI system called Archaeopteryx a couple years ago. It’s a system for algorithmic composition in the Ruby programming language. Google “Archaeopteryx MIDI” for more info. Found your site after somebody who reads both our blogs emailed me…

    • bob
      June 2, 2011

      yes, sorry to step on your google space! Oddly enough i released a piece of MIDI software a few years back called axis and it’s competing in the google cage match with a MIDI controller called axis. Your software looks great btw… am investigating.

  2. Archaeopteryx: a large, colorful MIDI controller | House of Mods
    June 2, 2011

    […] is [Robert Jarvis'] new MIDI controller which he has christened the Archaeopteryx. It makes its home (quite nicely might we add) in a discarded wooden cutlery case. This provides a […]

  3. bill
    June 2, 2011

    Hi, this looks great, just wondering does your software have issues with the usb hub? what software are you using btw? I’d be interested first inableton, then my own in maxmsp or supercollider


    • bob
      June 3, 2011

      the software doesn’t have any issues with the hub but the hub itself was introducing some lag in the qwerty keys. i’ve since replaced it with a better one and the buttons are much more responsive. I’m running this through max to convert the keystrokes to midi for further processing and it’s working very well.

  4. James Britt
    June 5, 2011

    Bob, this is wickedly cool stuff, and props to you. But the name is a problem. I have hard time believing it’s a coincidence that a MIDI hardware device has the exact same name as a previously existing piece of MIDI software. And it’s not like “Archaeopteryx” has any inate association with MIDI.

    Please give some thought to changing the name. Even if it *is* just a coincidence it gives your project a bad vibe.

  5. Aaron Maybus
    June 28, 2011

    Hey Bob that looks awesome. Around how long did it take you to make it?
    I have just started looking into making my own midi stuff. any tips on getting started?

    • bob
      July 30, 2011

      yo aaron,
      it took about a month. if you’re looking at building midi stuff just have a quick google for “diy midi”. there are a few frameworks out there like midibox: Livid has diy products as well:

  6. Sam
    July 17, 2011

    Hi, I am considering doing this for a school project. The wiring of the buttons, pots and faders looks quite complicated from the pictures. Are you able to provide some kind of wiring diagram? To assist me in building mine.

  7. Plug n Play – VJ Medley – 6 VJs in 3 hours! - VJ Union Australia
    August 23, 2011

    […] ( Racket ) Jem The Misfit ( Duotone NZ / Melb ) VJ Ladylux ( France / Melb ) Zeal ( / mad DIY science ) Phaic VJ ( aka Martin Hadley / Cumbia Cosmonauts etc ) Jean Poole ( […]

  8. Archos
    September 9, 2011

    Keep the name. Your thing is your thing, the other thing is something else. There is plenty room in namespace. There is no bad vibe.
    Keep it up!

  9. Olly
    November 29, 2011

    Hey, I love the controller! , nice that you could just make something that specifically covers your needs for vdmx control. I find it can be tricky knowing what to map in vxdmx as there are just so many parameters to choose from for mapping. Just out of curiosity, the middle buttons, other than triggering clips what are their other functions? Do you use them for switching on and off certain effects that are controlled by audio or lfos or something? Cheers! Olly
    p.s you might be interested in my work too as I have similar projection mapping/animation/audio-visual interests :)

  10. bob
    December 9, 2011

    Hey olly,
    yeah, the middle red and yellow buttons are used for triggering clips. The blue and green ones either side toggle effects on and off for the current layer.

    I checked out your projection mapping work – great stuff!


  11. PY
    September 10, 2013

    Hi, I am wondering why you need the usb qwerty keyboard and usb hub.. Could I just use 1 nanokontrol and rewire it, and leave it at that? I mean if I only need the controls of 1 nanokontrol. Thanks!

    • bob
      September 10, 2013

      yep, if you only need the controls from a single nanokontrol, you won’t need the hub. The hub is used in this because i’m using a qwerty keyboard for all button presses and more than one nanokontrol.
      I’ve just built a smaller controller with rotary encoders and for that i used a livid brain jnr. Well worth checking out if you’re looking at building something like this.

  12. leo
    June 4, 2014

    hello I hope u are all well
    I know this is an old post but in stumbled upon it now. Im new to DIY midi and I have a question. I have a samson mf8

    and it has rotary potentiometers.. It is useless for me like this to control effects. So.. i’d like to ask if it is possible to replace them with endless encoders? will it work? and also customize it a bit to put more encoders instead of the faders?

    I like the size of the mf8 cos i use a touch screen to navigate, insert effects and all and the mf8 is a good size to have my touch screen closer to me. I like the buttons for transport and all.. if only it would have endless encoders..


    • bob
      June 4, 2014

      Hi, no, it’s not possible to just drop encoders in. For DIY options I’d look at the livid brain and brain jr.