Synth Forum

Notifications
Clear all

Zone - Midi Bank switching doesn't work in real-time

5 Posts
2 Users
0 Likes
2,043 Views
Posts: 0
New Member
Topic starter
 

I think I found a bug in the Midi Zone implementation, because this used to work in the Master Mode of the other MO's.
when using the Zone Midi function on a part in the MODX, it doesn't send out any midi change signals when switching the MSB or LSB banks.

If I save the performance on a certain bank and program change number, the midi bank and program changes on my midi module as soon as I switch to this saved performance.
If i then go and edit the Zone settings and change a midi program number, the programchange works in real-time and changes the program on my midi module.
But as soon as I start to switch the MSB or LSB number there is no signal being send to the module and sending program changes also stop working at this point.
If I then save the performance with the new settings it switches to the saved bank and program as soon as I switch to the performance and changing the programchange number works again.

 
Posted : 04/10/2018 7:29 am
Bad Mister
Posts: 12304
 

“MIDI data persists”. This is like the Isaac Newtown law of physics that an object at rest will remain at rest until a force acts on it to change
What this means here is, the last sent message remains relevant until you change it.

“The MSB/LSB Bank Select Control Change messages must always precede the PC (Program Change)”. This is also a law of Midi...

If, for example, you send 000/000 as MSB/LSB (Bank Select for the Normal GM sounds) as long as no other valid MSB/LSB is sent all subsequent PCs will be in the Normal GM Bank (000/000). This remains true for milliseconds, seconds, minutes, hours, days, or weeks later... as long as it is later and there is no power interruption the last sent MSB/LSB persist. This means you do not have to repeat them, once in a proper Bank, you can simply increment the PC message.

However, change the MSB or the LSB to a fictitious bank and all bets are off. In fact, change either Bank Select value, no new PC will be sent until you change that PC value. After changing either MSB or LSB to a valid setting, you must now send a new valid PC. Simply changing the MSB or LSB, resets the process.

What a receiving device does when it does not have a corresponding Bank number can vary by product (so there’s a wild card) ensure you have a valid MSB/LSB for the receiving device before selecting a new valid PC (which must be last).
Also I have to mention, while all MIDI banks have a 128 Program limit, not all Banks contain 128 Programs. What a receiving device does when it receives a PC for a program number it doesn’t have can vary, as well. Some just ignore it, some switch to silence (mileage may vary).

In other words, simply changing the Bank Select portion is or can be meaningless, until a new valid PC event is sent using a valid MSB/LSB..
If you set “MIDI SEND” active (green)... you will want to set the MSB and LSB before changing the PC.
When active changing the PC will cause the receiving device to change if the MSB and LSB values make sense to it.

PROGRAM CHANGE must always be the last event sent. And it should be following a valid Bank Select setting for the receiving device.

With this information test your theory again.
If you are still having the issue, then please include specifics (products, values, etc.) so we can verify your report. Thanks.

 
Posted : 04/10/2018 2:43 pm
Posts: 0
New Member
Topic starter
 

Thanks for the extensive reply. I'm already familiar with the theory behind MIDI and program/bank switching. But I will try the functionality again, also with different modules and report back.
But just to be clear, what does the MIDI SEND button do exactly? because it is automatically turned back off when I save the performance and the reference manual is also not very clear.
Is it just a setting that when it's turned on it will send MIDI data directly when adjusting the zone settings?

 
Posted : 05/10/2018 12:29 pm
Bad Mister
Posts: 12304
 

Is it just a setting that when it's turned on it will send MIDI data directly when adjusting the zone settings?

That is exactly what it is... otherwise you would have store the setting (it is sent when you store or recall a stored Master program). This allows real time changes to Volume, Pan, PC when activated. The MSB LSB currently showing will be used when you change the PC value.

 
Posted : 05/10/2018 6:45 pm
Posts: 0
New Member
Topic starter
 

Ah ok, yeah I think that was the confusion. When trying to switch i probably had the MIDI SEND off as well.
It's working like it should now, so no bug fortunately :).

 
Posted : 08/10/2018 9:02 am
Share:

© 2024 Yamaha Corporation of America and Yamaha Corporation. All rights reserved.    Terms of Use | Privacy Policy | Contact Us