SysEx to MOXF - again

Sorry Christoph, this is not correct,

Here is the correct syntax when entering that works for my Roland. You keep the spaces in between each Byte. Try this and see if it goes

x"F0 43 10 7F 1C 00 30 30 00 00 F7"


1 Like

:frowning: - seems to be a big problem

can I possibly be wrong with my paths and target?


can you post a screen shot of the sysex binding value entry window open, please.

1 Like

of course - sorry

It looks good according to my experience. You could make sure that sys ex is enabled on your MOXF. Many devices this is switchable in their options section, not sure about Yamaha. After I will check the midi implement data like Derek did to check my work.

1 Like

I can’t find an option enabled/disables for SysEx-Data …

In that case it’s always on. Maybe this one is a job for @brad Christoph, I’ve shown all I know and after looking at the manual the only thing I can’t verify is how you determined the Device number byte (3rd from left). It all looks correctly entered to me.


1 Like

Hi Dave,
I appreciate your effort to help me so much!! Thank you! It is possible that I made some silly mistake or maybe there is a Yamaha special trick we both couldn’t reveal … I’ll going through all the details again this afternoon and I will ask a Yamaha forum specialist about YamahaSpecialStuff and some dirty sysex tricks :wink:
Best regards from Cologne


So I assume the problem is still getting Cantabile to recognise and send the message? I’ll do some experimentation tonight on my system if you are still having trouble. I could try and see if I can get my Motif Rack ES to change modes from a Cantabile message. The command structure for the Motif Rack ES looks the same.

From the screenshot above I note that it is still (in my opinion) the wrong message to send (see my post above for what I think is the right message)

Whilst I don’t have a MOXF, all Yamahas receive SYSEX by default. The only thing to ensure is that the SYSEX DEVICE NUMBER (not MIDI CHANNEL) number match otherwise the message is ignored.

Dave is correct above, the least significant nibble (bottom four bits) of the 3rd byte is the target SYSEX device. In this case a value of 0x0 is Channel 1.

So your MOXF SYSEX DEVICE NUMBER, which is set under the MIDI page in utility mode (see page 147-148 of the PDF manual) needs to be either set to 1 or ALL to receive the messages. Just checking the MOXF manual there is also an option for OFF, which you obviously do not want.

PS: There are a few MOXF users over at Yamaha Musicians who may have some insight on the MOXF in general.

1 Like

Hi Derek,
thank you for not leaving me alone, too :slight_smile:
I’ll test your advices this afternoon/eventing and will reoprt as soon as I can … meanwhile I asked this question in the Motifator Forum, too and I hope that grandmaster “Bad Mister” or one of the other Yamaha-Gurus will notice it :wink: - have a nice day!

Ok, my curiosity got the better of me, and I decided to have ten minutes with a cup of coffee before starting my DIY duties for the day! This is the first time I have tried sending SYSEX from Cantabile, hence my curiosity!

The following works with my Motif Rack ES, which, other than different device IDs looks very similar to the MOXF in terms of MIDI structure

  • The Motif Rack ES has a model ID of 7F 00
  • The MOXF has a model ID of 7F 1C 00

Other than that, the MOXF sysex message is identical to the Motif Rack ES SYSEX message
First the binding, which I just set to a PC keypress

And the SYSEX Message. I found that it didn’t matter if you have spaces in the string or not, but it is of course easier to parse if you have the spaces in.


In the example, the 03 value in the last byte is selecting Multi mode (would the rack equivalent of Song Mode). 00 selects voice mode, and 01 selects performance mode.

So, my summary is that if you get the right SYSEX message all should work. From my reply above, I believe that the right SYSEX string for the MOXF is

F0 43 10 7F 1C 00 0A 00 01 XX F7

Where XX is the value from the table (see my first reply) to select the mode

I can’t see why Cantabile does not like the strings you are entering, so that is one for @brad

1 Like

Yeah, looks strange. I just typed in Christoph’s sysex string in my Cantabile, and it generated no errors, so the parsing error looks suspicious.

