pushCCs app

This app creates virtual MIDI ports for mapping in Ableton, and provides individual pressure values for each button.

I’ve added an optional latching mechanism. When that is active, you can press any of the corners to hold the other buttons in place. You can then safely remove your hand from those buttons without zeroing out their parameters.

Additionally, if you press three of the corners simultaneously, that will zero out all of the buttons and their associated values.

If you’ve got a foot pedal plugged in (slot 1), you can use that for latching instead of the corners.

Note: This one is Mac only. It relies on some services from the operating system, as well as the friendlier device sharing nature of things in general. At this time, there are no plans to create an equivalent PC workflow. The editable .maxpat file is included, should you like to attempt a port yourself.



  • …had all kinds of problems. you don’t want it.


    (note: the compiled version included here was not in fact standalone. I’ve since learned how to make those correctly)

Josh Spoon did a video writeup of v1.0 here:

as part of his excellent “30 Days of Ableton Push” exploration.

early prototype / previous max for live version

I’ll write up a proper explanation later, but here.

requires Ableton Live 9, Push, and Max For Live. if you don’t have those things, this probably won’t interest you.

partially based on this:

or rather, the old version:

(This is missing nearly every feature you’d possibly care about, but it doesn’t require the max runtime. I may add some of the functionality from the runtime version back into this later, when v2 is fleshed out a bit more, but there’s no point with this version. m4l will never support poly aftertouch, so it’s strictly a matter of whether the other features add enough without that. They don’t yet.)

10 Replies to “pushCCs app”

  1. Hey, Daniel. Sorry for the delayed response.

    Right-click on the link and choose “save as”. (Your browser is trying to display the .maxpat file, which is not terribly useful to your goals.)

    Alternately, the next link below that is a .zip file which should download normally, and also contains the .maxpat file you were trying to download.

    Hope that helps!

    1. Noticed that myself. It seems to have broken w/ Live 9.1.1’s Push firmware update.

      I’ll look into restructuring this soon, I think. I’m not thrilled with requiring User Mode, as that conflicts with NativeKontrol’s excellent PTX-Live script.

      Sorry for the inconvenience!

  2. Hi Aaron,

    I stumbled upon your great PushCC maxpatch while searching for a way to be able to use the Push poly aftertouch in Ableton Live.
    Thanks for this! Really fun patch to play with and really helpful in getting my own project to work.
    I was wondering if you could clear something up for me, something I’ve not been able to work out puzzling or googling: in the enablePolyAftertouch subpatcher you send messages to the Push Live port and User port that seem to act like some kind of switch, letting you choose between Push sending out poly aftertouch or ‘normal’ aftertouch. What kind of messages are those? Are they general midi things, or are they specific for Push? Is there documentation online somewhere about how this works?

    Thanks, and thanks again for the great patch!
    Best, Reinout

    1. Sorry for the very late reply.

      No, nothing’s documented. This was largely put together by reverse engineering the live remote scripts for Push, which Julien Bayle maintains a copy of on github someplace.

      The messages are raw MIDI bytes, or “SysEx commands”. Different hardware responds to different commands in that format, so it is indeed device specific. In fact, the commands are different on Push than they are on Push 2.

  3. Hey! This is amazing, I’ve been trying to make this. Does it work in Ableton Live 9.6? Also, Is there any chance of it working on windows?

    1. I believe it does work with 9.6, but not on Push 2.

      The OSX specific part is where the patch creates virtual MIDI ports, to route from the Max runtime into Live. That part doesn’t work in Windows. If you’ve got MIDI Yoke or Bome’s MIDI Translator or some such, you can fashion a workaround. But, you will need to either edit the patch to make the port names match your own, or name your ports to match what the app is expecting. Either way, it won’t be a fun prospect, so I usually just say the app’s broken in Windows.

      1. Ok cool! Unfortunately I do not know Max very well, but I do have midi Yoke and Push 1. If you ever get it running in Windows and in PXT or Live mode, I’d probably pay money for that. Keep up the good work

Leave a Reply

Your email address will not be published. Required fields are marked *