Hack a Grid: Novation Makes Launchpad Pro Firmware Open Source

Novation’s Launchpad Pro has just begun shipping, and it’s lovely, very flexible hardware. You can use it with Ableton Live. You can use it with other software, as a standard MIDI controller. It’s USB class-compliant, so it works with other devices and operating systems, like the iPad and Raspberry Pi. You can change how it works with Max for Live, or any software that supports MIDI. And it works in a variety of standalone modes, so you can use it to play hardware without connecting to a computer.

That’s a lot, already. But soon, the Launchpad Pro could do more.

Novation quietly released a special customizable firmware as open source code on GitHub. And, inspired by recent Head of Product Innovation Dave Hodder has even written a screed about hacking. Despite the Launchpad-specific headline, it’s actually more or less a love letter to the whole hacker / DIYer / open source community, generally:

Now, you’re not actually hacking the entire Novation firmware. That’d cause potential mayhem, and apart from being a support nightmare for Novation, it’d be more or less a nightmare for you, too – and wouldn’t really yield any interesting results.

Instead, you can think of this as an open API to the hardware itself. You can’t “brick” the device, or otherwise break it. What you can do is make new applications for the Launchpad Pro as a standalone device.

In your code, you can include messages to and from the hardware:

Receive events when you press the pads and buttons

Receive messages from the USB port or MIDI port (there are MIDI input and output jacks on the Launchpad Pro)

Send messages to the USB and MIDI ports

Receive tick messages – so your app can sync to an external source

Change the LED colors

Thanks to the Novation team for messing with our synth at a hack day recently!

At your disposal is the Launchpad Pro’s brain, an ARM Cortex M3 from STMicroelectronics. (72 MHz, baby!) To make life easier, they’ve even built a virtual machine you can install so your developer environment is ready to run. Then, you build on a command line or in Eclipse and upload via MIDI – fairly easy stuff.

You code in C – the app.c file shows you what’s going on. Even with pretty basic coding skills, it’s pretty accessible; that’s the advantage of them hiding away the nasty stuff you’d only want to touch if you were an experienced developer and Novation offered you a job.

With just those elements, you can do a whole lot. Fun hacks light light shows and games are possible, and might be an enjoyable way to learn. But you’ll also be able to create musical applications that aren’t already on the hardware, like chord generators, arpeggiators, or even a step sequencer.

This could be huge for Launchpad Pro owners even if you aren’t a coder, because it could mean a community around the device sharing this stuff and supporting one another.

To make things even easier, though, we’re talking with Novation about how some examples might be produced that will help get people started.

I love the idea, though, as a musician as much as a hacker. It opens up the possibility of having standalone hardware in the studio you can use with or without a computer, ready to perform the tasks you want in your music creation process. And it means you can imagine something and get it working on hardware without the daunting task of trying to build something from scratch. I think it’s potentially a great companion to our open source, standalone, ready-to-play MeeBlip synth – you’ll spot one in the shot above, getting some use at the recent MIDI Hack in Berlin. And I don’t just mean as a product – it’s something I want to use with my MeeBlips, myself!

There really isn’t any direct comparison, either – grid hardware with velocity and standalone operation that you can hack directly on the device. Of course, the whole initiative from Novation does owe a huge debt, though, to the monome line, and the fact that that maker and its community really championed and popularized the idea of sharing open musical solutions around a piece of hardware. It’s difficult to overstate the impact Brian Crabtree, Kelli Cain, and the monome musicians have had on the industry, as well as all the people who have been organizing these hack days and producing creative ideas.

Stay tuned for more on where this is leading. And if you have feedback on that API or what you’d like to see, let us know in comments.

Make it open-source – something that another company has missed so far for their ableton controllers

Mike Perkowitz

I wonder how much space it offers for your code (and any data you’d like to load). The readme says it has 128k of flash memory, but presumably it’s not all available.

Mike Perkowitz

I wonder how much space it offers for your code (and any data you’d like to load). The readme says it has 128k of flash memory, but presumably it’s not all available.

tom

Someone needs new headphones.

Dave Hodder

Heh – they’re my “is there a signal there” headphones!

tom

Someone needs new headphones.

Dave Hodder

Heh – they’re my “is there a signal there” headphones!

xx

This is really great news. I hope this lives up to the hype, and isn’t weirdly hobbled in some way that makes it useless to hackers.
Peter, can you do a review of the Launchpad Pro when you’re able? And maybe include your impressions on the process of uploading code to it?

Dave Hodder

