So, I snagged an Akai MidiMix - a great piece of gear I’ve only seen a few guys using. I think it was ham-stringed a bit by it’s association with Ableton - indeed, the LEDs are only supposed to function when connected to Ableton, and they are only supposed to reflect the Mute and Record Enabled states of tracks.
The hardware is capable of MUCH more than that, but Akai’s documentation is sadly lacking, so I set about trying to bend the thing to my will. The big things to know if you wanna dive into this beast is that
- the Mute and Rec Enable buttons send Continuous Controller messages, but the LEDs respond to Note Values.
- You can edit the CC that each button sends, but NOT what it responds to
- Each “stack” of Mute, Rec Enable, and Slider come from the factory by default sending the same CC on different channels (for instance, the far left buttons/sliders are CC 22, channels 1, 3 and 7 respectively).
I wanted the Mute buttons to reflect the Song State in Cantabile. That means I somehow had to make the LEDs mutually exclusive - turning one on turned the previous one off. Thankfully, States made this relatively easy. First made the States, and then use Midi Monitor to figure out what CC a particular button sends. (By default, the Mute buttons are CCs 22-29, Chanel 1) For each State, I ended up with 3 Bindings:
- Receiving the CC value 127 targets Load State By Index
- Receiving the CC value 127 targets back to the MidiMix, sending Note to whatever note the LED you wish to target responds to. (C#-1 is the left-most Mute button) It is important that you set both the maximum and minimum value of the note to 127, or else the State will load, but the button on the MidiMix will only flash instead of remaining lit.
- Song State on Unload targets the Midimix and sends Note Off to the Note you used in binding #2.
You must make these three bindings for EACH state.
For the Rec Enable buttons, I wanted to use them to turn effects on and off - that is something of the opposite problem. I want them to stay on when pressed, and be independent of each other. For many plugins, this might be really easy - but (because of a decision that makes using certain Midi footpedals easier), the plugin I used (Line 6 Helix Native) doesn’t bounce the status of effects to it’s Midi Out.
So, this required using Cantabile’s Controller Latch filter. First - put all the plugins you wish to be effected by this in a Rack. (I had no luck using the filter in the main window Routing) Then setup a filter for each button you wish to use in this manner (the lights stay on until turned off). Since I was using only the Rec Enable buttons, I could make the filter for all of Channel 3.
So now, every time you press a button (that you applied the filter to) on the MidiMix, instead of sending 127 when you press it down, and 0 when you release, it toggles between 127 and 0 on each successive press.
Once you get that worked out (liberal use of the Midi Monitor here is recommended to make sure each button is sending what you think it is to what plugins/racks you need it to), then getting the LEDs to function is a simple matter of duplicating every binding you make to do an action with a similar one that bounces back the Note to the MidiMix.
Here’s a link to my file, though 1) it includes a lot of extraneous connections and 2) I’m not sure how much you’ll be able to glean since you’ll be missing many of the connections.
So here’s a screen shot of the first few States worth of bindings
There’s probably a more elegant way to do just about everything I did - there’s some serious bodging going on - but I’ve read several posts on other forums of people struggling to make this hardware do what they want it to do despite Akai’s shoddy documentation, so perhaps this will be of use to someone, and perhaps someone will do it better than me.