@CologneKeys: have you tried retyping the string from scratch - maybe there’s some hidden character, shift-space or other nastiness? Best is to start with the string x"F0" (including the closing quotation marks), see if it parses all right and then add the next bytes one at a time to find out where the offender sits. If even the x"F0" doesn’t parse correctly, there must be something wrong with your Cantabile installation - that would be one for @brad




Hi Torsten,
nice to meet you here! It’s a pity but I have to report an ongoing obscurity. After your hint I de- and reinstalled Cantabile but it didn’t change anything. The parser-error occurs right after typing “x” …

Maybe we finally should call for B-R-A-H-AAAAAAAA-D

still curious …

P.S.: letters and symbols throwing errors, numbers don’t …

Hmmm, even more curious - when I type just the x into my sysex window, I get a different error message:

"Error in sys-ex data: Unresolved identifier in expression: 'x'"

which in itself looks kind of logical, since there is no string after the x. But when I add “F0” to make the total x"F0", things work out nicely. But the “unexpected error parsing binary data” looks kinda strange…

Just to compare: I’m running Cantabile Performer x64, build 3552. What are you running?



1 Like

Hi Torsten, I’m using Cantabile Performer x64 as well but build 3213 after reinstalling - I don’t remember what I used before but I think I was up to date. I’ll update now. …

now I’m running build 3552 and I get the same error message you described - very tricky …

OK, so you get the “unresolved identifier” now? Then what about when you enter x"F0" now?

1 Like


Hi Torsten,
after another absolutely clean reinstallation of C3 all seems to work fine! I’ll do some further testing but I think thats it!
Thank you (and Dave and Derek, too) so much! I lost my ambition to understand everything whats going on with bits and bytes, the main point is: it works.
Have a nice weekend
Cheers :smiley:


Hi, Christoph,

So do you have the SYSEX in Cantabile switching modes on the MOXF? And was it the command string I supplied?

Always good to now the resolution, not just for the dopamine hit :wink: , but also because it helps other people who are looking to resolve the same issue. :slight_smile:

1 Like

Hi Derek,

you were perfectly right with your advice concerning the SysEx Messages of the MOFX and you are absolutely
right in what you wrote about summaries :slight_smile:
So I’ll do my very best (sorry for some ‘germlish’ constructions or vocabulary …)


System: Windows 10 Pro, Intel Core i5, 3.2 GHz, 16 GB RAM, Cantabile C3 Performer, Build 3.2.xx?

Purpose: Changing Yamaha MOXF modes (Voice, Performance, Pattern, Song, Master) via the following SysEx messages

F0 43 10 7F 1C 00 0A 00 01 XX F7 = General construction, where XX is the variable for selecting the mode

F0 43 10 7F 1C 00 0A 00 01 00 F7 = Voice Mode
F0 43 10 7F 1C 00 0A 00 01 01 F7 = Performance Mode
F0 43 10 7F 1C 00 0A 00 01 02 F7 = Pattern Mode
F0 43 10 7F 1C 00 0A 00 01 03 F7 = Song Mode
F0 43 10 7F 1C 00 0A 00 01 04 F7 = Master Mode

Problem: The MOFX didn’t react on receiving the supposed appropriate SysEx messages. Writing the SysEx message results in a parser error message.

Issues in the path of solution:

  • first of all the SysEx I initially used haven’t been the right ones :frowning:
  • the Cantabile SysExData parser requires the input-form: Letter x followed by SysEx Data starting and ending with double quotes, for example: x"F0 43 10 7F 1C 00 0A 00 01 00 F7" for voice mode
  • nevertheless the parser threw an error

Update to Cantabile Build 3551 (needless to say after backing up all data! and deinstalling the former version of C3). This solution is probably caused by my personal configuration and not by Cantabile because it seemed to be a very solitary and personal problem :sweat_smile:

Eventually I’m able to change MOXF modes via SysEx messages, for example on song load.
The following choice of bank/program numbers is done via simple MIDI bank/program change commands.

Thanks again for all the helpful advice!
Regards from Cologne


Hi, Christoph

Thanks for that, detailed write up (in very good English). it is good to hear you have it working, and I am sure that will be helpful for others as well.

It was good for me, as I hadn’t experimented with sending SYSEX in Cantabile before, so it was a good exercise to learn how to do that, as I am sure I will need to do the same at some point. :slight_smile: