News » 07 January 2009

Monome + Numerology

Tonight I threw together a little Max/MSP patch so I can control preset changes in the modular sequencing program Numerology with my Monome. I think this will be a nice performance interface. It's designed for a Monome 64, but the technique could certainly be extended for one of the larger versions.

The basic idea is there are 8 racks in Numerology, each with 8 presets. The Monome's columns correspond to the racks and the rows to the presets.

My goal was to have the monome always displaying the current active presets in Numerology. So you change the presets in Numerology and the monome will update to display the preset. Or you can press a button on the monome to signal a preset change but the button won't actually light up until the preset goes active in Numerology (usually on the next downbeat depending on your preset quantize settings). It's pretty slick if you ask me :D

Download the Numerology project template and the Max patch.

To use, follow these steps (the order is important!):

  1. first plug in your monome and start the MonomeSerial app
  2. then launch Numerology and open the Numerology project template
  3. then launch the Max patch

The rewind button will sync Numerology's current preset state to the monome (you should see the top row light up if you haven't changed any presets yet).

If you don't have Max/MSP, this patch should work fine with the free runtime version of Max.

Some notes: I put a ProgChange module in every rack that sends out a program change when a preset change occurs. Similarly the presets are setup to respond to MIDI program changes. The first rack uses channel 1, the second rack uses channel 2, and so on. Within each rack, it uses program number 1-8 to control the preset that is selected. This probably means it won't work well for projects that need program change messages for other purposes. Another potential issue is every rack needs to output MIDI to Numerology Out 1, but that could be adjusted by reworking the Max patch.

This interface is pretty workable, but there's a couple downsides. There's no good way to pull this into existing projects (it's really tedious setting up all the ProgChanges and presets). And if you duplicate or create a new preset, you have to reconfigure both the ProgChange program number and reassign the MIDI program change for that preset. I have found it's best to setup your rack modules, come up with a base pattern, then use the "Copy Params to All Presets" function and go from there.

Hopefully this is useful to someone else.