UPDATE: This material has all been updated. See the newer post here (though do read this first).
Someone recently asked me about Darwin Grosse’s simple step sequencer for the Code that he made in Max6. This is the sort of “most obvious” approach to making a step sequencer on the Code. Thirty-two steps, with the knobs changing pitch on a pentatonic scale. Because it’s so simple, it’s ultra-fun. It’s also very reminiscent of analog step-seqeuncers for modular systems.
Anyway, this persistent friend wanted to add a few things, but, as a busy Max novice, he didn’t really have the ability to patch it up himself. I’m sure he’s not the only one, so I thought I’d share my changes for everyone to enjoy. Here’s the additions:
- Tempo multiply and divide
- Tempo sync to MIDI clock
- Note duration select
- Note display
- MIDI Channel select
- Updated velocity out value for LEDs for Code V2
Because Darwin’s patch relies on the transport object for its timing, it took a bit of trickery to keep the duration fixed when changing the tempo, so, if you are a curious Max patcher, you can see how I used the translate object to do that.
I added a channel select feature so Code V2 users can use four instances of this patch and control 4 sequences. Of course, you’ll want to use the editor to setup a bank-select button on the Code.
Because I’m nice, I made a standalone version for people who don’t have Max6, so they can have hardware-stepper joy with their Code.
In celebration, I fired up this standalone version of CodeSeq and Propellerheads Reason. Reason has synths and sounds that I love, but there’s not really a way to do interactive step sequencing with hardware for most of the Reason synths. (It’s possible with the Ohm64/block/Code in the Thor synthesizer, but not with any other synths). This video explains the easy setup, and tantalizes with some pretty awesome sounds:
(This video is on a Mac using IAC – you could do the same on a Windows computer with MIDI Yoke)
To anticipate a question…yes, it would be theoretically possible to control the sequencer and use the Code to control Reason at the same time. However, this would take some simple editing of the “Livid.lua” file in Reason (in /Library/Application Support/Propellerhead Software/Remote/Codecs/Lua Codecs/Livid). You’d need to change all the note patterns to restrict them to Channel 1. It proably would be pretty easy – just find and replace this:
to restrict midi input of notes and cc’s to channel 1. It’s the “?” that allows any channel to pass. The patterns refer to hexadecimal values. Notes are recognized with hex values of 90-9F and CCs are B0-BF. Then, enable the Code in Control Surfaces, and use bank one for controlling Reason, and set the CodeSeq to channel 2. You don’t need special software – a basic text editor like NotePad, NotePad++, TextWrangler, or TextEdit will do. It probably goes without saying, but, work from a backup!
You can download the standalone version from:
and the patch from