You know Ableton Push 2 will work when it’s plugged into a computer and you’re running Ableton Live. You get bi-directional feedback on the lit pads and on the screen. But Ableton have also quietly made it possible for any developer to make Push 2 work – without even requiring drivers – on any software, on virtually any platform. And a new library is the final piece in making that easy.
Even if you’re not a developer, that’s big news – because it means that you’ll likely see solutions for using Push 2 with more than just Ableton Live. That not only improves Push as an investment, but ensures that it doesn’t collect dust or turn into a paperweight when you’re using other software – now or down the road.
And it could also mean you don’t always need a computer handy. Push 2 uses standards supported on every operating system, so this could mean operation with an iPad or a Raspberry Pi. That’s really what this post-PC thing is all about. The laptop still might be the best bang-for-your-buck equation in the studio, but maybe live you want something in the form of a stompbox, or something that goes on a music stand while you sing or play.
If you are a developer, there are two basic pieces.
First, there’s the Push Interface Description. This bit tells you how to take control of the hardware’s various interactions.
https://github.com/Ableton/push-interface
Now, it was already possible to write to the display, but it was a bit of work. Out this week is a simple C++ code library you can bootstrap, with example code to get you up and running. It’s built in JUCE, the tool of choice for a whole lot of developers, mobile and desktop alike. (Thanks, ROLI!)
https://github.com/Ableton/push2-display-with-juce
Marc Resibois created this example, but credit to Ableton for making this public.
Here’s an example of what you can do, with Marc demonstrating on the Raspberry Pi:
This kind of openness is still very much unusual in the hardware/software industry. (Novation’s open source Launchpad Pro firmware API is another example; it takes a different angle, in that you’re actually rewriting the interactions on the device. I’ll cover that soon.)
But I think this is very much needed. Having hardware/software integration is great. Now it’s time to take the next step and make that interaction more accessible to users. Open ecosystems in music are unique in that they tend to encourage, rather than discourage sales. They increase the value of the gear we buy, and deepen the relationships makers have with users (manufacturers and independent makers alike). And these sorts of APIs also, ironically, force hardware developers to make their own iteration and revision easier.
It’s also a great step in a series of steps forward on openness and interoperability from Ableton. Whereas the company started with relatively closed hardware APIs built around proprietary manufacturer relationships, Ableton Link and the Push API and other initiatives are making it easier for Live and Push users to make these tools their own.