Launchpad translator

As a product, this pad (Launchpad Mini mk2 - you now probably want at least the mk3) is aimed at triggering samples in a DAW.
It speaks MIDI, but the note layout is not musical at all.
If you want to use it for that (note: no velocity; you may want a Pro or X for that - but by then, also compare to things like Push), you want a different layout.
As it speaks MIDI, I've previously abused it in other ways, such as triggering a slew of keyboard combos via MidiKey2Key.
But you can go further than that.
Pictured is an Arduino with a USB 2.0 Host shield.
Acting as a translator (listens to USB-midi from the pad, and as of this speaking serial MIDI on the other end) lets us e.g. create a isometric keyboard layout, and add features we can think of, such as a step sequencer.
Also speaking on USB-midi side lets us control the LEDs.
And because USB-MIDI is defined in he USB standard itself, the USB code is not particularly scary.
The code is duct tape between:
- Arduino MIDI library [1]so that it can easily put out serial MIDI (on 5-pin DIN)
- my code also uses the USB MIDI library though this seems to have been merged into the host shield code in current versions.
See also:
- launchpad-programmers-reference.pdf (note there are differend pdfs for different revisions)