MIDI: Getting PC on Bank Switch. "Ignore bank switch commands" doesn't do anything

My issue is in GP3, as I’m still waiting to upgrade to 4.

Okay, I’m using a Harley Benton MP-100 midi controller (formerly known as the MeloAudio MIDI Commander). There seems to be a small bug somewhere between this controller and GP3. Some other users of the controller has reported this too, so I guess it’s on their end, not GP.

Anyway, the issue is that whenever I change Bank from 1-4 to 5-8 or whatever, the controller is resending the currently active PC message. So if I’m playing while changing Bank, I can hear and see the current rackspace being reactivated again and again. This is also shown in the MIDI Monitor:


Pressing Bank Up/down on the MIDI controller

In the Global MIDI menu, there’s a setting called Ignore bank switch commands and map to bank #.

The documentation says the following:

“Selecting this causes Gig Performer to ignore incoming MIDI program bank switch messages and stay on the specified bank.”

This sounds like a workaround to my problem. However, that doesn’t seem to do anything. Turn on or off, the MIDI Monitor shows the same thing and I can see my rackspaces react to being reactivated whenever I change Bank.

I’ve contacted the manufacturer of the MIDI controller about this, but not heard anything. So my hope is that there’s a way to negate this problem inside GP instead.

If not with this setting, perhaps there’s another way (through GPScript, perhaps?) that I can tell GP to ignore bank switch commands?

I think that is normal behaviour of your controller?

You can try GP 4 and see if the issue still exists.

That’s what I feared. And why I added the question at the end for an alternate workaround, maybe using GPScript. Anything that can make GP ignore repeat Program Changes.

I tried the GP4 trial (still waiting on the upgrade 3->4 mail), and it seemed to still be an issue there.

I fear that is not so easy, maybe GP4 checks that the rackspace is already activated and does not react again.

But I have an idea:
Maybe you do not use PC numbers for rackspace activation, but react on incoming PC messages and navigate to the rackspace by switching it with GP Script.

Hmm, I’m surprised there’s no way to tell your controller to not send a program change in this situation. Changing banks shouldn’t affect program changes for precisely this reason….what if you want the patch at PC 80 on another bank? You shouldn’t have to go through PC 0 on the way.

I suppose this could be fixed with a gig-script (GP4) that intercepts program changes on the way in and doesn’t pass them through if they haven’t changed but that’s also tricky if you in fact want the same program change

I’m still hopeful that someone at the manufacturer’s customer service team will get back to me with any info on this, but as of now, it seems like I can’t get the controller to not send the same PC message whenever I switch to different banks.

As soon as I get GP4 up and running, I’ll be reworking all my rackspaces, utilizing Global Rackspaces and custom curves for my foot pedal. I’ll be taking a look at gig scripts as well and try the workflow you and pianopaul sugggested.

Thanks for your valuable input, both of you!

OK, did a rough test with this Gig Script

var TW : MidiInDevice

On ProgramChangeEvent(m : ProgramChangeMessage) from TW
 if GetProgramChangeNumber(m) == 0 and
    GetRackspaceName() != "Rackspace" then
  SwitchToRackspace(0, 0)
 end
End

The goal is to use the Rig Manager.
This way you can reference the MIDI Device via a logical name.
Now the Gig Script reacts on incoming PC messages and devices if a switch is necessary.

1 Like