The only way it’s hobbled right now is flash storage, as we want to avoid unintended consequences (accidental erasure of things, wearing out sectors etc.). We want to get it working though, it opens up new possibilities…

xx

This is really great news. I hope this lives up to the hype, and isn’t weirdly hobbled in some way that makes it useless to hackers.
Peter, can you do a review of the Launchpad Pro when you’re able? And maybe include your impressions on the process of uploading code to it?

Dave Hodder

The only way it’s hobbled right now is flash storage, as we want to avoid unintended consequences (accidental erasure of things, wearing out sectors etc.). We want to get it working though, it opens up new possibilities…

Will

I’d like to high five Novation right now. Not only did they do it but they did it right: code examples, everything on github, vagrant+VB virtual machine, simple MIDI upload. Seriously, way to go Novation.

Will

Despite the Launchpad-specific headline, it’s actually more or less a love letter to the whole hacker / DIYer / open source community, generally:

After actually reading the linked love letter, it’s no wonder this was executed so well. Some one needs to share that post on Hacker News.

Will

I’d like to high five Novation right now. Not only did they do it but they did it right: code examples, everything on github, vagrant+VB virtual machine, simple MIDI upload. Seriously, way to go Novation.

Will

Despite the Launchpad-specific headline, it’s actually more or less a love letter to the whole hacker / DIYer / open source community, generally:

Thanks for this. There is indeed lots of interesting stuff there but it hasn’t been updated since 2013, sadly. That said, the last post is “Cross-platform with Web MIDI”—two years before most people/blogs had even considered it. Definitely hope they get back to it; re-posting the hackathon love letter there seems like a great way start back into it.

Yup, been wanting to resurrect the dev blog for a while, thanks for the inspiration!

Frank

No knowledge about this hacking stuff, but someone should inform Stray (nativekontrol) about this…:)

Also i wonder if that means that hacking would work with the original Launchpad and Launchpad S versions as well – or is this exclusively for the Pro model ?

Dave Hodder

It’s Pro only – there’s little value in hacking the S firmware (do it on the host instead, much easier) and it’s impossible to hack the original Launchpad as it’s not field upgradable (firmware is burned into ROM at the factory for ever!).

Frank

No knowledge about this hacking stuff, but someone should inform Stray (nativekontrol) about this…:)

Also i wonder if that means that hacking would work with the original Launchpad and Launchpad S versions as well – or is this exclusively for the Pro model ?

Dave Hodder

It’s Pro only – there’s little value in hacking the S firmware (do it on the host instead, much easier) and it’s impossible to hack the original Launchpad as it’s not field upgradable (firmware is burned into ROM at the factory for ever!).

Loowfizzz

hmm! can anybody teach me coding?

Loowfizzz

hmm! can anybody teach me coding?

wetterberg

Hehe, I’m already thinking if there are available pins on the board…? Has anyone opened these up yet? Might be some hardware hacking potential in there, too.

wetterberg

Hehe, I’m already thinking if there are available pins on the board…? Has anyone opened these up yet? Might be some hardware hacking potential in there, too.

Patrick Ijsselstein

Am i the only one that uses the launchpad with numerology software? it is awesome

Patrick Ijsselstein

Am i the only one that uses the launchpad with numerology software? it is awesome

Juper

We have the same MacBook power adaptor! What garbage.

Good idea with taping it to avoid play around the weak point, I’m going to do that with my current (3rd) one.

Darren E Cowley

Mines taped as it already broke…

Juper

We have the same MacBook power adaptor! What garbage.

Good idea with taping it to avoid play around the weak point, I’m going to do that with my current (3rd) one.

Darren E Cowley

Mines taped as it already broke…

Polite Society

That’s great news. I hope it spurs Keith McMillan into finally releasing the open source code/API for their controllers, like they said they would.

Polite Society

That’s great news. I hope it spurs Keith McMillan into finally releasing the open source code/API for their controllers, like they said they would.

aaron

It should be mentioned the API for the original Launchpads was also made public many years ago. Not quite this extravagent and requires you to software on the pc, but Novation has been doing right by the launchpad for awhile. Nice to see this updated move by them to revitalize custom programming for the LPP. The standalone aspect is really cool.

aaron

It should be mentioned the API for the original Launchpads was also made public many years ago. Not quite this extravagent and requires you to software on the pc, but Novation has been doing right by the launchpad for awhile. Nice to see this updated move by them to revitalize custom programming for the LPP. The standalone aspect is really cool.

senz

It is a very cool trend. But pricing of this device is unlikely will make it a hackers dream.

senz

It is a very cool trend. But pricing of this device is unlikely will make it a hackers dream.