Yamaha MOXF pan instrument Drumkit with sysex

Tags: #<Tag:0x00007f977ad51f60>

Hi, I’m new and need help finding a way to place a sysex event (Yamaha MOXF) at the beginning of a MIDI file to control the panning of a particular instrument within a Drum Kit. Any help would be greatly appreciated.

Hello Antuanium … and welcome to the Cantabile community!

I used to hack MIDI files to augment them with blocks of Sysex setup commands. Since moving to Cantabile two years ago I have learned to use binding to send my sysex commands. For example, you could use the [Song Load] event to send a Sysex out the correct port to your external hardware, or directly to your soft synth to get the effect you want.

I hope this helps!

1 Like

Thanks, but I don’t understand why everyone answers me strange things. I just ask for the sysex code to change the panorama of an instrument contained inside a drum kit. The plan is to put it at the beginning of a midi file and pass it to the MOXF so that every time the Song is played, that instrument will change its pan before starting the Song and stay there for the whole song. When I was working with Yamaha XG, there were some web pages with all the sysex to control the XG synthesizers. Now, that kind of information is no longer useful and the new one doesn’t even exist. The manuals provide cryptic information that is totally impossible for me to decipher…

The information is in the manual found Here on Yamaha’s website.

As for the best method, I also recommend an event binding rather than mucking about with the MIDI file, as it’s much simpler to debug.

Honestly? You ask a question at the Cantabile forum - and you complain if people (and extremely experienced forum members at that) give you Cantabile-related answers…

If you only want details about the sysex logic of MOXF synthesizers, it might be better to ask them at a Yamaha synth forum, no?

Regarding the MOXF drum kit pan: that’s a very specific one - essentially, you need to change a detail parameter inside the drum voice. The data list manual provides information on how to address that specific parameter - look in your MOXF data list for “Drum voice key”. It shows you that you need to construct a sysex message containing the address to that specific parameter, with the specific address bytes being (hex): 47 YY 07 for panning, with a value between 0 and 7F with hex 40 being center. YY is the hex value of the respective note between C0 and C8

It’s all there if you know where to look :wink:

Also, the data list manual shows that a sysex parameter change message looks like this:

F0 43 1n 7F 14 ah am al dd … F7

n seems to be the sysex device number; ah = adress high, am = address middle, al = address low (address bytes see above) dd is the value you want to set.

Again, with a bit of reading the manual, you can find your way through…



Sorry. I didn’t know what Cantabile was, I thought it was some kind of software… Thank you for your reply. I don’t understand what I’m doing wrong, in some sites they say that two sysex messages are necessary, in others, only one, I don’t know if I have to do something in the MOXF so that it receives the sysex messages or if it always receives them by default. Well, I will investigate what you say to see if it works or it is necessary to continue consulting. I insist, the information in the manuals is very confusing, there are no practical examples, and the language is also an obstacle for me. Please excuse me for trying to get to the point, I am beginning to think that the matter is really very complicated.

If you don’t know what Cantabile is, why did you create an account on the Cantabile forum and ask your question here?

Well, you are trying to do something that isn’t so simple - it requires very specific knowledge of the inner workings of the MOXF and of the mechanisms of changing parameters via SysEx commands. I think I gave you very specific instructions above - if you don’t know what to do with them, I suspect your knowledge isn’t really sufficient to fiddle at that level of detail.

I’d suggest you find a friendly expert MOXF user who will coach you through the process step by step - or you bite the bullet and learn it yourself (which can be very rewarding…).

In any case, I’m out of this now…



I repeat that my knowledge about sysex is very extensive, but mostly in the commands to control Yamaha synthesizers through sysex for XG. That’s why it seems to me that they have complicated everything a lot. With XG everything was much clearer.

For example, I have now inserted this exclusive message to try to control the panning of a drum voice, but it still doesn’t work: sysex

It is curious because the Mode Change sysex message works perfectly. The drum kit element alteration messages, none of them work. Neither in Voice mode nor in Song mode.

One thing I have found working with MIDI setup commands to the Yamaha VL70-m: timing can be critical.

If I have a string of setup commands (e.g. set filter EQ, set global transpose, set volume, set reverb return, set chorus return, …) … sometimes one of them will be “dropped”. Since I have each of them as a separate binding in Cantabile, I can insert a timing directive (the little clock symbol to the left of the binding) and … Bingo … it all works. Sometimes it’s 1msec, sometimes it needs more like 5msec.

Not sure how you would accomplish that in a block of SYSEX …

Thank you, but this does not seem to be the case, because the Mode change message recognizes it perfectly…

If you don’t know what Cantabile is, why did you create an account on the Cantabile forum and ask your question here?

I’m so sorry, I didn’t know what Cantabile is. In fact, I downloaded it to find out, it looks like some kind of DAW, but I thought it would be a software specialized in Sysex. It’s not much use to me to solve my problem. I registered because I saw that there were people with the same doubts as me about the Yamaha MOXF sysex and others who helped them to solve their doubts. That’s all.