Turning a NanoKontrol2 into an uber midi controller

Heyo, I’ve got about 10 hours in VCV rack and still figuring stuff out so maybe there’s a module that already does this, but as a bit of a challenge I tried to make a midi CC bank, to allow me to control a 16 channel mixer with the 8 faders of a nanoKontrol2

I knew it had to be possible using some logic gates but took a while to actually figure it out, so I wanted to share with you all as it’s entirely possible to do it using just a few of the amazing modules available in VCV rack!

Hardware required: Any midi controller that spits out CC and has at least 1 button.

Modules required: BogAudio - Bool, S&H, SWITCH 1:8 ML Modules - Quantum Fundamentals - Midi-CC, Poly Merge/Split

Steps to reproduce on a NanoKontrol:

  1. Decide what you want to control, in this case I wanted to control the volume via CV on a 16 channel mixer (mscHack 16).
  2. Setup your MIDI-CC with the CC mappings for each of the 8 faders (CC 0-7)
  3. Wire the 8 channels into a Poly Merge.
  4. Drop down a BogAudio 1:8 and wire the merged poly into the “In”. Set the steps to “2”, as we want 2 banks of 8 channels to map to the 16 channels of the mixer.
  5. Pick a button on the nanoKontrol which we will use to switch between the banks of CV (I chose CC 61 which is the left arrow). Now wire this into the clock of the 1:8 switch.
  6. Drop a ML-Quantum and activate all the “notes”. ML quantum will spit out a trigger whenever a note change is detected, we can use this to trigger the sample and hold later.
  7. Wire the output of Poly Merge to In of ML Quantum.
  8. Drop down 2 BogAudio Bools and wire the Quantum “Trigger” out to the top input of each Bools.
  9. Now wire the Output1 of the BogAudio Switch 1:8 to the second input of one of the BogAudio Bools, and Output2 to the second input of the other Bools.
  10. Drop down 2 BogAudio Sample &hold (I like to place one beside each bool instead of using a single Sample and hold just to make it easier to follow)
  11. Now wire the “AND” of Bool1 to the “GATE” of S&H1, then wire the “AND” of Bool2 to the “GATE” of S&H2.
  12. Next wire the Output1 of the BogAudio Switch to the “IN” of S&H1, and wire the Output2 of the Switch to the “IN” of S&H2.
  13. Now drop down a Poly split for each Sample and hold module (ie 2 poly split)
  14. Wire the “OUT” of S&H1 to input of SPLIT1, and “OUT” of S&H2 to SPLIT2 respectively.
  15. Wire the first 8 outputs of SPLIT1 to the first 8 channels of the mixer, wire the first 8 outputs SPLIT2 to the second 8 channels of the mixer.

And you’re done!

Try moving the faders on the controller to see which ones light up, then press the button to swap to the next “bank” and move the faders. Your previous setting should be “saved” and the next fader setting should kick in. In theory this could be mapped to infinite “banks” of CC. You could control effectively an entire rig with just 8 faders and a button!

Right now the fader will simply “snap” to whatever it’s currently sitting at whenever you swap banks. I’m going to work on a smooth transition using a low pass filter to slow down the rate of change, it should also be possible to implement a “latch”.

Here’s a screenshot of what it should look like

If there’s interest in this kind of thing I might just create a midi module using the plugin API as it would probably be a lot easier to follow! :stuck_out_tongue:

Hope this helps someone Cheers!

8 Likes

I think it has not been ported to v1 but maybe something like this?

4 Likes

Nice! Thanks. Dont feel like I entirely wasted my time because I’m still learning but having a single module would be so much easier!

Hi, JPM! I am quite new to VCV rack and my background is just the one of a musician, no programming, midi knowledge or modular synth technicques (I’m also new to those…) I have a Nanokontrol2 and have been struggling to make it work with VCV, to no avail whatsoever. I followed thoroughly your instructions an copied the patch of the pic exactly… but nothing happens! I am using version 1.6.6 of VCV Rack… I wonder if the patch you described applies to the said version. If not… do you have another option to controlling VCV with Nanokontrol2? Any input will be heartly appreciated! Thank you and stay cool!

Make sure the midi cc module has nanokontrol selected! I’m not sure tbh! :frowning: sorry

I did, but still no cigar! thank you anyway!!

This may help. It did for me.
1 Like

i also try to use korg nanokontroller2 with standalone vcv rack2 on windows 10. problem is the midi cc module doesn’t ‘see’ the controller. i’ve checked if the controller is working and recognized at all with the korg usb-midi device (yes), korg editor (yes) with midi ox [http://www.midiox.com/] (yes) with flstudio (yes). but the vcv midi to cv module doesn’t list the nanokontroller. but surprise: the cv to midi controller does list the nanokontroller.

what could be the problem? and how to fix it?

arjen

Here’s a snip of something I’m currently working on, and I’m using a NanoKontrol2 with Stoermelder MIDI-CAT – no problems:

From the snip it’s obvious I’m on Windows, so if you’re on another platform, you may have some other issue (e.g. no ALSA on Linux).

Often hard to troubleshoot for people who don’t mention what platform they’re on, especially for anything interfacing with the system or external devices. It’s also important to say whether you’re using Rack as a plugin (inside DAW) or standalone. For this kind of interfacing, that’s particularly important.

1 Like

i’ve found both the problem and the solution. midi modules manual says:

"Each MIDI input module (described below) supports the following drivers. *

  • [Windows MIDI] on Windows"

i had the korg usb midi driver installed and working. that seems ok for other applications, but not for the vcv rack midi modules. after stopping the korg usb midi driver the nanokontroller showed up as a selectable device in the vcv midi modules.

It’s rare these days that you need a installable midi driver for USB MIDI – the class driver does the job for most devices. Assuming you are not on a very old hardware+os :slight_smile: