Novation Launchpad Mk2 Rust API2017-01-15
For Christmas, my lovely wife got me a Novation Launchpad Mk2. These are billed as the "iconic grid performance instrument", and some day I hope to actually make some music with it. Until then, its a really cool 9x9 button grid with RGB LEDs. Pefect for playing around with!
Luckily for me, this thing is basically perfect for hacking on. It uses MIDI to read button presses and control the lighting, so there is already low level driver support for both OSX and Linux. On top of that, they provide an API (pdf) document showing you how to do everything!
I chose the portmidi-rs bindings, because PortMidi is multiplatform. Unfortunately, there was a missing library call I needed to send more complex commands, but no worries, after a quick pull request, we were in business!
So far I've implemented a basic set of commands from the API document, as well as a demo that can be used to check that everything is working. So far I've tested it on OSX and Linux (x86 and on a Raspberry Pi).
I have a few ideas on how to build on this, including:
- Some kind of Notification Board for things like public transit, weather
- Basic grid based boards, such as:
- Game of Life
If you have a launchpad, and would like to contribute, please feel free to get in touch!