Korg NanoKontrol2 reset to default cc, when opening cubase13

Hi
(Win10-cubase13-legionpro5 laptop)
i have an issue with Nanokontrol2, i program its cc values with the Korg kontrol editor, transmit it to the device, and its been saved, and work as programed
but as soon as i open cubase and record fader movements , instead of CC-11 on fader 1 which i programed to the device, it sends CC-0, meaning the device is resetting to default values as soon as i open cubase !
i tried to install korg’s driver to check, but it wont even recognize it in nano’s midi port nor cubase, so i uninstalled korg’s driver to use windows driver again.
frustrating ! anyone experienced this resetting thing when opening a DAW ?
i use Nano in cubase with the new midi remote
Thanks
{Edit} now i noticed that Nano’s values resets to Default when using it only with the new “Midi Remote”
when i disable Nano’s script in midi remote and using it with the old “Generic Remote”(after programed Nano again) it wont loose the values that i programed !!
so its something with the new Midi Remote that resets it ! :expressionless:
Any idea why its like that with Midi Remote and how to fix it ? or is it a bug ?

Hi,

Yes, it works like this.

The script sends the SysEx message to make sure, the nanoKontrol settings matches to the script (is sending the expected MIDI Messages).

1 Like

Thanks.
Is there any way to disable sending SysEx message or change cc values from midi remote, or only disabling the script and build my own from the ground new nano model in midi remote,is the way

Hi, you’ve just answered your own question. Just disable the script, and begin building one using the midi remote assistant.

2 Likes

OK thanks, i like answering my own questions :wink:
thought maybe there is a normal way or Hack to use the ready script and modify it

Sure. After disabling the original script, you can copy the original folder of the script from the public folder to the local one and work with it. The public folder is always overwritten upon cubase start, while the local is not. This is the place for user scripts.

if i got it right, the scripts made by companies are located in a folder named public, and i can copy them to folder named local , and from there i can modify them, and it wont reset Nano’s settings anymore to default ?
(after disabling the original script in Midi Remote)

It will not reset, if you remove the sysex that does this, yes.

so somehow (don’t know scripting) SysEx needed to be removed from the copied script ?
ill try to dig it once have the time , thanks for the help :ok_hand:

I managed to do it, thanks for the guidance guys. :pray: :love_you_gesture:

1 Like

Hi, could you please tell me how you resolved the issue? I have the same issue with nanoKONTROL 2 going back to the default setting when using inside Cubase.

I have managed to rectify this issue. Here is the step-by-step process of resolving this issue.

  1. Open Cubase and Disable the Default nanoKONTROL 2 Script:
  • Navigate to the MIDI Remote Assistant.
  • Disable the default ‘nanoKONTROL2’ script.
  1. Locate MIDI Remote Scripts Folder:
  • Navigate to the folder where MIDI remote scripts are saved: C:\Users\#####\Documents\Steinberg\Cubase\MIDI Remote\Driver Scripts
  1. Copy Script to Local Folder:
  • As scripts in the ‘public’ folder cannot be modified, copy the script you want to modify to the ‘Local’ folder.
  • Copy the company folder straight to the local folder.
    C:\Users\#####\Documents\Steinberg\Cubase\MIDI Remote\Driver Scripts\Local
  • Delete the controller you don’t want.
  1. Open Script in Notepad++ / Notepad:
  • Open Notepad++.
  • Navigate to the script file KORG_nanoKONTROL2.js.
  1. Edit the Script:
  • Find the function switchDeviceToCcModeWithExternalLed(context).
  • Comment out the entire variable initData
//	var initData = [
//		[0xF0, 0x7E, 0x00, 0x06, 0x02, 0x42, 0x13, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01, 0x00, 0xF7],
//		[0xF0, 0x42, 0x40, 0x00, 0x01, 0x13, 0x00, 0x5F, 0x42, 0x00, 0xF7],
//		[0xF0, 0x7E, 0x00, 0x06, 0x02, 0x42, 0x13, 0x01, 0x00, 0x00, 0x03, 0x00, 0x01, 0x00, 0xF7],

