AP2JS - Max JS script for the Ableton Push 2

UPDATE: It’s now available: AP2JS - Max JS script for the Ableton Push 2

Hey everybody. I’m currently working on something new which I’m calling ap2js that might be interesting to some of you.
ap2js is a javascript file / library for Cycling 74’s Max designed to make it super easy to control and program the Ableton Push 2.

The goal is to make the Push 2 as easy to program as the Monome. Instead of having to remember cc / nn numbers, sysex commands, etc, you can simply initialize the script and use methods like set_pad (x, y, value), clear_row(y), set_button(name, value), set_column_exclusive(x,y), and so on…

Here’s an example: https://twitter.com/icaroferre/status/953314293759528960

This first version I’m developing already contains a bunch of different methods for the 8x8 grid and additional buttons but there’s a lot that I still want to get done before I release this to the public (plan is to open source it).

Would anybody be interested in participating in a private beta? I’m not sure how I’ll conduct it yet (maybe BitBucket or even a Slack channel) but it’d be nice to know if anyone would be interested in helping out / testing it / giving some feedback.

I don’t know how easy it will be, but you could consider wrapping Ctlra (it’s a C lib), that abstracts events as well (so you’ll get “play button” instead of CC86) and supports a lot of controllers. I’m working on Push2 support for it.

Oh that’s interesting!
So far my plan is to keep this strictly in JS and work with MIDI / Sysex directly since I mostly want to use ap2js for some of my own Max for Live devices etc but it’s good to know that there’s something similar available in C (although it looks a bit more basic).

On other hand, I do plan on converting the whole thing to Python at some point as well.

Cool! It’s indeed relatively simple, basically only meant to abstract the hardware away, mapping and more logic is left to the application using the lib.
I’ll probably start using Ctlra from Python at some point as well. Will let you know if I do.
And I’ll keep an eye on your project to see where it’s going :slight_smile:

1 Like

Hey everybody, I’ve just made AP2JS available on GitHub.

If you have a Push 2 and you’re into rolling your own instruments with Max, check it out :slight_smile:
(oh, and send me a copy of your creations!)