Midi Mappings not Preserved in Saved Selection

I really like the “Save Selection” and “Import Selection” feature. I have the 8 channel MixMaster along with Audio Output as well as Midi Mapper modules saved as a selection.

I am using Akai Midimix to control the mixer faders as well as pan knobs, and made all the mappings… works great.

But unfortunately, the mappings aren’t saved when importing the selection into a new project. Any reason why the midi mappings shouldn’t be saved in a selection which includes a midi mapping module along with the modules it maps to? Seems like it should just load it. I use multiple midi map modules for my single MidiMix device… separating Mixer from Voice etc.

2 Likes

I get the same result.

please report a possible bug here: VCV - Support

Edit: I just sent them an email.

Are you running VCV on windows? This might have to do with usb device ids changing.

good tip - but not the case here I think:

This is import selection:

and the preset, copied to notepad.

{
  "plugin": "Core",
  "model": "MIDI-Map",
  "version": "2.0.6",
  "params": [],
  "data": {
    "maps": [
      {
        "cc": 32,
        "moduleId": 1962432437279127,
        "paramId": 1
      },
      {
        "cc": 33,
        "moduleId": 1962432437279127,
        "paramId": 2
      },
      {
        "cc": 34,
        "moduleId": 1962432437279127,
        "paramId": 3
      },
      {
        "cc": 35,
        "moduleId": 1962432437279127,
        "paramId": 4
      },
      {
        "cc": -1,
        "moduleId": -1,
        "paramId": 0
      }
    ],
    "smooth": true,
    "midi": {
      "driver": 4,
      "deviceName": "16n 6",
      "channel": -1
    }
  }
}

If I load the patch I saved the selection from, the mappings work

and the preset looks like:

{
  "plugin": "Core",
  "model": "MIDI-Map",
  "version": "2.0.6",
  "params": [],
  "data": {
    "maps": [
      {
        "cc": 32,
        "moduleId": 1962432437279127,
        "paramId": 1
      },
      {
        "cc": 33,
        "moduleId": 1962432437279127,
        "paramId": 2
      },
      {
        "cc": 34,
        "moduleId": 1962432437279127,
        "paramId": 3
      },
      {
        "cc": 35,
        "moduleId": 1962432437279127,
        "paramId": 4
      },
      {
        "cc": -1,
        "moduleId": -1,
        "paramId": 0
      }
    ],
    "smooth": true,
    "midi": {
      "driver": 4,
      "deviceName": "16n 6",
      "channel": -1
    }
  }
}

exactly the same “copy preset” - but “import selection” doesn’t make the mappings.

n16-vca.vcv (691 Bytes)

16n-vca-mix.vcvs (1.6 KB)

Okay, I’ll try and figure this out with presets in addition to importing the selection. This is all new to me so a bit confusing.

I am runnign Mac OS Monterey on Mac Mini M1. And the latest VCV rack.

Okay instead of saving it in a selection, I just deleted the midi mapper module and added a new one then I loaded a preset and it worked. So I guess that is what I’ll do from now on… just add new mapping module for each project and load the appropriate preset. Would be nice if it was saved into the Selection though I think. The list of CC’s are there in the mapper module when importing the selection, just no link to the mixmaster module, like Jens.Peters.Nielson showed in first screenshot.

I agree - It should be saved with the selection.

VCV support’s Paul Gatt has replied, and confirmed that “This is a known bug and we are hoping to fix it soon.”

Hrmm… it doesn’t even work now loading the preset… just lists the CC’s but no mapping to the MixMaster module. Looks like I just have to manually map each slider or knob for every new project I do.

My STRIP module supports this for a long time. Unfortunately it is not available in the VCV Library for Rack v2 yet.

5 Likes

Seeeeeeee, moderator patrol, I was a good community member, searched the forms first, change the sort to list by recent posts, before posting something new on a known reported/discussed issue.

Here I am! 5 months later . . . There is still a problem.

We can all agree that mapping midi controllers is a laborious task that can be fruitful after it is all tested and complete. Saving the work as “Save Selection…” seems prudent since, who in the heck wants to do that again

Sorry @JenniferG, its still not fixed

I spent a few hours today, and at my age minutes are precious, after all that work, it fails to recall the mappings using the integrated “Save Selection …” and “Import Selection …” in-app function. I am running Pro v2.06, Windows 10. This was in standalone mode. I am glad I saved the ‘testing ground patch’ with all this information so I can reload all the work

At first, I thought it might be “MIDI-CAT” from Ben’s @stoermelder plugins which are still not in the library and I manually installed. I thought, ya may wanna use VCV’s MIDI-Map just in case … surely it won’t be busted

@JenniferG or anyone else having this issue, just use Ben’s Strip module. Easy peasy - I can confirm, it does work. Also, you can bring over “strips” saved in v1.1.6 into 2.x as well . . . these can be used again, as long as those plugins in the saved strip are available in v2.x

1 Like

Did anything change since the last post? It would be great to be able to save mappings as well…

2 Likes

Some sort, yes:
I created a new module S++ (aka STRIP++) which adds options to paste or import Rack selections while preserving parameter mappings and GLUE’s labels. Just add the module to Rack and use hotkey Shift+Ctrl+V for pasting selections or Shift+Ctrl+B for importing selections.

Available in the latest preview build.
Release Development build · stoermelder/vcvrack-packone (github.com)

I even heard it supports some upcoming new modules…

11 Likes

Oh my - this is a dream come true! Thank you!

It will definitely be a help for upcoming new modules…

I tested S++, and it preserved mappings beautifully. I also tested with the “new module” (I have been helping the developers test), and it worked for that as well.

However, there is one problem - It always attempts to place the selection at the original coordinates, and if there are existing modules in those locations, then the imported modules get intermingled with the already existing modules - a real chaotic mess.

Can you update the code to find the closest free area that will fit the entire selection, without any comingling?

As a bonus, it would be great if there was an option to place the imported (or pasted) selection next to the S++ module, so you could control the placement. (or the closest free area near the S++)

Well, it is the same behavior as Rack has build in. But I absolutly agree, the placement should be more adaptive to the current screen area. I will see what I can do.

You legend :wink:

1 Like

In my testing on Win 10, the native Rack import and paste both properly find the closest free space that fits the selection.

Interesting. You are using Rack 2.1.2? I’m on Windows, too, and selections are always placed at the original position…

Yes, I am using Rack 2.1.2 Pro (standalone - not VST)

The selection is pasted/imported in the original location if there is space. If it overlaps any existing modules, then Rack moves left or right, finding the closest space that does fit without overlap.

I have never seen it move up or down.