Toggle Switch and Midi Learn - HELP PLEASE

Hello everybody,

I am new to Gig Performer and pretty amazed. I love the software so far, but have one early problem:

I am trying to control a toggle switch widget with either a midi button or a Sustain pedal. To control a Leslie on / off, for example. When clicking with the mouse, everything works fine.

Now when I let GP midi learn my button or my sustain pedal, the max I can get is one change (say from “on” to “off”), further clicks have no result whatsoever.

I tried all Latch, Catch etc. settings in the Widget properties, that does not help.

Strange enough: when assigning a Midi Note, things work. But of course, I would prefer a real hardware button or pedal over a NOTE.

Can anybody help??



Welcome around!

Of what plugin? VST or AU?
Windows? Macosx?

Hello Keyman,

thanks for answering. I am on Mac OS, mostly with AU plugins. But it seems I solved the issue. By restarting and starting from scratch with a new rackspace. I am quite shure this was a program error… Hm. Because of the way it worked with Note Values, but not with CC, and after that, not even with Notes.

Now I have a new question. Is there a way to have Master FX that are independent of individual Rackspaces? It feels kind of stupid to insert Reverb and Delay into each and every Rackspace, multiplying the Memory footprint. Can I do that with a second instance, e.g.?

In the current version of GP, this cannot be done directly, we are looking at this as something to include in a future version.

However, if you on Mac, then it’s really very easy to do this using a second instance because you can use the free Blackhole virtual audio driver along with your existing audio interface to easily route audio from one GP instance to another.

Just create an aggregate audio driver in Audio MIDI settings and use that in both instances.

Until you discover you want sounds to decay nicely when you switch to another rackspace, then you will love this feature :slight_smile:

Mistrust the obvious — while there’s certainly some increase, it won’t be double (thanks to shared libraries) and they won’t use any significant CPU cycles when they’re not active. Also, unless you’re planning on reading email and surfing the web while performing, what else were you going to do with all your RAM?0 Unless you’re actually running out of it, (in which case check out predictive loading), don’t get too concerned.

1 Like

Thank you. That sounds promising. Also, I was wondering, next step - If I would share a delay, how do I temposync it across Rackspaces. So I will first share your optimist and try with lots of Racks.

But one more thing… (hehe, Steve Jobs…):

It would make sense in my case though, to have Variations of the same Rackspace with Program Changes for ONLY outboard gear, Midi Stuff, my Main Keyboard Nord Stage.

But I did not find an elegant way to do that so far. PC is programmed in the Midi Out instance itself, and when I change that, it´s changed for the whole rackspace.

Sending a PC into the Midi Out Block from a Widget does not seem to work, I can´t find the PC paramter in the Midi Out “Plugin”.

Is the Question understandable? I hope…

You can send any PC message to your MIDI Out block. You have to do two things though:

  1. Make sure that the option to “Not block PC messages” in your MIDI Out block is enabled.
  2. Create a new MIDI in OSC block for example and then connect its output to your MIDI Out block input.
  3. Create a widget and map that widget to the PC parameter of the MIDI In OSC block you created.

That’s it. You could use a button with scaling to send a specific message.

Alternatively - you could use GPScript and achieve the same with more flexibility as well.

That is exactly what I tried. But the PC values don´t seem to translate correctly. When I choose Values in the midi out block, I can select each and every Program in my nord.

When I do the same with PC from a widget, things just jump around in a non-mathematically-obvious way. Also, I don´t see a way to Send Bank LSB - which would be necessary for the Nord, in the long run.

Any idea why that??


Would GP Script be the only way then? It is my FIRST DAY with GP, so that is kind of tough stuff rightaway…

Bank select messages are CC numbers 0 and 32 respectively. You can send those in.

Your problem is most likely the fact that th widgets go from 0 - 100 and MIDI is 0 - 127

If you drop a button widget in - connect it to the MIDI In block PC parameter.
Now go to scaling for that widget and type in 5m for minimum and 5m for maximum. You’ll get something that ends up looking like this:

Screen Shot 2020-07-23 at 4.23.28 PM

that will translate to PC 5

So to summarise … use the “m” after your number to enter MIDI values in those widget value fields.