//		[0xF0, 0x42, 0x40, 0x00, 0x01, 0x13, 0x00, 0x7F, 0x7F, 0x02, 0x03, 0x05, 0x40, 0x00, 0x00, 0x00,
//			0x01, 0x10, 0x01, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x10, 0x00, 0x00, 0x7F, 0x00,
//			0x01, 0x00, 0x20, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00, 0x30, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00,
//			0x40, 0x00, 0x7F, 0x00, 0x10, 0x00, 0x01, 0x00, 0x01, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x11,
//			0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x21, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x31, 0x00, 0x00, 0x7F,
//			0x00, 0x01, 0x00, 0x41, 0x00, 0x00, 0x7F, 0x00, 0x10, 0x01, 0x00, 0x02, 0x00, 0x00, 0x7F, 0x00,
//			0x01, 0x00, 0x12, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00, 0x22, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00,
//			0x32, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x42, 0x00, 0x7F, 0x00, 0x10, 0x01, 0x00, 0x00, 0x03,
//			0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x13, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x23, 0x00, 0x00, 0x7F,
//			0x00, 0x01, 0x00, 0x33, 0x00, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x43, 0x00, 0x7F, 0x00, 0x00, 0x10,
//			0x01, 0x00, 0x04, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00, 0x14, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00,
//			0x24, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x34, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x44, 0x00,
//			0x7F, 0x00, 0x10, 0x01, 0x00, 0x00, 0x05, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x15, 0x00, 0x00, 0x7F,
//			0x00, 0x01, 0x00, 0x25, 0x00, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x35, 0x00, 0x7F, 0x00, 0x00, 0x01,
//			0x00, 0x45, 0x00, 0x7F, 0x00, 0x00, 0x10, 0x01, 0x00, 0x06, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00,
//			0x16, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x26, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x36, 0x00,
//			0x7F, 0x00, 0x01, 0x00, 0x46, 0x00, 0x00, 0x7F, 0x00, 0x10, 0x01, 0x00, 0x07, 0x00, 0x00, 0x7F,
//			0x00, 0x01, 0x00, 0x17, 0x00, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x27, 0x00, 0x7F, 0x00, 0x00, 0x01,
//			0x00, 0x37, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00, 0x47, 0x00, 0x7F, 0x00, 0x10, 0x00, 0x01, 0x00,
//			0x3A, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x3B, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x2E, 0x00,
//			0x7F, 0x00, 0x01, 0x00, 0x3C, 0x00, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x3D, 0x00, 0x00, 0x7F, 0x00,
//			0x01, 0x00, 0x3E, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00, 0x2B, 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00,
//			0x2C, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x2A, 0x00, 0x7F, 0x00, 0x01, 0x00, 0x00, 0x29, 0x00,
//			0x7F, 0x00, 0x01, 0x00, 0x2D, 0x00, 0x00, 0x7F, 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x00, 0x7F, 0x00,
//			0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//			0x00, 0xF7]
//	]
  1. Stop the initialization of the variable ‘initData’ by adding /* and */ before and after the ‘for’ loop.
/*
	for (var i = 0; i < initData.length; ++i) {
		midiOutput.sendMidi(context, initData[i]);
	}
*/	
}
  • This disables the initialization of the ‘initData’ variable which in turn stops the script from resetting the CC values to factory default.
  1. Change CC Assignments:
  • The 8 sliders in Korg nanoKontrol 2 script are assigned from CC0 to CC7 by default.
  • If you want to change the CC assignments of the sliders to say CC1, 11, 2, 3, 4, 5, 6, 7, locate the code:
faderStrip.fader.mSurfaceValue.mMidiBinding.setInputPort(midiInput).bindToControlChange(0, 0 + channelIndex)
  • Change it to:
faderStrip.fader.mSurfaceValue.mMidiBinding.setInputPort(midiInput).bindToControlChange(0, [1, 11, 2, 3, 4, 5, 6, 7][channelIndex])

These steps should guide you through modifying the script for the Korg nanoKontrol 2 in Cubase.