MMC - Record Play Stop forward rewind

Iam trying to use the hardware control buttons of my M-Audio Keystation 61 Keyboard to Start/Stop Cantabile… and use the arrow keys to control songs and states.

I found out that the Keystation ONLY sends MMC infos on a seperate MIDI Port. Good. But I can’t figure out how to set things up in cantabile.
I can see the green led in the bindings when pressing a button.
I tried all “Targets” but the control button doesn’t work until now.

Any ideas?
Thanks!

Hello Roelli,

here I have a picture of my setup for MMC-Controls.

Thanks.

Somehow the Keystation sends 3 MIDI Signals (controller 15,47 and fine pitch…)… and it only works if I select the second midi control.
(Controller 47)
So… it works now! Good!

Roelli.

I wanted to use the Transport controls and states/song next buttons generally, for all songs.
Somehow I can only select “TRANSPORT” when iam in the normal Bindings Setup… it does NOT work in the Background Rack… (which would be good, because if I ever want to change ONE button… I need to change it seperately on EVERY song. :frowning:

Question: Does Cantabile support the HUI or MACKIE protocol?
Because this seems to be used for the MMC Controls.

No matter which knob i press (start, play, record…) I always got 3 Controller messages in Cantabile.
So I can only use ONE function for all buttons at the same time. (istead of using different functions on different knobs)

Any ideas what can be wrong?

Thanks!

M-Audio: I used a M-Audio Axiom 61 for a long time and I had some problems with the controllers. Now I use an Akai MPK261 and everything is good. I I’m not saying that M-Audio is bad, I report only about my experiences. Perhaps Brad knows, what to do. He is the master of Cantabile. I see now that you’re probably a German-speaking musician (Frank Röllen):grin:.

I looked into the Akai MPK261 manual and it seems that this one does not use the HUI or Mackie Control Protocol. Thats probably the reason why it works for you now.
And yes… iam from germany. :wink:

Hi @Roelli

It’s not clear to me here what’s happening with the events your keyboard is sending. Perhaps the best way to investigate this would be to go to Options -> Diagnostics and turn on Console Logger and Log MIDI-In Events. Then, press each button you want to use on your controller with a couple of seconds delay between each - the console window should log out the events that Cantabile is receiving and perhaps we can figure it out from there. Feel free to post screen shots here or email them to me.

As for not being able to select Transport target in the background rack… I have no idea why that would be. It should be available and I just tested here and it seems to work fine. Can you post a screen shot?

Currently Cantabile doesn’t support HUI, but it’s logged.

Brad

@Cosmo Thanks for posting your settings for the MPK261 – I just had an MPK249 arrive (the limited production red one!) and was wondering about this very thing.

Terry

I logged the Play and Stop Button:

Pressed Stop Button:
Controller: 15 = 14
Controller: 47 =67

Release Stop Button:
Controller: 15 = 14
Controller: 47 = 3

Pressed Play Button:
Controller: 15 = 14
Controller: 47 = 68

Release Play Button:
Controller: 15 = 14
Controller: 47 = 4

Ich habe mir die Transport- Buttons Record,Play,Stop,Forward,Rewind und Loop beim M-Audio.Keyboard nach mal angesehen und da gibt es nicht die Möglichkeit den Controller-Typ MMC einzustellen, es gibt nur den Typ Midi CC.
Beim Akai gibt hingegen gibt es die Möglichkeiten Midi CC, MMC, PTEX und Midi Realtime (was auch immer das alles ist).

Hi @Roelli

Wow that’s really interesting. I’ve not seen a controller doing this before - it looks like it’s using the lower bits of cc47 to identify the button and the high bit to indicate pressed/released.

Is this your Axiom keyboard? I’ll look up the manual and see if I can get a proper explanation.

Currently Cantabile won’t be able to map these but you can probably remap the buttons to another mode - again, I’ll check the manual and see if I can find anything

Brad

Is this your Axiom keyboard?

No. I do have the “M-AUDIO Keystation 61”.
http://www.thomann.de/de/m_audio_keystation_61_mkii.htm?ref=search_rslt_masterkeyboard+61_341832
Actually I bought two of them… the 88 and the 61 key version.
I wanted to buy the smallest keyboard possible, but with just a few controls for the important stuff.

I just talked to the M-AUDIO Support and they said that only two protocols are supported:
“MACKIE CONTROL” and “MACKIE HUI”. And there is no chance to remap these buttons in any way (within the m-audio masterkeyboard)

I could try to buy another masterkeyboard, but it seems that more and more keyboards are also using the mackie or hui protocol.
What’s the price if you would implement it into cantabile? That’s maybe cheaper then buying new masterkeyboards. :slight_smile:

Thank,
Roelli.

Hi @Roelli

OK I’ve been digging around and I think I’ve found a spec that explains this. Firstly there’s this section of a document describing the HUI spec:

and then this extract from the HUIZONES.txt:

Which lines up with what you’ve described.

CC 0Fh (15) = 0Eh (14) means select zone 14
CC 2Fh (47) = 44h (68) means port 4 switched on
CC 2Fh (47) = 04h (4)  means port 4 switched off

and zone 14 port 4 is the play button.

Let me have a think about this see if I can come up with a way to make it work easily.

The other thing you might like to try is switching to MACKIE CONTROL mode as described here in the Keystation manual:

If you’d like to do a similar MIDI dump when in this mode perhaps it can be more easily mapped.

Brad

1 Like

Hi @Roelli - I’ve knocked together a simple MIDI filter that can crack open these HUI style switch messages into something Cantabile can understand in it’s bindings.

See here: https://www.cantabilesoftware.com/blog/posts/85-hui-switch-decoder-midi-filter

Let me know how it goes.

This is stupendous! What a useful way to employ otherwise unused buttons on one’s controller!

Hi guys.

Iam trying to make a binding in the background rack so that I can switch between the next and previous song state with one of the buttons on my M-Audio Keystation 61. (one of the keys with the HUI protocol)

I can switch between the song states if I use the midi learn function and use a key on my keyboard (note on).
That works! But I can’t get the left/right keys working. :frowning:

I used the “HUI Switch Decoder” on the input in the option setting in cantabile. And I can also see that the button is working with midi learn… but somehow I get the message that i made an invalid binding!

Any ideas?

Thanks!
Roelli.

Hi @Roelli,

In the event column try switching from “Controller” to “Controller (No Edge Button)”.

“Controller” is intended for knobs and sliders and it doesn’t make sense to bind a slider to “load next song” - hence the invalid binding.

Selecting “Controller (No Edge Button)” tells Cantabile to interpret the events from the CC as button events - and buttons can be mapped to “load next song” (but not to a gain setting).

Brad

Thanks Brad.

That works fine, thanks!
Maybe you want to add this info to the manual? For dummies like me? :slightly_smiling:
I didn’t know what “no edge button” means. If it is called “use for push buttons” I might have clicked on it myselfs. :slight_smile:

Frank.

Hi @Roelli,

Yes, I should. In the meantime, here’s what “Button” vs “No Edge Button” means. Different MIDI controllers send different MIDI events when buttons are pressed.

Some send 127 when pressed and 0 when released.
Some send 127 when pressed and nothing when released.

Cantabile’s “Controller (Button)” is an edge detecting bindings. ie: it responds when the value crosses from <64 to >64 and works for the first case above. If there’s no zero sent when the button’s release it won’t retrigger.

Cantabile’s “Controller (No Edge Button)” fires on receipt of any non-zero value.

So normally, if you select Controller (No Edge Button) it will work with nearly any button.

Brad

1 Like