Question about program change

I’ve never used program change via midi before and wonder what to do if there are more than 127 on the device connected to Play?

I’m using Korg Opsix and started with a sound placed in sound slot 278.
Later, when I found out how to make program change, I wanted to use another sound. I found the sound turning the program change knop on Play.
It appeared that the new sound was playing in all patterns. And I thought that if I made a program change at the start of the track/pattern I could go back to the first sound.
But how to do that when I only can choose the first 127 and the sound I need is at 278?

I’m sorry if this is a stupid question but I just don’t know and wasn’t able to google a solution

This is more of an Opsix question than a Play question but I found something that might help on Reddit:

1 Like

MIDI PC messages will only do up to 127 per channel so I’m guessing that #278 would be on channel three minus 127x2. That is how some other synths handle it.

1 Like

Thanks, that was quite a post!
There’s a lot of information and many new terms (for me) I’m not sure it was helpful at this point, rather more confusing :wink:
Mostly because it is a discussion with a certain degree of disagreement and as the discussion goes on it gets more and more complicated. I guess it is a complicated subject with no easy answer.
It’s surely a post I will come back to and might understand better if I go more in depth.

About if it’s more an Opsix question than a Play question.
I actually started looking in the Opsix direction.
But I send midi messages from Play to Opsix not the other way around. The PC messages has to come from Play. If I don’t use PC messages from Play I’m able to manually change memory slot on Opsix, anyway, that’s not convenient

Thanks, it was my approach to start with. The problem is that Opsix only have global midi channels. If I change channel on Play the Opsix won’t receive it and there’s no sound coming out :confused:

Yeah sorry it is more of an opsix issue. The play or any device that sends pc messages is going to send only up to 127 per channel on 16 channels.
I had a look at the opsix manual and it didnt seem to clarify it.

I think the only fast solution is to move my presets around on the Opsix. If I place those I use via midi within the first 127 I have no problem using PC from Play

1 Like

When there are more than 128 programs to access, they’re sorted into banks of 128.
Also something that can be confusing at first is usually that is stored as 0-127

In the Opsix Manual under MIDI Implementation it lists CC#0 as Bank change MSB and CC#32 as Bank change LSB.

In that Reddit post, user /u/seanluke says this in their comment:
“Let’s say you sent A for your value of CC 0 and B for your value of CC 32. Then the bank specified would be A * 128 + B. This plus the PC would allow you to reference over 2 million patches.”

So I think what you want to do is send CC#0 value 0 (because you don’t want any multiples of 128 in your bank number in this case- you’re looking for just bank #3)
Then immediately send CC#32 value 3
Then immediately send program change #151 (because 278-127=151)

I am making two assumptions here that I’m not entirely sure about:
(1) The CC#32 may need to have value 2 instead since zero might mean one in this case
(2) The PC message may need to have value #150 for the same reason

Give that a try! You might need to do some fancy micro-moving to get the CCs to pop up in the right order and timing for the Opsix to recognize.

Unfortunately there’s no real way to get around this other than what you had said about just consolidating all your favorites into Bank 1. This is a thing we all have to deal with sometimes!


Thanks a lot!
I will give it a try.
I might as well move the presets to the start of the banks. It’s not a big deal on Opsix. I probably need to do the CC#0 anyways in order to change the sounds for each track/pattern on Play.
I will do some testing and come back here

Impressive translation of the manual. I would think this would be explained more directly somewhere but it wasn’t. I tried to decipher it but it made my head hurt.