Alternatively - divide your PC number with 127 manually and enter the floating point number directly, but I think typing an “m” is a bit easier :slight_smile:

Hope this helps.

Well… on the way. It worked with typing m-values directly, now it doesn´t work with the scaling.

And first of all, I had three crashes meanwhile. So just in case you are a developer - I don´t quite know the community here, might that be interesting for you?

We are always interested in crash reports as long as they can be reproduced. Note that most crash reports are actually due to crashes in the plugin, rather than in Gig Performer (it just looks like it’s Gig Performer because Gig Performer is the application that is crashed by the errant plugin)

unlikely, in that case. Because I am only sending data to the Midi In Block (OSC) and from there to a Midi Out Block (Physical out). Actually, there is no plugins involved, at least not in the things I work with at the moment.

There are 4 plugins in the rackspace, but I do not use them, currently. Unlikely to crash, in that case, I guess?

So, next time, I will save a crash report.

Ok, further results:
The m Method works in the top row (current widget value) - but only as long as there is no scaling involved.

Once I type in those 5m´s into the scaling fields, that knob is useless furthermore.
I do have the same result as in your screenshot, but the button is not switching anymore, then.

And, to make things even stranger: when I ERASE the 5ms and set them back to zero, the button STILL does not translate, even if I do exactly as before.

The only thing that helps then is to delete the button and start again. Then it works again, but only with current value. Which is ok for me, but strange for the program, isn´t it??

Thanks for helping about this, anyway. Could I have found that in the menu? I mean the “m”-Tip? M for Midi, right??

… unfortunately, Bank Select does not work either.

Tried sending CC 32 alone (with and without m),
tried sending CC 00 followed by CC 32 (with and without m),

Same method as desribed, routed a widget into my Midi IN Block (OSC) connected to my Midi OUT to Nord Stage.

nothing happening.


in my Midi Out block, though, LSB lets me select my bank without problems.
Exactly the one that I am sending the CC 32 to…

What do you mean by this:

Tried sending CC 00 followed by CC 32 (with and without m)

CC 0 and CC 32 are Control messages. their VALUE determines the MSB and LSB bytes of the MIDI bank select.

You can’t send CC 0 - you send a CC 0 with a certain VALUE.
The “m” is something you type in when you are typing in the value. As soon as you press enter - the “m” disappears and the number is automatically converted to a proper number 0…100

Thanks, Nebojsa.

But I know that. Maybe I expressed myself in an odd way.

I did exactly as you described, sent CC 00 followed by Value 0, CC 32 followed by Value 0,1,2,3 (with and without m) - neither worked.

But the Midi Out Block is capable of switching my Nord, so it cannot be because of incompatibility. It must be some problem in the communication between the widget and the Midi out Block.

I also know about the conversion that “m” does, used that in the PC situation and understood it perfectly.

But thanks. No solution in sight, right now…

How did you send it. I do not understand this. Can you share a screenshot maybe?

Hello again,

and thank you very much for keeping the faith and the patience :slight_smile:

I will include several screenshots.

  1. the Rackspace. The Midi Out Block on the lower side named “Switch Nord” sends the desired values and is cooperating flawlessly with the Nord Stage 2.

  2. Screenshot of the Contents in the Midi Out Block.

  3. My Panel with the widgets for sending the desired values when a certain variation is called. I chose text labels because it seems more comprehensive than buttons, they do have the same capabiltites of sending values according to the menues. (Might that be the problem? I will try to use sliders or knobs after this messagt).
    4., 5, 6 The contents of the widgets including the values they are sending. PC works, Bank select does not.

Would be great if you see find the trap, Are you just a skilled user or a developer?

Greets & thanks again (Hope I will find out how to include screenshots here :-))

Only way I see so far is a dropbox link. Hope this works.

Hey again,

I guess I figured it out now. I thought a bank select command would work independently of a PC. Seems I have to send all three values at once ALWAYS, so it is not possible to just select another bank (with the same program no still remaining).

For now, it seems I came one big step further. And BTW: no difference between text labels and knobs, but you shurely know that anyway :slight_smile:

Thanks again for helping, isse might be solved know, I will report furtherly.