Idea of one module which can disable a group of modules?

Hello, would it not be interesting (and possible) to have a module who can disable a all group of modules (to save cpu in big patch) and to use this groups one after the other in the same patch (with the same base) to work with different scenes? I feel the idea interesting but I am not a programmer…
Have a nice summer

1 Like

Have a look here.

Hi Omri, yes I already saw your video (like a lot of them). But it’s not this what I want. In the right click menu of every module you have an option to disable the module. So I would like a module doing this for one groupe of module…

I‘m not Omri, but anyway:
How should a workflow for that look like? I could probably develop such a module but I have no idea how you would define groups of modules? Can these groups overlap?
If there a valid answers for these questions and enough interest I would think about it.

1 Like

I think if you could solve that one then you could solve saving groups of modules (eg prewired voices, and maybe multi module presets) for recall.

Ok, I had an idea and @Omri_Cohen’s live streams always motivate me to do some programming along the way :slight_smile:
I created module STRIP that can enable and disable a group of modules, even by CV. It uses the expander-mechanism of Rack v1, so in this context “group of modules” is defined as modules in a single row, directly attached to STRIP without any spaces between them. To split a group simply force drag the modules “away” from STRIP.

The module will be available in the next version of my plugin in the Library. To try it out right now you can download a recent build from my GitHub-repository.

4 Likes

Sorry for the mistake about who you are…
Maybe it could work like the mapping module (clicking on the different modules you want to add). For me it looks difficult to overlap groups but i am not a developer.
After I can imagine different possibilities:
-one module for each group with a trigger to on/off the group
-one module for different groups with different on/off triggers (one for each group and when a trigger is on the others are off).
Have a nice week end.

See my reply above.

this sounds pretty interesting but I not sure what the point is? That sounds a bit more negative than my intention. When I started playing around with VCV one of the first things i thought about was whether it would be possible to encapsulate behaviour by putting modules together and abstracting their interface.

Sorry, but I have no idea what intention you are talking about.

I was refering to my opening line. I was worried that it came across as a bit impolite.

Ah, ok. I see two use-cases:

  • Disabling parts of your patch to save CPU ressources.
  • When working with scenes, this is an alternative to muting, see Omri’s video about scenes linked above.
3 Likes

I’m so excited that someone asked about this and a solution has appeared already. Can’t wait to try out this strip concept - I’m working on a set for a quadraphonic event and this may be the perfect solution for creating one giant patch instead of switching between projects.

First time posting, and for good reason - thanks Ben!

1 Like

Hi Nik, I went ahead and implemented an experimental load/save-option in STRIP. Feel free to test it. Be aware, it isn’t finished or error-free.

3 Likes

Thanks for this! I have been wanting to be able to save voices/groups for ages, this will speed up workflow greatly.

Unfortunately loading saved groups crashes Rack to desktop for me on Ubuntu 18.04, with latest Rack build. Did not notice anything in log.txt.

Ok, I’m on Windows, but I’m using most of Rack’s mechanism for loading. Can you send me the file of the saved group?

Wow, thanks ! Will test when I get home in a few hours. Cheers Ben.

Found the issue, had saved the group in a subdir in my Rack git directory, when moved to the user directory (.Rack/) everything works as expected, excellent! thanks again!

Here’s the file content just incase,

{
  "rightModules": [
    {
      "id": 204,
      "plugin": "Fundamental",
      "version": "1.0.1",
      "model": "VCO",
      "params": [
        {
          "id": 0,
          "value": 1.0
        },
        {
          "id": 1,
          "value": 1.0
        },
        {
          "id": 2,
          "value": 0.0
        },
        {
          "id": 3,
          "value": 0.0
        },
        {
          "id": 4,
          "value": 0.0
        },
        {
          "id": 5,
          "value": 0.5
        },
        {
          "id": 6,
          "value": 0.0
        }
      ],
      "leftModuleId": 203,
      "rightModuleId": 207
    },
    {
      "id": 207,
      "plugin": "Fundamental",
      "version": "1.0.1",
      "model": "VCA-1",
      "params": [
        {
          "id": 0,
          "value": 1.0
        },
        {
          "id": 1,
          "value": 1.0
        }
      ],
      "leftModuleId": 204,
      "rightModuleId": 206
    },
    {
      "id": 206,
      "plugin": "Fundamental",
      "version": "1.0.1",
      "model": "ADSR",
      "params": [
        {
          "id": 0,
          "value": 0.5
        },
        {
          "id": 1,
          "value": 0.5
        },
        {
          "id": 2,
          "value": 0.5
        },
        {
          "id": 3,
          "value": 0.5
        }
      ],
      "leftModuleId": 207,
      "rightModuleId": 205
    },
    {
      "id": 205,
      "plugin": "Fundamental",
      "version": "1.0.1",
      "model": "VCF",
      "params": [
        {
          "id": 0,
          "value": 0.5
        },
        {
          "id": 1,
          "value": 0.5
        },
        {
          "id": 2,
          "value": 0.0
        },
        {
          "id": 3,
          "value": 0.0
        },
        {
          "id": 4,
          "value": 0.0
        }
      ],
      "leftModuleId": 206
    }
  ],
  "leftModules": [],
  "cables": [
    [
      2,
      0,
      1,
      0
    ],
    [
      1,
      0,
      3,
      3
    ],
    [
      0,
      2,
      1,
      1
    ]
  ]
}

Also seeing intermittent crashes (WIn10) on reload attempts, and sometimes Strip doesn’t see a saved patch until Rack is restarted. Cheers.

If you have still issues with the latest build please provide more information what you are doing when Rack crashes.