Test sending a 'Parameter Request' message - p.188 of the Data List doc
Notice that the 1st nibble of the Device Number indicates the type of parameter change (section 3-5-3:
1n - is to change a parameter
0n - is to request a bulk dump
2n - is a dump request
3n - is a parameter request
The SYSTEM table on p.194 has lots of things you can use for a test - e.g. 00 00 09 would be to request the 'Local Control' setting.
You will get back 00 for OFF and 01 for ON
F0 43 30 7F 1C 07 00 00 09 F7 should return
F0 43 10 7F 1C 07 00 00 09 01 F7 - the last 01 would indicate ON - a 00 would indicate OFF
Test that command first to make sure you have the command syntax correct and you get the right return value.
Then send your message that gives the popup window followed by that parameter request for Local Control and see what happens.
Test sending a 'Parameter Request' message - p.188 of the Data List doc
Notice that the 1st nibble of the Device Number indicates the type of parameter change (section 3-5-3:
1n - is to change a parameter
0n - is to request a bulk dump
2n - is a dump request
3n - is a parameter request
The SYSTEM table on p.194 has lots of things you can use for a test - e.g. 00 00 09 would be to request the 'Local Control' setting.
You will get back 00 for OFF and 01 for ON
F0 43 30 7F 1C 07 00 00 09 F7 should return
F0 43 10 7F 1C 07 00 00 09 01 F7 - the last 01 would indicate ON - a 00 would indicate OFF
Test that command first to make sure you have the command syntax correct and you get the right return value.
Then send your message that gives the popup window followed by that parameter request for Local Control and see what happens.
Which doc are you using, because mine only has 148 pages (I'm attaching it)?
That doc is for MOXF. Are you using Modx or MOXF?
Trying to connect my MODX
If you are using Modx download the current docs here:
https://usa.yamaha.com/products/music_production/synthesizers/modx/downloads.html
That doc is for MOXF. Are you using Modx or MOXF?
Trying to connect my MODX
If you are using Modx download the current docs here:
https://usa.yamaha.com/products/music_production/synthesizers/modx/downloads.html
I've always talked and written about Yamaha moxf6 and 8
My bad! See p125 of the doc you posted.
Sorry - forgot this isn't your thread - the original question was about Modx so that is the doc I used.
But your doc has a SYSTEM table on p.125 and the Low address of 09 is for 'Local Switch' so you can use that for your test.
Use '00' for the device id as you did before and NOT the 07 (for Modx) that was in the sample I posted
F0 43 30 7F 1C 00 00 00 09 F7 should return
F0 43 10 7F 1C 00 00 00 09 01 F7 - the last 01 would indicate ON - a 00 would indicate OFF
... so I'm not the only one getting twisted in this thread. It's easy to do.
a) "Soundmondo" is nondescript as a category in terms of what keyboard is being discussed
b) Start of thread has a keyboard mentioned so you get that in your head and it tends to dominate
c) Other stuff ...
No problem - we'll get there eventually. Warts and all.
BTW: I guess I can try the Motif XF. One would imagine the MIDI implementation would be shared between the little brother of Motif XF (MOXF). You never know - but I can check. MOXF doesn't run Linux (MontaVista) like the Motif XF does - so there could very well be differences.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
My bad! See p125 of the doc you posted.
Sorry - forgot this isn't your thread - the original question was about Modx so that is the doc I used.
But your doc has a SYSTEM table on p.125 and the Low address of 09 is for 'Local Switch' so you can use that for your test.
Use '00' for the device id as you did before and NOT the 07 (for Modx) that was in the sample I posted
F0 43 30 7F 1C 00 00 00 09 F7 should return
F0 43 10 7F 1C 00 00 00 09 01 F7 - the last 01 would indicate ON - a 00 would indicate OFF
I'm not saying I fully understand why we're doing this.
Anyway, I tried the param request-local control command and it returned 1, as you wrote, but only if the device id was correct.
With a device id of 0, I still got a 'Device number mismatch' error message for this command too.
I executed my previous command with the wrong parameter id, the window came up, then I executed the param request-local control command with the wrong (and after I tried the right) param id, but the window did not close. I tried in reverse order too.
I think I will give up this fight, and in such a case I will press 'Exit' manually to close it.
Actually (at the moment) there is 1 song in the repertoire that requires a mode change.
Thanks for the help so far guys!
The YAMAHA support also wrote that 'Play an active role in shaping our products and use our IdeaScale platform. Here you can send your suggestions and requests directly to our development teams.'
I will also throw a ticket for this, just in case, although I don't think they will deal with such an 'old', not supported product.
Try sending a 'MIDI MASTER VOLUME' command - it doesn't use device ID
I'm not saying I fully understand why we're doing this.
Yamaha support said to try sending a VALID command after the one that gave the error message to see if the valid command would make the error message go away.
Anyway, I tried the param request-local control command and it returned 1, as you wrote, but only if the device id was correct.
Sorry - since that includes DEVICE ID it won't work since it is the id that is causing the problem.
p.121 shows the format of the MIDI MASTER VOLUME command and since it doesn't include device id every device should accept it.
(3-6-2-1) MIDI MASTER VOLUME
F0H 7FH 7FH 04H 01H llH mmH F7H
Sets the MASTER VOLUME value.
The value “mm” is used to set the master volume (the value “ll” should be ignored).
Try that command by itself to get the format correct.
Then try sending your command that gives the error message followed by the master volume command to see if the master volume command makes the error message go away.
Try sending a 'MIDI MASTER VOLUME' command - it doesn't use device ID
I'm not saying I fully understand why we're doing this.
Yamaha support said to try sending a VALID command after the one that gave the error message to see if the valid command would make the error message go away.
Anyway, I tried the param request-local control command and it returned 1, as you wrote, but only if the device id was correct.
Sorry - since that includes DEVICE ID it won't work since it is the id that is causing the problem.
p.121 shows the format of the MIDI MASTER VOLUME command and since it doesn't include device id every device should accept it.
(3-6-2-1) MIDI MASTER VOLUME
F0H 7FH 7FH 04H 01H llH mmH F7H
Sets the MASTER VOLUME value.
The value “mm” is used to set the master volume (the value “ll” should be ignored).Try that command by itself to get the format correct.
Then try sending your command that gives the error message followed by the master volume command to see if the master volume command makes the error message go away.
Thanks the new idea!
Unfortunately, the error window remains open even after the master volume command (and this command works because you can hear it adjusting the volume)
An arduino mega has 4 hardware serial ports so you could leverage these to split your MIDI buses. If you have an arduino implementation with less serial ports, you can use GPIO to "bit bang" a software serial port. Typically I would handle this with interrupts and maybe code the routines in assembly. Doing it the easy way would be to grab someone's "library" (or whatever the speak is in arduino-land) and plug that in. There should be ready-made bit-bang serial port solutions out there.
This is (one way) how you work around what is, IMO, a poor implementation choice on Yamaha's part to cripple a feature that is supposed to allow two of the same keyboard to effortlessly connect to the same MIDI bus. MOXF wasn't that long ago but maybe it was intentional being the not-a-flagship cost reduced model. THE MOXF/Motif XF timeframe was in an era when the flagship and cost reduced model were on different operating systems. With Montage the OS was unified between the two. So if any of this is better now - both the MO(DX) and the flagship share the same hopefully better behavior.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
Do any of the Motif models exihibit the same behaviour requiring user intervention to make an error message go away?
MOXF wasn't that long ago but maybe it was intentional being the not-a-flagship cost reduced model. THE MOXF/Motif XF timeframe was in an era when the flagship and cost reduced model were on different operating systems.
That could explain the switch from a non-modal message to a modal dialog box. I notice in the Data List doc for MOXF that Model ID is listed as '00' which doesn't seem to be very specific.
Comparing the Motif and Moxf data lists shows that the device addressing seems to be changing during that time frame.
MIDI assigns each manufacturer an ID and that is the '43' shown as YAMAHA ID that identifies any instrument as being a Yamaha.
Then the manufacturer, Yamaha here, can/does use 'Model ID' to uniquely identify specific models that they produce.
The 'device Number' could then specify one of up to 15/16 instruments of each specific 'model'.
The idea being that you could send global MIDI messages to every device on the chain. Each manufacturer could identify messages targeted to their equipment and they would then know the format for each of their messages. They could ignore any message that doesn't have their manufacturer ID.
Then the Model IDs that each manufacturer can assign can be used to identify messages that may be in different formats. As new devices come out on the market the manufacturer may add new messages and/or make format changes to old messages and the Model ID lets each specific model identify messages specific to that model.
Finally the device number allow messages to be targeted to a specific one of 16 different instruments of the same Model. If you had 8 Modx instruments you could configure each of them with a different device number and target them specifically by sending messages with that number.
Naturally that whole chain of activity works best when instruments just totally ignore messages that aren't meant for them. It is reasonable to display a message on the instrument for all messages even those that are not targeted for that device.
It doesn't make any sense to me to make those messages MODAL and require user intervention to make them go away and continue normal operation.
BUT - if the Moxf does use different underlying OS or other code that had to be rewritten or ported it would be pretty easy for a dialog box to end up being Modal since the modality isn't going to be obvious. And any tests of sending MIDI to an instrument might appear to be working properly and any modality issues may not have even been noticed during testing. Dialog box 'modality' isn't even likely to be documented in the specs assuming there were any detailed specs to begin with.
There aren't any modality issues with the M8X as far as I can tell but them I don't have a lot of different models to any thorough testing.
MOXF uses a custom environment that's not Linux/Unix/general purpose based. The MOX(6,8) before it and MO(6,8) before it were similarly custom but probably related since the general screen/button interface was similar in features. The MOXF, therefore, wasn't a first generation platform and so however it works has some legacy to build on top of.
I don't know how the Motif XF works wrt to this although I have one. I can check but paramount I'm trying to get to a solution to the problem. It's an interesting question, but can be somewhat "slow boat-ed".
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R