Although I cannot reproduce everything, I did get Cantabile to send my "MODX" the Bank+PC and everything worked with MODX's Zone Control turned on.
This is the binding I have setup to do this. When the song "Zone Issue" (which has no issue for me, I'm testing for the issue) is loaded by double clicking on it from the song list, the Bank MSB/LSB and PC are sent to MODX and I see "CFX Stage".
The value for the Banked PC is 8192.4 which is what translated when I typed 64.0.4
You may be sending more Bank and PC messages simultaneously with your binding rules ("script" ) -- and these other messages may be interleaving. I'd have to get some more detail. I've given mine.
Here I only have "MODX" connected and no other devices configured or used within Cantabile. Just MIDI IN/OUT of the MODX configured and binding to the MIDI OUT (going into MODX).
The action is "Program Change (Banked)". Cantabile has a display issue in that the column expansion doesn't give more room for the action label aka "MIDI Event" and instead just expands the "Target Controller" width which is "-" (a dash with no options) for this binding.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
What happens if I enable the MODX Zone?
Hybrid MIDI mode is disabled. If you're testing using a single Part (what I mean is a Performance with only one Part configured) with Keyboard Control ON (Part 1) then hybrid enabled vs. hybrid defeated (Zone enabled invokes multi-channel) should not be different when the Bank/Program change options are turned off under Zone. If they're turned on, then MODX is going to send those messages out along the configured MIDI transmit channel.
If there's more than one Part and you switch MODX Zone Master on/off (or all Parts' Zone off) then this is going to change how data is transmitted and received for all Parts that do not match the configured hybrid mode transmit/receive channel. My understanding is your testing is focused on a single Part so this should not be happening since your Transmit/Receive channel for hybrid mode is Ch 1 and your test MODX Performance is a single Part - Part 1 - which is at the default of Ch 1 already.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
@Jason: I'm using a Cantabile Linked Rack to easily select MODX performances (MSB.LSB.PC's are managed inside as Rack States). But for testing I added two Bindings (Song States / On Load) just like you did. One for the CFX Stage and another for my MIDI CH1 performance. These Bindings can be fired manually (by clicking on the triangle left to "Song States"). If I do so I can reproduce my problem.
My next step will be to download the latest Cantabile Light and check again. I do own Cantabile Performer, but not the latest version.
Ok - we'll see if the latest software exhibits the same behavior or not. If you still have problems we can drill down and be sure we have you failing with a setup that I can 100% reproduce on this side and go from there.
According to the release notes, MSB/LSB issues were a long time ago.
BUILD 3068
Fixed - triggers sending incorrect program change bank MSB/LSB values
Fixed - midi assignment group expand arrow not updating
Improved - cleaned up some unnecessary logging
Released: 13 July, 2015
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
[quotePost id=117739]That could be the source of the problem.
In general you need to have only ONE master controller - there needs to be one entity in control of things.
Otherwise you get the equivalent of an audio feedback loop.[/quotePost]
That may be true if you're conntecting your gear directly. Recall that all my MIDI connections will go to my PC, and Cantabile is the one entity in control of things. In my studio I have a more complex setup (6 Keyboards, 2 sound modules, 2 BT Keyboard controllers), all MIDIed to the PC and Cantabile in control (or for recording Sonar/Cakewalk). That's the first time in 5 years that I experience such a strange quirk I described here.
My keyboard rig is now in the rehearsal room. But I do have a second MODX in my studio. I just used my DAW (happens to be Cakewalk) to send the patch changes in question. The result is: my problem can be reproduced with my DAW. Same result as Cantabile. This means:
Jason demonstrated that these patch changes do work on Montage.
I demonstrated that these patch changes do NOT work on MODX.
I think we must seriously consider that this is a bug in MODX.
I'd be surprised if MODX was implemented differently - but you never know. Next week I can bring a tablet into the music store and hopefully there will be a MODX on display. I can test the same thing - which would be the keyboard response to Bank/PC changes with Zone turned on -- in isolation without any other devices connected.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
I just found out, that paramter "Int SW" in the Zone Settings of the part makes all the difference for me 😮 .
If I set Int SW = Off, my problem is alive.
If I set Int SW = On, my problem is gone.
I did set Int SW = Off, because the performance should send note and controller events to external gear while the MODX itself is silenced. My understanding was, that Int SW = off was the easiest way to achieve that. Maybe I'm wrong on that assumption and something - at least to me - unexpected happens. Note that I don't want to use Local Control = Off as this is a global parameter. My goal was that MODX can be silenced on a Performance basis.
As there are other ways to silence MODX sound in a performance I do use now a simple workaround:
- In Part 1 Zone Setting set Int SW = on
- In Part 1 set Element 1 off (that will silence sound generation, Element 2-7 are off already)
That's it, MODX follows exactly the MIDI Performance selection I send from Cantabile.
I fully agree with you, Bill. BTW I've been following Bad Mister's advice since his instructional video was published about the MOX. Always a winner 🙂 .
I'm on the road again and won't be in front of a keyboard until next week or later this coming weekend. Although I had made strides to match the screenshots provided in my testing (which includes INT SW=OFF), I will have to start by circling back and ensure this is set as it is reported as key to reproducing the issue.
At the moment, removed from my previous testing, I cannot confirm my testing was valid or not.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
Testing Montage (PC to Montage's USB TO HOST port - no other connections including MIDI DIN)
Zone Master ON
MIDI Mode: Hybrid (w/MIDI I/O channel set to Ch1)
Performance: Init Normal (AWM2)
Modify Part 1 - Zone ON, Zone Int SW OFF, Zone Vol/Exp ON (rest are off: MSB/LSB/PC/pan)
When I send:
B0 00 40
B0 20 00
C0 03
From a USB/MIDI device (software on PC) I see Montage properly switches to CFX Stage.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R