Midi Remote doesn't recognise MIDI Program Change Messages | Novation LaunchPad

Hello.

I have Novation LaunchPad Mini MK3 connected to my Windows 11 PC via USB.
I have configured the LaunchPad so that it sends “Program Change” messages (ex. Program Number 42, Midi Channel 3).

Now I open “Midi Remote” tab, press “Add midi controller surface”, fill in the necessary information, press “right arrow” button and it says “Move a Control on your Midi Controller”, but nothing happens when I do so! It is supposed to add a row of buttons though.

In the legacy “Generic Remote” Cubase recognizes it without problems.
What should I do?

Midi remote doesn’t support program change messages.

So your options are either use generic remote or change the launchpad to send some other cc messages.

I see. Thank you for the answer.
That would be nice if you could add Program Change support,
because to utilize the new feature, I have now to remap 3 pages of 64 buttons previously thoroughly configured for my needs.

1 Like

Not only that, but Novation sends PCs when certain events happen on their devices whether you have programmed them to do so, or not. Cubase does NOT like this. You would only run into this if Scripting, but it’s something to be aware of.

@andreyshinami. I’m not sure if you are aware, but you can use any mapping at all for your LPM and they will map just fine in the MIDI Remote. If you need 3 unique ones PM me. I have hundreds of mappings. Now you just need different mappings for each user page.

Also, you know you can set up the GUI to show you all 3 pages at once, which is what you would want to do to use all 3 for different unique commands.

…and furthermore the specs say that you can use Program Changes:
" Message/Command

Shows the MIDI message type that is assigned to the control, for example, control change, program change, etc."
page 864 of the manual…

Program change is not integrated into MIDI Remote. We wanted it to stay available for normal Instrument handling (browsing presets etc).

This is a BAD idea. It is up to the user to decide whether to use PC commands or not. Most of the time a dedicated port can be used just for controls, and this just gives more possibilities. In fact, you could even allow note velocities and controller values to command on/off buttons. The more means we have the better. And PLEASE add returns to the Remote MIDI so that we can send back texts or light commands back to the control surface (I know… different topic, but while I’m here…)
:slight_smile:

Easily done using the Script API!

Are there examples of sending text/midi messages to a control surface, particularly names of parameters assigned to control surface bindings?

Hi @owenc, sending texts or LED-colors is 100% proprietary. So every device is very different regarding the MIDI messages.
On the API side we provide callbacks like:

knob.mSurfaceValue.mOnTitleChange or
knob.mSurfaceValue.mOnColorChange

But when those are being called, there’s no standard what you have to send to the hardware.

1 Like

Thank you for the clarification, @Jochen_Trappe.

I should clarify that I’m working on a MCU style display with Arduino. When I finally got the basics of the display working with Cubase’s Mackie Control, I realized it might be worth trying to get the text (parameter names) via MIDI Remote API instead to get more than 7 characters per parameter.

So, assuming I can take care of the MIDI message on the arduino end, are there any callbacks that would return parameter names that a control is bound to?

Would knob.mSurfaceValue.mOnTitleChange do it?
Or maybe knob.mSurfaceValue.mOnDisplayValueChange?

From here, I’ll have to figure out how to parse the string to hex. I see some examples online I can try for this.

Then I would need to send this hex message to the Arduino.

Are there examples of sending a midi message sequence to the controller? Sysex would be best but could also be a sequence of note-on’s or even midi cc values if sysex is not implemented.

Is there anything I’m missing in this process?

that’s the one

1 Like

Thanks, @Jochen_Trappe

1 Like