Old Motifator threads are available in the Archive.
zamise
Total Posts: 17
Joined 11-04-2007 status: Regular |
Is there a SysEx code for changing waveforms in the voice elements and if so what is it? Thanks! |
Jim Shoe
Total Posts: 71
Joined 06-18-2014 status: Experienced |
Hi zamise! Welcome to the wonderful world of MIDI! I have been using MIDI since it first came out and beyond. If someone out there knows of a new code for waveforms, feel free to let us know. As far as I have experience, codecs for MIDI data are mainly for GM numbers, volume, aftertouch, velocity, etc. There are a lot of things codecs address but how would it actually know what waveform you are specifying? I would advise to go to the MIDI.org website and learn more about MIDI there. Good luck in your MIDI wonderland! |
zamise
Total Posts: 17
Joined 11-04-2007 status: Regular |
Hi Jim, System Exclusive messages are bit different than Midi if you didn’t know already they use the Midi cable but the language is not really standardized across various platforms like Midi, it is exclusive to the system, hence the name SysEx. Right? Problem is majority of anything interesting is pretty much undocumented and proprietary to most individual units, however I know Yamaha uses some common ones and after reading about the ability for a Yamaha CS6X to be able to swap out OSC waveform and do some funky panning etc., on the element level which MY RS7000 can’t, I was hoping maybe someone here has possibly experimented with capturing the code the CS6X uses, if it spits it out, and used it on their Motifs or if the Motifs have that same ability as the CS6X and have been able to capture a SysEx code. I’d like to see if it’d be possible to use the same code or slightly altered be useful on my RS7000 for swapping waveforms, or adding or removing some strange panning I’ll occasionally hear but have no access to changing it. Sorry for run on sentences, hope it made some sense. Thanks for any help Motifatorers! Zam |
GravitonBlue
Total Posts: 127
Joined 02-14-2009 status: Pro |
Zamise, You didn’t say which Motif you own. I attached a copy of the “DATA LIST” for the Motif XS. It has a listing of all SYSEX data for the XS. On page 66, second column on right is a list of sysex codes for changing “Wave Number MSB” and “Wave Number LSB”. Starting on page 29, is a list of all the waveforms. These codes might be specific to the XS, not sure. Go to Yamaha’s website, to the support section, and select which model you are looking for (Motif, ES, XS, XF, MoX, MoXF, etc.) and download the “DATA LIST” pdf associated with that model. Select: “Pianos & Keyboards”, then “Synthesizers/Workstations”, then select your model. Hope that helps. File Attachments
Motif XS Data List.zip (File Size: 908KB - Downloads: 1913) |
DavePolich
Total Posts: 6820
Joined 07-27-2002 status: Guru |
Sorry, there is no sysex code for changing an oscillator waveform. |
zamise
Total Posts: 17
Joined 11-04-2007 status: Regular |
Thanks for the helps! I checked out the Motif XS Data List and I’ve got to say it is super confusing. It mentions waveforms and elements, but to me it looks more like those are codes for changing the voice banks. I’ve also been looking at CS6X data list and I am seeing code for waveforms and elements, but I’m pretty well confused by it too, it is looking like it might only be changed via a bulk dump perhaps. I wish I could just find someone with a CS6X that could see if it’d spit out a code, or not, just to be sure. Tried the yahoo groups, appears to be two, one is a ghost town the other spam heaven. Where the heck are all the CS6X users hanging out at? I’d buy one if I could find at this point. |
DavePolich
Total Posts: 6820
Joined 07-27-2002 status: Guru |
Seriously, there is no sys ex code to change a waveform. For any synth. How could there be?
I think you are seeking to change a VOICE via syses. Not a waveform - that is something you do yourself in editing (programming). By hand.
Please tell us exactly what it is you are trying to accomplish. For example, “I am trying to
|
zamise
Total Posts: 17
Joined 11-04-2007 status: Regular |
Nope sorry, I’ve no problem changing voices. I guess really at this point, what I’m looking for is someone with a CS6X/CS6R who is willing and knows how to see if changing the waveform parameter on it, will or won’t spit out a sysex code via midi. And, if so share the code with me. I just thought perhaps a Motif user might have already ran across something like this before, and can verify the existence of a CS6X code for that parameter since it is an actual editable parameter on that machine, and perhaps maybe also tried it on their Motif. It is hard to find any CS6X owners, then also being capable of pulling and verifying sysex codes from it, I thought I’d give it a shot on this forum. You guys helped me find undocumented codes before, well once for switching AIEB2 ouputs remotely in place of track mutes. |
DavePolich
Total Posts: 6820
Joined 07-27-2002 status: Guru |
Although I returned my CS6X over a decade ago, I did some programming on it for Yamaha.
If you’re wondering where all the CS6X people are - dude, that synth is way way old. You won’t find too many users here. |
SSquared
Total Posts: 165
Joined 01-29-2014 status: Pro |
Zamise, I have not actually done this with the CS6 (as I have never used one), but I have had success with my Motif-Rack XS and MOXF6. The idea is the same on all of these synths, it’s just a matter of a few different values between one synth and another. Even from the Rack to the MOXF, I had to edit my messages. I use TB MIDI Stuff for the iPad to create my SysEx messages. Below is a walk-through on using the Data List manual for the Element System Exclusive message. Page 29 of the CS6 manual contains the System Exclusive message format.
(3-6-3-2) NATIVE PARAMETER CHANGE, REMOTE SWITCH
‘n’ for the device number I think you can use ‘0’. So your SysEx starts as: F0 43 10 64 Next, comes the item you are interested in changing. Page 34 begins the Normal Voice Element data. This lets you change specific information for an element. The first two items (Wave Number LSB and Wave Number MSB) are the ones you are interested in. Now you can figure out your High, Mid and Low addresses for the next SysEx values. If you look at the first three columns, you will the following High: 41 Mid: ee is your element number, 00 for element 1, 01 for element 2, etc. and Low is 00. So now your SysEx looks like the following (for element 1): F0 43 10 64 41 00 00 Now to figure out the data. It looks like the CS6 uses the values 1-479, with 0 being OFF. The value to use is based on the Wave List from Page 13. For example, use 49 if you want ‘Or Jazz’. I’ve never quite understood this so I’ve kept my data down to 127 or 7F in Hex for the LSB and don’t use MSB. But the data range for both LSB and MSB is 00 – 7F or 0 to 127. I just don’t understand yet how you set your MSB properly. I never spent the time to figure that part out and probably should. At this point, you now have your data. Your SysEx, using ‘Or Jazz’ will look like this: F0 43 10 64 41 00 00 31 To close/end the message you add F7. So the final SysEx will look like: F0 43 10 64 41 00 00 31 F7 Requesting the value from the synth is a small change. If you look again at page 29, you will see the format for a Parameter Request. It is similar to the Send, but without the data. The small change is in the Device Number (a 3 instead of a 1. So to request the value for element 0 I think you use the following: F0 43 30 64 41 00 00 F7 |
zamise
Total Posts: 17
Joined 11-04-2007 status: Regular |
Thanks SSquared. That code and your explanation looks like something I understand and can give a try out. I’ve got a feeling the osc waveform assignments on my RS are hard coded and unchangeable and the sysex code likely won’t do anything, but I want to actually give it a try before I dismiss it as being a completely silly idea, that perhaps they just forgot to mention this ability to us in the RS’s manual/data list… |
SSquared
Total Posts: 165
Joined 01-29-2014 status: Pro |
Ooops. I misunderstood and wrote it for the CS6. If you need it for the RS7000, you will need some different values. Page 71 of the Data List manual describes the System Exclusive Parameter change like this:
11110000 F0 = Exclusive status
I’m not sure, but page 64 MIDI Parameter Change table (MULTI PART) might be the section you need to change the waveform. Look at Element Reserve and the Bank Select MSB/LSB and Program Number. Maybe those having something to do with it. EDIT: Just to re-iterate from something I mentioned yesterday, you are unable to use one set of data for a different synth. First the Model IDs between synths of the same manufacturer (Yamaha ID is 43 and unique to Yamaha) will be different. Notice the CS6 Model ID is 64 while the RS7000 is 4C. But also the High/Mid/Low addresses are different across synthesizers. Even between the families of Motif synths, the Model IDs and addresses are different so I can’t use the same SysEx between my Rack-XS and MOXF. If synths had the same model ID, then multiple synths will change parameters, which is not what you want to happen. So you really need to know the specifics for the exact synth you are interested in. |
zamise
Total Posts: 17
Joined 11-04-2007 status: Regular |
Thanks again SSquared. It looks like the RS’s Model ID is 6A. I’m not at my RS to confirm at the moment, but looking over some archaic info I thought I’d never need or use in the RS manual I ran across this set of info that looks similar to yours:
PARAMETER CHANGE
A page or so below this info there is a table for multi part groups Parameter Base Address that lists High Mid and Low top address… very interesting… |
SSquared
Total Posts: 165
Joined 01-29-2014 status: Pro |
Cool. If you have the exact manual that came with your synth, then yeah. That looks like 6A is what you need. Looks like I was using the wrong manual this morning as my search for ‘Yamaha RS7000’ is bringing up a completely different instrument now. I must have searched for the wrong thing this morning. Sorry about that. Looking in the correct manual, maybe page 330 is the data for changing the waveform. |
zamise
Total Posts: 17
Joined 11-04-2007 status: Regular |
High address on the RS only goes up to 14 according to the RS manual, no 41 wave select msb/lsb. I think that is what I’ll have to give a try out, maybe play with higher numbers like 41 to see if actually affects anything. |
SSquared
Total Posts: 165
Joined 01-29-2014 status: Pro |
Hi. This thread inspired me to get back to working on a mini MOXF Editor (I haven’t really done much with it in probably 9 months). As I was scrolling through my iPad I ran across ‘MIDI Tools’ which I had completely forgotten I even had. I loaded it up and as expected, it shows me the SysEx data as I make changes. Changing the waveform gave me the exact message. Wave 127 is ‘00 7F’. Wave 128 is then ‘01 00’. I figured it might work that way, but never really dug into it until today. So once you hit hex 7F, you increment the first byte and restart the second byte at 0. This tool will be extremely helpful. I reference SysEx in the manual quite a bit, but there is so much flipping back and forth and trying to find the exact value you want to change. If you have a computer/iPad, you might want to use a similar tool to see what values your device is sending when you make those changes on the board itself. I looked it up and apparently the developer just recently released a new version called ‘MIDItools Plus’ back in January. http://appshopper.com/music/miditoolsplus Something similar on Windows is MIDIOX (http://www.midiox.com/). I don’t know what is available for Macs. |