I’m using a Novation Launch Control XL as a MIDI controller in Cubase, and I want to control 42 parameters of an instrument loaded on the selected track. Manually, I can configure the Remote Control parameter count to 42 via the Cubase interface, but every time I reload my MIDI Remote script, the parameter count resets to the default 8.
I’ve tried using the API to set the parameter count dynamically, but it doesn’t seem to persist.
Question:
Is there a way to persistently set the Remote Control parameter count to 42 via the API or another method?
If this is not possible via the API, is there an alternative approach to keep this configuration across sessions without manually reconfiguring it every time?
Using the mapping assistant, it should hold the 42 param count. If it doesn’t at your side, there perhaps is a conflict somehow not letting the remote to be properly saved OR there’s a bug in the MR up to 14.10. Mind posting the json file under [your documents folder]Steinberg\Cubase\MIDI Remote\User Settings which has a name pretty similar to the name of the file of your MIDI Remote? I could perhaps check if the intrument parameters bankZone elements are there.
Talking about scripting instead of using the assistant?
I will write in a bit arbitrary form, since I don’t have your script in front of me.
So, say we already have these 42 knobs properly defined. I’ll suppose they belong to an array, say knob.
Now, let’s build up the bankZone for the Quick Controls of the Instrument Slot of the Selected Track
var instrumentSlot=yourPage.mHostAccess.mTrackSelection.mMixerChannel.mInstrumentPluginSlot
var numOfParametersPerZone=42
var instrumentQCs=[]
for(var i=0;i<numOfParametersPerZone;i++){
var instrumentQC=instrumentSlot.mParameterBankZone.makeParameterValue()
//we can push here to the array if we need to use them to another location
instrumentQCs.push(instrumentQC)
yourPage.makeValueBinding(knob[i].mSurfaceValue,instrumentQC)
}
Thank you very much for your example. That’s very kind of you. Do you have any .js configuration files for your Launch Control XL? I’d like to see your way of coding to check if I’m on the wrong track. I’m using ChatGPT to help me, but it’s not very useful for this exercise…
I’m basing my work on Oqion’s code and trying to customize it with my own ideas.
I removed all their pages and started creating my own.
For example, on the Page_Synth_01, I want to set up the 42 parameters for configuring the instrument on the selected track. I would like to do it directly from the JavaScript code rather than using the assistant. Launch_control_XL.zip (1017 Bytes)
I’ve just had a quick look.
So, what is your plan? I mean, I see 3 rows of 8 knobs each and 8 faders. You mentioned 42 parameters. You want these parameters to be controlled by these knobs and faders? And then, there are another 2 parameters left. Are they supposed to be controlled by buttons perhaps?
42 parameters because that’s the number of controls I’d like to manipulate through the .js code instead of the assistant.
Why use JavaScript instead of manual configuration? Simply because this code allows me to manage the LED colors of the encoders by page, which isn’t possible with the assistant.
My current plan is to set up this parameter for 42 (or more or less) controls to understand how to make it work.
Afterward, I’d like to group the encoders by row so I can change their colors via an array instead of setting each knob individually with setKnob.
This is entirely a project I’m pursuing for fun and to develop my skills.
Mind a suggestion? If you’re new, then perhaps it would be better to start from scratch instead of using another user’s code. This is because it will ultimately make you feel much more comfortable both with the API and js. And since it’s for fun it wouldn’t really matter if it took some time more