Old Motifator threads are available in the Archive.
tuzmusic
Total Posts: 67
Joined 04-04-2007 status: Experienced |
So after many helpful answers from forum members, it is clear that the way to change between voice and perf mode, and accomplish a number of other functions, from a “master” MIDI keyboard, is with SysEx messages. On my Kurzweil PC3 the best way to send these messages is to have them in a MIDI sequence (song). SO, does anyone maybe have these and/or other messages conveniently contained in songs? Otherwise I guess I’ll have to learn to do that myself, which seems really hard :P Thanks! |
bgrosse
Total Posts: 465
Joined 07-06-2009 status: Enthusiast |
Bad Mister will have to clarify this, but my experience has been that the Yamaha keyboards filter out sysex messages received from other manufacturers and will not transmit them either, even if they are already contained in the MIDI file. So if the MOX will only recieve and transmit Yamaha-identity sysex, it is likely the PC3 will act the same way and only transmit it’s type sysex.
The sysex you need is found in the Datalist for the MOX
Bill |
ThrashJazzAssassin
Total Posts: 42
Joined 10-01-2011 status: Regular |
To change mode on a MOX, send the following sysex message F0 43 10 7F 14 0A 00 01 nn F7
Where nn is either :
Then you can send a MIDI program change to select your required patch.
F0 43 10 7F 14 0A 00 00 nn F7 Where nn is the master mode patch |
tuzmusic
Total Posts: 67
Joined 04-04-2007 status: Experienced |
Sounds like a very knowledgable answer but boy do I hope you’re wrong. Grrrr. |
tuzmusic
Total Posts: 67
Joined 04-04-2007 status: Experienced |
I know what the messages should be I just can’t seem to create a MIDI file with them correctly. I was hoping someone would have it already done. |
Bad_Mister
Total Posts: 36620
Joined 07-30-2002 status: Moderator |
Fortunately, it is indeed wrong. (lol) There is an exclusivity about some of the messages but that should not prevent one manufacturer from sending a message to another - the whole concept is so THAT very thing CAN HAPPEN! While many musical devices default to filtering SYSTEM EXCLUSIVE messages - by their nature these messages are exclusive to the device that that they are set to communicate with… thus the name. The MOX does not default to filtering any System Exclusive messages… that is just not the case. Some software does - check your documentation per product. Like a smart bullet, once you set the target the SYSTEM message is ignored by all other targets and finds its way to the device and parameter it is supposed to address. That’s the “Exclusive” part of the deal. Here’s how it works: The “F0” Start of Exclusive messages alerts all products in a MIDI system that here comes a very important message. The next BYTE “43” is the Manufacturer’s ID follows. Since Yamaha’s Manufacturer ID is 43 (read: Four-Three) Now only Yamaha devices in the system will continue to pay attention. That number eliminates all other manufacturers from reading the rest of the message. They simply say “Oh, it’s not a message for me.” Had the Manufacturer’s ID been a different number, then Yamaha would ignore the rest of the message. All the data from here on is up the individual Manufacturer anyway… (so it would be random and unintelligible to any other company’s product anyway.)So anything after this is up the company that wrote the codes. The “10” - The “1” tells us that it is PARAMETER Change message and the “0” tells us it is for the first device of its kind. That second character is the Device Number (0-F)
The “7F 14” - is Yamaha’s Product ID for the MOX6/MOX8 specifically. It tells us what kind of product. If you have more than one MOX, you could define each one individual using the Device Number in the previous Byte (yes, you can only address 16 MOX’s discreetly in one system).
“0A 00 01” - is the High, Mid and Low Address and these define the exact parameter for the message. In this case it tells the system of the MOX to get ready for a message that will create a PARAMETER Change to Change the current MODE.
“nn” - is a wildcard that represents the DATA BYTE - the actual message that makes the Change… in this case if you replace ‘nn’ with “00” you will evoke a Change to VOICE mode
“F7” - is a universal End of Exclusive message so all devices can get back to what they were doing. Like any good communication via coded messages it is the “sign off” SYSTEM EXCLUSIVE messages are required reading for all devices in a MIDI System. To have a unit ignore a SYSTEM EXCLUSIVE message you would have to set a parameter telling it specifally to ignore the messages or you would have to have something FILTER it out. One manufacturer’s message would be totally meaningless to another. But you can certainly write messages for Roland, Korg, Kurzweil, Kawai, or any product that is apart of the MMA (MIDI Manufacturer’s Association) and have them in your MOX sequencer. They would be meaningless to any other product but the one defined in the message. The message changes the Mode, it does not tell it where to go once in that mode. This is where the SEQUENCE part of the thing comes in - you would need a message, following the mode change message that tells the device to go to a specific program in that new mode. It needs to be physically positioned after the mode change. The sequence or order in which the message is received is important. If you sent the Program Change before the Mode Change, for example, that would be wrong. You want to change the MODE then change the PROGRAM. Make sense? There should be nothing that prevents you from typing SYSTEM EXCLUSIVE messages into the MOX sequencer to control other manufacturer’ products and vice versa, if you want to control the MOX from an external device, there should be nothing (except the knowledge, check your instruments documentation) that would prevent you from sending it from your Kurzweil (they belong to the MMA!) :-) Hope that helps |
tuzmusic
Total Posts: 67
Joined 04-04-2007 status: Experienced |
Yes, that helps, thanks. Is there a place in the MOX where you can tell it to send SysEx messages with each button press? That way it would be easy to record directly. Searching the manual for “SysEx” brought up, among other things, a spot about a Utility page called “SEQ” which I swear doesn’t exist in my unit so I wonder if I’m missing something. |
Bad_Mister
Total Posts: 36620
Joined 07-30-2002 status: Moderator |
No. The only place you can write and send System Exclusive messages is from a Track of the sequencer. The message can be placed on a Track. To Send it you must run the sequencer.
You will hear this many times: The operating system of the MOX is ‘context sensitive’. What this means is you will only see certain options only when the conditions would apply. For example, you will only see “[F2] SEQ” on a button when you enter UTILITY from a MODE that accesses or can access the Sequencer.
There are four main MODES:
Only three of these can access the SEQ directly: PERFORMANCE, SONG and PATTERN. So you will only see SEQ as an option above the [F2] button when you are in one of these modes. So Sherlock Holmes would conclude, that you must have been in VOICE mode when you are looking for the UTILITY page - in which case [F2] would have read “VOICE”, not “SEQ”. (Sorry, just saw the Holmes movie on a flight from NY to LA and his logic is inescapable...) :-)
PERFORMANCE mode can access the SEQUENCER in a RECORD only direction. While SONG and PATTERN are the principal SEQUENCER modes, of course.
Go to [SONG] mode
Messages can be timed to occur anywhere in the Track. You do have to press the PLAY button. Not sure of your application but those are some things may help you. (While System Exclusive messages can do many things - they cannot do everything. For example, no, you cannot have the MOX switch modes with a message to itself in this manner. That is illogical. The MOX cannot switch modes while the Sequencer is running (simple enough). Same as you cannot put a START message in a track of a sequence (it’s simply illogical), ...just as you cannot arrive before you get there)… etc. :-) |
tuzmusic
Total Posts: 67
Joined 04-04-2007 status: Experienced |
|
Bad_Mister
Total Posts: 36620
Joined 07-30-2002 status: Moderator |
Correct-a-mundo |
bgrosse
Total Posts: 465
Joined 07-06-2009 status: Enthusiast |
BM, My experience with the Tyros 3 keyboard is that it will not transmit a non-Yamaha sysex message. We have tried loading MIDI files containing other than Yamaha identity sysex messages for use in controlling external MIDI devices and the message are not transmitted while all the rest of the MIDI data is sent. If you know of a way we can make this work on the Tyros keyboards, we would be very greatful for that knowledge. Bill |
tuzmusic
Total Posts: 67
Joined 04-04-2007 status: Experienced |
I just realized that among the many things that might be going wrong, maybe the Device ID is an issue. If I’m sending to the MOX from my PC3 (i.e., not another MOX), do they have to have different device numbers (and my entire rig is those two keyboards? If not, and they can both be set to 1 (which I’m guessing they are by default), I guess using the example messages above should work. |
Bad_Mister
Total Posts: 36620
Joined 07-30-2002 status: Moderator |
The Device Number is not the issue. It allows you to differentiate between products with the same Product ID and Manufacturer ID as I mentioned above. The Kurzweil will have a different Product and Manufacturer ID. If you had two MOX you could address each one separately using Device Numbers. |