stoermelder's PackOne v1.6

Expect the unexpected.

I hadn’t had much time for development for several weeks because of my day job although I was playing around with several ideas in my head, especially a new sequencer, and a few others. None of these modules will be released in v1.6.0 simply because they are not ready yet :slight_smile:

In the meantime I found a bit more time again and several other ideas came to mind, I also stumbled over something in Rack’s source code which gave me the idea to develop something different, some sort of labeling utility which I now call GLUE.

So, these are the new modules:

  • GLUE: utility for labeling modules. Try it yourself.


  • MIRROR: utility for synchronizing module parameters. Bind it to a module and synchronize knob/slider/button changes across multiple instances.


  • AFFIX and µAFFIX: an insert on polyphonic cables for adding offsets in volt, semitones or ocatves. It looks a bit like POLY-CON from Bogaudio but it can be used as an insert for a cable and the notable detail about this module is that you can change how the knobs work: by default they simply add an offset in volts but you can switch to semitones or octaves on the context menu. Some sort of quantized offsets.


  • GRIP: a locker for module parameters. It is a simple utility if you want to ensure a parameter is not changed by accident or by the “Randomize” function.


  • POLY-PILE: polyphonic version of PILE. If you know PILE you know what it does.


  • GOTO: Utility for jumping directly to 10 locations in your patch by hotkey. Long press one of the buttons to learn the “jump destination” by clicking on a module afterwards, another long press clears the location. A short press centers the linked module on the screen. The current zoom factor is also stored.


There are also some new features and fixes for my other modules:

  • Module MAZE
    • Added option for disabling normalization to the yellow input ports (#95)
    • Added independent ratcheting settings for each sequencer-playhead (#94)
  • Module MIDI-STEP
    • Added option for polyphonic output for all channels on port 1
    • Increased number of CCs to 16 although 9-16 can only be used in polyphonic mode
  • Module PILE
    • Removed slew-limiting after preset-load
  • Module ROTOR mod A
    • Allow bipolar carrier signal / remove clamping on 0…10V
    • Added offset for output channel number (#121)
  • Module SAIL
    • Rewritten how the target values are applied onto the parameters (#106). You can’t use IN and INC/DEC the same time anymore, just use two instances of the module.

Nice work! :boom: Mirror would be so perfect for when we want to use a non-stereo (and non-poly) filter in a stereo signal flow, for example. :grinning:


Bonkers genius as ever - thank you!


As I mentioned, GLUE is fantastic - and so is POLYPILE, greatly simplifying my setup.

A few remarks (lemme know if you want them posted on github for convenience)

  • On GLUE, what the LABEL button does feels unintuitive - that it “arms” the next click to add a label. I think it should have a different visual feedback, you don’t expect a rocker switch to spring back in place, especially if it’s next to another that doesn’t exhibit that behavior.
  • Editing a GLUE label such that it becomes empty (Right click -> Delete, Right click -> Backspace, Right click -> Space) either crashes Rack (if only label label) or reverts to the text of a previous label. (Windows 10)
  • Backspace on a GLUE label isn’t working for me - I think it’s passing through the output to the module underneath too fast, resulting in both label and module being deleted in practice. Additionally, it would be good for both the Delete and Backspace key to be supported, for consistency with modules supporting both keys for deletion.
  • In GLUE, right click -> Duplicate is not producing any effect for me.

And a gratuitous picture of the new toys put to use in my fixed rack:


Awesome Ben!

1 Like

This is fantastic! Great job.

1 Like

Thanks for your remarks, much appreciated!

Yes, i wasn’t exactly happy with that either. I changed it to push buttons and a status led. Feels better for me…

Thanks, fixed.

Actually both keys were supported. But as you noted it didn’t work, at least most of the time because of the “hold-delete to remove all modules hovering over”-function. I changed it to Ctrl+X.

“Duplicate” enables “Label mode”, the next click will place a label with the same appearance as the duplicated one.

1 Like

Links have been updated to the latest preview build.


Great stuff, Mirror looks like a lifesaver for creating poly arrays out of multiple mono-only modules.
I imagine supporting similar behaviour for port inputs isn’t something you can feasibly do with the rack api? It’d be amazing to be able to plug a poly cable into the master module and have its channels spread across the corresponding ports of 15 child mirrors by magic.

Not right now. This is maybe an idea of some sort of “HYPER-MIRROR” module… :rofl:


Another module joined the preview:

  • GOTO: Utility for jumping directly to 10 locations in your patch by hotkey. Long press one of the buttons to learn the “jump destination” by clicking on a module afterwards, another long press clears the location. A short press centers the linked module on the screen, also SHIFT+NUMBER. The current zoom factor is also stored.

Links have been updated to the latest preview build.


This is useful but it might be good to have cv triggers for each position as well. That way if i’m recording a piece and i want to focus in on one bit i can trigger that with the sequencer rather than manually.

1 Like

How about one polyphonic port for the 10 triggers? I really don’t want 10 ports on the panel…

Hotkeys more than enough for me personally! Bur could you add a visual glide animation when location is switching?) Just an instant idea

I don’t mind either way. It’s one of those things that would make it easier enough to do a thing that I wouldn’t bother with otherwise.

Ok, done.

This one gave me a headache but it’s working now :slight_smile:

Links have been updated to the latest preview build.

1 Like

could you make a gif to illustrate how it works? This is the first time for me when I just can’t test your module without a video manual)

This might be because the buttons did not work how they were supposed to…

I just found a nasty behavior of the stoermelder modules mirror and µmap, when used in a very special and uncommon way

here is a link to a gif that shows it:


vcv freezes when I try to assign the µmap to a parameter, that is already assigned to a cv port of mirror.

I know that this is not a very normal use of these modules, but … :wink:

and I’m not shure if there is a way to do something against this.

Maybe a kind of message like: “this parameter is already mapped” and not let it get mapped ???

Hm, I can’t reproduce this behaviour. Actually I tested this kind of scenario (map all parameters with MIRROR and afterwards unmap or “re-map” some parameters with some other module) and everything was working fine. I’m inspecting the code right now how it could happen…