Midi Remote: Trackname and Color?

Is there any way to transmit the Trackname and the Trackcolor via some kind of MIDI message?
With or without using the Midi Remote interface?

I tried Mackie Control and the other remote control protocols. Bu from what I see is that Mackie Control limits the name to 7 characters and I do not see any color information. Other seem to have even less characters.

Hi,

Yes, it is possible via MIDI Remote:

// Track Name
selectedTrackChannel.mOnTitleChange = function (activeDevice, activeMapping, objectTitle) {
	sendSysEx(activeDevice, objectTitle)
}
	
// Track Color
selectedTrackChannel.mOnColorChange = function (activeDevice, activeMapping, r, g, b, a, isActive) {
	var rgbaString = r.toString() + g.toString() + b.toString() + a.toString()
	sendSysEx(activeDevice, rgbaString)
}

I send it via SysEx message to the hardware device. Of course, you can choose other way.

Hi,

Can somebody explain to me how to use this with multiple channels when using mixer banks?

I’m trying to colorise four channels on my control surface that control the aux sends of my mixer.
I can get the rgb codes of all four channels out of the script, but find it hard to get specificly the colour of channel 1, 2, 3 and 4 of my mixer bank.

Here’s what I’ve been trying:

var channelBankItem = []

for (var i = 0; i < 4; ++i) {
    channelBankItem[i] = hostMixerBankZone.makeMixerBankChannel()

    MAux.makeValueBinding(knobs[i].mSurfaceValue, channelBankItem[i].mSends.getByIndex(0).mLevel)
    MAux.makeValueBinding(knobs[i+4].mSurfaceValue, channelBankItem[i].mSends.getByIndex(1).mLevel)
    MAux.makeValueBinding(knobs[i+8].mSurfaceValue, channelBankItem[i].mSends.getByIndex(2).mLevel)
    MAux.makeValueBinding(knobs[i+12].mSurfaceValue, channelBankItem[i].mValue.mVolume)

   channelBankItem[i].mOnColorChange=(function(ActiveDevice,ActiveMapping,r,g,b,a,arg){
      // this is where I colorise the LED rings on my controller for channel i
   }

}

Looks like mOnColorChange returns the colours of all channels every time instead of just channel (i). Any ideas?

Hi, you need a bind here:

channelBankItem[i].mOnColorChange=(function(ActiveDevice,ActiveMapping,r,g,b,a,arg){
      
     // this is where I colorise the LED rings on my controller for channel i

     console.log("rgb changed for track "+this.i)

}.bind({i})
2 Likes

Thank you! This does work as expected. Appreciate your quick response!! :pray:

I just saw this… Where do I add it in the MCU pro .js file? I’m pretty sure I’m doing this all wrong. Any help? I just want colors for my V1-m.

Hello all,
I am new to scripting and want to send the LED color to my MIDI remote but am completely stuck. Could someone please upload their whole script to try to replicate and debug on my side?