Multiple Knob Mappings

When I come to map a patch, I am torn between having a knob set per module or a ‘master’ knob set with the 12 most important parameters in the patch (or the collection of modules that I have loaded.)

I’d like to be able to do both, but once you map something in a knob set that has already been mapped, the original mapping disappears. Would it be possible to allow the mapping of the same parameter in different knob sets?

Hi,
It seems to me this is a “feature” (a bug?) of the VCVRack MetaModule, rather than the MetaModule hardware itself. I created a one module patch in VCVRack, created 2 knobsets, and tried to map the same knob in both knob sets. As you found, the second knob set mapping removes the mapping from the first knob set.
But, I then saved the patch to a yml file, then manually edited that file to add the knob mapping back into the first knobset - see .yml below. I was then able to load this patch onto the MetaModule hardware, and the same module knob was mapped and controllable in both knob sets.

So, hopefully this is an issue with just the VCVRack MetaModule hub module, and not on the actual device.

 PatchData:
  patch_name: Unnamed14
  description: Patch Description
  module_slugs:
    0: '4msCompany:HubMedium'
    1: 'AudibleInstruments:Warps'
  int_cables: []
  mapped_ins: []
  mapped_outs: []
  static_knobs:
    - module_id: 1
      param_id: 0
      value: 0.56747
    - module_id: 1
      param_id: 1
      value: 0.5
    - module_id: 1
      param_id: 2
      value: 0
    - module_id: 1
      param_id: 3
      value: 1
    - module_id: 1
      param_id: 4
      value: 1
  mapped_knobs:
    - name: 'one'
      set:
        - panel_knob_id: 0
          module_id: 1
          param_id: 0
          curve_type: 0
          min: 0
          max: 1
    - name: 'two'
      set:
        - panel_knob_id: 0
          module_id: 1
          param_id: 0
          curve_type: 0
          min: 0
          max: 1
    - name: ''
      set: []
    - name: ''
      set: []
    - name: ''
      set: []
    - name: ''
      set: []
    - name: ''
      set: []
    - name: ''
      set: []
  midi_maps:
    name: ''
    set: []
  midi_poly_num: 0
  vcvModuleStates:
    - module_id: 1
      data: |-
        {"shape":0}

1 Like

Good sleuthing. Thanks. Bugfix request, then, not a feature request :wink:

Hmm that appears to be a bug in the VCV MM Hub. It’s a regression, I think from a recent change I made to the knob sets. Should be a quick fix (it’s a holiday weekend here, so might take me a couple days).

It seems like it actually does work in VCV on the Hub to make multiple mappings to the same knob – as long as the hub knobs are different. That is, I can map Knob A in knob set 1 to my VCO Freq knob, and also map Knob B in knob set 2 to the VCO Freq knob… but I can’t map Knob A in both knob sets to VCO Freq. So until I post the fix, that might be work-around.

Multiple mappings to the same knob is definitely supported when mapping on hardware, for the very same use case you describe (a main knob set, plus additional per-module knob sets).

3 Likes

Ok, I think this is fixed. Interestingly, I thought for sure it was a bug in my code, but it turns out it was due to an undocumented behavior in the Rack SDK API that deletes paramHandles (aka “remote-controlled knobs”) at surprising times.

In any case, I just built v2.0.4, you can download here:

Thanks for the report!

1 Like

hell yes I’m glad this was a bug not a feature. going to go edit my patch to have the same main playable knobs on all the pages so no matter what page I’m on knobs A-C will always adjust grids or whatever the hell.

Thanks Dan. All working here now.

2 Likes