Icon Platform M+ MIDI Remote - should work with any MCU based controller

I’m really overjoyed with this :slight_smile:

One suggestion:
Right now we have two pages, one for mixer and one for track controls (and the the subpages)- how about a page with midi CC’s? That would be handy for programming string libraries etc. I don’t know if it is possible though, I am not yet into scripting and how Midi Remote works that deeply.

I would like to use the master fader only as an AI knob, since I rarely touch the master fader and is most likely to do it as an accident but perhaps I will be able to modify the script somehow if I study a bit :slight_smile:

Edit: Could it be possible to show selected track on the controller?

There are some MIDI Remote limitations to this which I’m currently running into.
First thing to note is you can map the Track Quick Controls to MIDI CC - then use them in automation. This works well and you can use several functions in Cubase to move the recorded result from Automation lanes to MIDI events, to Note Expression (and back again - though there is some loss in fidelity). If you use Track Quick Controls then your faders will move with the event changes. If you change to MIDI CC then that will no longer happen.

The other option is to send MIDI CC from the controller directly (no automation lanes) we need to be able to unbind the faders from MIDI Remote and have it All MIDI In. I’m not sure if MIDI remote can cope with dynamic binding and unbinding and, at the moment, the way the jog wheel handling works in the script MIDI Remote is NOT absorbing the MIDI when the jog wheel is bound (even if explicitly set to do so it still send the messages). This means if you enable All MIDI In for the controller it will start sending Jog Wheel CC messages which will get recorded on the track.

I’m hoping to find a way to deal with this as I’d very much like to have say 4 of the Faders on MIDI CC and 4 on Automation (or some similar combo). For the moment though I’ve been using the Automation Lanes as CC and there are some benefits to the approach (and some losses, I like to use Note Expression for example).

The code that switches these is fairly straightforward so it wouldn’t be hard to disable the ones you don’t want (I suspect just commenting them out would do the trick).

Not sure what you are asking for here? Do you mean on a display attached the Platform M+?
I don’t have one but can rig up a virtual one and potentially add some code to do this. It certainly seems possible. I just never bothered since I don’t have a display.

I imagined the Sel button on the iCon to light up on the selected track in Mixer mode. The Sel button is now configured to the Monitor button on the mixer, but I guess Sel is short for Select track?

I imagined problems like that! :slight_smile: Good job anyway :slight_smile:

Ahh yes, that is simple enough to change in the code. I experimented with using Sel as Select (having them match as you propose) and also simply having Touching a Fader perform a Select. I elected for the latter in my case and used the Sel button for something else.

It’s a simple change in the code - find the binding for the monitor button and change it to the select.
In the icon_platformplus.js File change line 189 so that the hostMixerBankChannel.mValue.mMonitorEnable reads as hostMixerBankChannel.mValue.mSelected

1 Like

Thank you, it works! It is great.
I have one question more since I am no programmer - I want to be able to turn off the AI button. Can I use the Mixer button to do this if I modify the script? I succeeded in switching only between AI and master fader, but I want to not be able to change the master fader.

I’ve been away for work so sorry for the slow reply.

You should be able to do this. Just need to set the master fader to the AI function only without the subpage binding. I’ll see if I can find some time to knock up the code for you in the next week, unless of course you figure it out first!

Thanks! I figured it out so you don’t need to, but thanks! BTW I was a bit confused about Track Quick Controls, Vst Quick Controls and then Focus Quick Controls introduced with Cubase 12, but now I think I habe it figured out, perhaps. Now I have only a few Quick Control presets, one with 8 sends, one with 8 different CC’s and some for specific Kontakt libraries. For VSTi’s and audio plugins I use Focus Quick Controls (because it is the only way to automatically recall quick controls), and now I also purchased the screen for the Platform M+ to be even more focused on the faders :blush:
It is wonderful
EDIT: Now since I bought the screen - is it possible to have the focus QC labels on the screen?

Would need to be implemented, but might be possible. Pretty sure I saw some midi remote code with sysex to display track info during my learning curve. I didn’t pay much attention though since I don’t have a screen.

My friend @saxmand has made a custom script for himself, I think it is built around some of the same code. He succeeded in sending sysex to the controller. I will send the script to you on a PM :slight_smile:


… I have been struggling with my platform for 6 months … and here I am!
I’m not proficient in these things so I appreciate it all the more.
Tell me how to keep up to date with your ideas?
Thank you.

…continuing problems with Platform M+.
when trying to switch to MIDI /user/ mode, the following message appears
“could not open device”
and if you manage to switch, it automatically switches back to AUDIO mode.
Please advise.

I have a different question: Is it possible to have track visibility reflected on the iCon?

When using the standard mixer control page, the faders are not syncronized with my track visibility in either mixconsole or in the project window, and it does not show FX channels. I guess this is how it is meant to be (perhaps within the protocol), or can it be changed with a setting?

If I have 8 tracks for instance, I can control the volume on the faders. However, if I hide track 2, 4, 6 the faders will keep their assignment, all fader to track 1-8 in stead of only showing track 1,3,5,7,8, which I find a bit confusing for my use.

I would like to be able to hide all tracks except for instance 8 different tracks from accros the session and have the MixConsole visibility reflected on the iCon - is this possible?

1 Like


The MIDI Remote mirrors the MixConsole 1. You can sync the Project and MixConsole visibility.

My Platform doesen’t sync with my Mixconsole 1 visibility, and I don’t know why. Does yours?

1 Like

Hi! Can I have that script as well? I’m attempting to figure out how to pull midi remote Focus QC labels out to TouchOSC as a text string for my control surface project and that would help enormously

Hi Guys, first of all - thanks a lot for your work. The script is very good.

I also have the problem, that the iCon does not Sync with Mix-Console 1 visibility. That would be important for me.

Another very cool thing would be to have a X+ and M+ cascaded in Cubase - is that possible?

Best regards

I haven’t checked the mix console visibility issue myself. Will have to add that to the todo list - maybe the script needs to update or something to pick up the change.

Regarding the M+ X+ cascade - not sure. Does the X+ come up as a different midi device in the midi remote or is it tied to the M+ so comes up with it?
The script only does 8 mixer channels so if it all looks like one device then it may be a case of modifying that limit.

1 Like

It comes up as diffrerent midi-device. I tried it myself in the meantime and saw, that only 8 channels are available to assign functions from… I guess I’ll have to stick with the classic MCU-Setup for now… :frowning:

PS: Thanks for making this script anyways!

Hmm, I wonder if the second midi device can be used to get the next 8 mixer channels. You could use the same script, mod it to point at the X+ and then see if there is an offset or a way to skip the first 8….I don’t recall seeing an option for this in the API docs but then i wasn’t really looking for one.


For MCU protocol with extensions, you need to set up a multiport script.

If tou try with twice the same script, m+ and x+ will bank separately. (2 independent banks of 8 channels rather than one bank of 16 channels)

BUT there is an issue with multi-port devices where all incoming MIDI tied to the same channel and midi message but on different ports would trigger together. For example,Moving the first fader on m+ would also control the first fader on x+.

I made a post about that a few month ago, but if seems i’m the only person using multi-ports devices.