A collection of Max/MSP/Jitter objects for dealing with DMX data.

imp.dmx is a cross-platform collection of Max/MSP/Jitter objects and abstractions for dealing with DMX data in various forms. It focuses around the use of jitter matrices to store data, which the objects then read and write to. The aim is to provide the bridge between your patch and whatever object or method you use to output DMX from Max. The abstractions use native Max objects only, excepting the Art-Net patches which use some custom java networking objects, included in the distribution package.

All abstractions have fully-featured help patchers and a comprehensive manual is included, along with an example patch showing configurations for popular DMX hardware configurations.


imp.dmx Version 0.5 – OS X and Windows

The download is provided as a Max package. To install, unzip the archive, locate the “Max/Packages” folder in Documents (OS X) or My Documents (Windows), and copy the imp.dmx folder into it.

Abstractions Included

  • imp.artnet.controller broadcasts an inputted list of consecutive DMX values over IP using the Art-Net protocol.
  • imp.artnet.node receives Art-Net broadcast DMX and outputs it as a list of consecutive DMX values.
  • reads a list of consecutive DMX values out from a matrix.
  • imp.dmx.write writes a list of consecutive DMX values into a matrix.
  • imp.dmx.get gets the values of specified channels from a matrix.
  • imp.dmx.put puts specified values into specified channels in a matrix.
  • imp.dmx.prefix prefixes channel addresses to a list of consecutive DMX values to create a prefixed list.
  • imp.dmx.defix creates a list of consecutive DMX values from multiple lists of channel/value pairs (prefixed lists).
  • imp.dmx.8to16 converts a single 16-bit int into two 8-bit ints, the MSB and LSB.
  • imp.dmx.16to8 converts two 8-bit ints into a 16-bit int, using them as the MSB and LSB.
  • imp.dmx.rgbcmy converts RGB values to CMY or vice versa.