External Objects for Cycling 74's Max


Download - Max 6 & 7, OS X and Windows, 32-bit & 64-bit

imp.midi is a set of objects to get round an irritating limitation of Max For Live, in that devices hosted by Ableton cannot access any MIDI data other than a single channel provided to them by the track the device is created on. Additionally, it is impossible to access SysEx messages.

MIDI support in these externals is implemented using RtMidi, a very useful C++ cross-platform MIDI library.

Objects included:

  • imp.midiin
  • imp.midiout
  • imp.midiinfo
  • imp.sysexin

These objects are all drop-in replacements for their standard max equivalents and function exactly the same way, with the addition of an extra status outlet to provide feedback on whether the object has successfully connected to the port.

Note: When using in Windows, imp.midi in cannot use any port that the host application (Max or Ableton Live) is also using. Any ports required to be used with imp.midi should be disabled in Max/Ableton MIDI preferences. This is due to Windows lacking a native multi-client MIDI driver. 


Creative Commons License

This package is released under a Creative Commons Attribution- ShareAlike 4.0 International license. This means that you are free to share and adapt the package, however you must credit the original work to ‘David Butler / The Impersonal Stereo’, and distribute the resulting adaptation under the same or a similar license.


Download Version 0.1.1 Beta - Max 6 & 7, OS X and Windows, 32-bit & 64-bit

imp.push is an object for sending jitter video matrices to the Ableton Push 2 LCD display, allowing use of the controller as a custom interface for a Max patch. The external uses libusb for USB communication with the hardware.

The above download is in the form of a Max package, place the entire folder in [Username]/Documents/Max 7/Packages to install.


The project is hosted on Github, please file any issues or bug reports there.


This package is released under the GNU LGPL v3.0. This means you're free to include it in commercial and non-commercial patches and standalone applications, but any changes to the source code must be given back to the community under the same license or the GNU GPL license.