Can I script a rotary knob to change plugin preset?

I would like to use a rotary knob on a Presonus Atom controller to change presets in a VST plugin. The plugin is MPhatik.

I have been experimenting with ways to change presets within a single rackspace variation which would also allow me to see the name of the VST preset selected.

I have failed because I am still new to GP4 and don’t yet have the time to fully explore scripting due to gig demands. Would a more experienced GP4 user be able to give me a hand with this?

Many thanks

Hi @BLC, welcome to the family.

There is indeed a possibility to change presets of a plugin via a Widget -. but is is not recommended.
Why do you need that?
Better you use different rackspaces or mulitple instances of the same plugin and filter NOTE ON messages in the different variations.

Or in the case of MPHATIC bypass/unbypass the needed instance of the plugin.

1 Like

Hi @pianopaul

Thanks for your reply. In this instance I have a rack of percussion set up using Groove Agent, using MPhatik to provide some tonal character. There is a “glitch” that happens when moving between two custom presets that is particularly appealing (unlike most glitches). So, I want to be able to use a spare rotary to be able to move effortlessly between them in real time. I was able to do this in another host but cannot figure the best way to do this in GP4 I expect there are several ways). Patch persist is not a requirement in this use case!

And you are sure that switching a preset in a plugin is absolutely glitch free?

One of the goals of GP is to not have glitching and that’s why changing presets on the fly is not “easy” – we can’t guarantee how well a particular plugin will handle having presets be changed on the fly, many plugins were simply not designed for that.

I would do that with some instances of the plugin and audio route to them in parallel.
Now with a audio gain plugin before each plugin you can mute/unmute audio to the plugins.
This way you are able to easily switch between “presets” without glitching and this way you can mix “presets”.

Just place your MPHATIC plugins after each gain block

And with variations you decide which audio route to go


@pianopaul I’ll give that a go, thank you for the ideas :slight_smile:

1 Like

I use both ways to select different presets in a rackspace:

  • when I want to test the different presets of a synth to find a sound that suits me, a rotary knob allows me to quickly change presets. The disadvantage is mainly the risk of held notes (thank you to GP for the panic button :slightly_smiling_face:).

  • Once I have chosen the different presets to use live, I use the mute buttons method in the variations.
    It is flawless and reassuring.

1 Like

I’m searching the forum for how to do this. Would appreciate if someone could elaborate. Does the plugin need to assign a parameter # to some part of the Preset management system?

Ok, I can make an example gig.
What plugins are you using - maybe I am using then same :wink:

This is DS Tantra 2. If you have it and seen it, they have a lot of wonderful presets for Gate and Sequence envelopes and as part of my script for randomizing parameters, I would like to randomize the envelopes. I’m assuming if it is possible to assign a rotary to go through the presets, I can modify that protocol for my script.

OK, gimme some minutes…

Awesome, thank you!

Did you try that?
Bildschirmfoto 2021-12-05 um 17.14.49

Yes, I did

And is it working?

It is. Is it it possible to map that to my controller?

I think you can MIDI map a widget to your controller and
the widget is assigned to the MIDI In connected to the plugin.
Now when the widget is moved, CC 40 is sent to the MIDI In and with a scriptlet this CC messages are transformed to Note Messages.

Tantra.gig (37.8 KB)

Or you use different widgets and assign them to send a specific MIDI Note to the MIDI In plugin.

The “Enable Preset Switching With Keyboard” is for a computer keyboard. The Up and Down keys will cycle through presets. It is not for a midi controller keyboard. If I am understanding correctly your proposed solution

OK, are you aware of the option to save/load presets via the Gig Performer preset mechanism?