Widgets to adjust value min, max, and reverse?

I have been toying with a proof of concept for creating widget panels for editing synth parameters from the front panel. Is there a way to have widgets adjust the minimum and maximum values of a widget and to set the reverse button? Maybe through scripting? (Not my strong suit.)

A little background… I play EWI and would like to map breath (cc2) to multiple synth parameters, but I don’t always want to sweep the full value scale. Sometimes I will map it sweeping the value in downward direction.

I have run into a few synths whose midi mod matrix don’t offer value curves, value min, max or direction.

Instead of popping in and out of the VST’s UI and the widget’s value editor, I was hoping to create a set of widgets within a rackspace to edit these values.


I think right now that is not possible
But with clever scripting it should be doable, but not out of the box

Yeah, I figured it would have to be scripting or some kid of OSC magic… I just don’t know where to start.

Reviving this thread for a moment:
How would one go about scripting the change of the Max and Min values of a widget?
I haven’t found an obvious way to do this (and thinking there probably should be one).

E.g. Let’s say I have a dial widget and two radio buttons. In the script, I would want the activation of each radio button to represent a change in the Max scaled value of the dial widget so that, say, button 1 changes it to Max of 80 and button 2 changes it to Max of 60.

Try this.
Maybe this could lead to the solution.
WidgetScaler.gig (62.5 KB)

I see, thank you.

While that does technically address the example I presented, it doesn’t actually change the Max and Min values of a single widget. It constrains the upper range via movement of a second widget, but that first widget can still be moved manually outside the desired range. Also, if you wanted to define a lower range as well, the script would become more complex and require yet another widget.

I will address this in a separate thread.

1 Like

At the risk of further showing my ignorance, would it work to have two widgets with with the different max/min values you want and connected it to another widget (or maybe two group widgets) that allow you to bypass/unbypass so you can select which one is effective an any one time? [Fee free to ignore].

It took me a second to see what you had going on and how to apply it to my question and I think this could work for my needs. I would just need to edit to 1st v_scale in the IF statement by hand in the script itself to set the top point.

Unless you can you think of a way to add a third knob that would set the value of the multiplier in the script?

Thank you so much!

I have actually made some progress on this using what you posted as a jumping off point. I’ve been able to added a knob to assign a minimum value. :smiley:

I am flushing this out a bit more today and will hopefully have a rackspace uploaded later on to show what I have been able to figure out.

Here is what I have come up with after flushing this out a bit more. Thank you pianopaul, you really pointed me in the right direction and I learned a lot today!! I guess this old dog can learn some new tricks! :grin:

I have attached a Gig file if you are interested in seeing what I ended up doing.

There are 5 sub panels that can be controlled by a single input CC and independently scaled for minimum value and range. In the attached Gig file I reversed the output on one widget so that it scales downward. I still want to explore a way to turn on reverse scaling with a widget button, but this will cover most of my needs for now.

Multi-Widget-Scaler.gig (406.9 KB)