mySoftware [Updates]

Once you create a user profile on Motifator and update with the appropriate information, the updates shown here will be specific to you.

rssFeeds [Syndicate]


forumforum
 

Old Motifator threads are available in the Archive.

Viewing topic "Sysex code for OSC Waveform?"

   
Page 1 of 2
Posted on: February 13, 2015 @ 09:32 AM
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!

  [ Ignore ]  

Posted on: February 13, 2015 @ 12:35 PM
Jim Shoe
Avatar
Total Posts:  62
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!

  [ Ignore ]  

Posted on: February 13, 2015 @ 04:10 PM
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

  [ Ignore ]  

Posted on: February 14, 2015 @ 06:41 PM
GravitonBlue
Avatar
Total Posts:  120
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.

Yamaha Support

Select: “Pianos & Keyboards”, then “Synthesizers/Workstations”, then select your model.

Hope that helps.

File Attachments
Motif XS Data List.zip  (File Size: 908KB - Downloads: 883)
  [ Ignore ]  

Posted on: February 15, 2015 @ 11:17 AM
DavePolich
Total Posts:  6820
Joined  07-27-2002
status: Guru

Sorry, there is no sysex code for changing an oscillator waveform.

  [ Ignore ]  

Posted on: February 17, 2015 @ 11:02 AM
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.

  [ Ignore ]  

Posted on: February 23, 2015 @ 09:32 AM
DavePolich
Total Posts:  6820
Joined  07-27-2002
status: Guru
zamise - 17 February 2015 11:02 AM

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.

Seriously, there is no sys ex code to change a waveform. For any synth. How could there be?
Every synthesizer has anywhere from 10 to thousands of waveforms, and they are all different. And a voice (program, patch, whatever you want to call it) can contain anywhere from two to eight oscillators. Each oscillator is assigned a waveform.

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
make my ‘Jump’ synth brass sound change to a dark synth pad”.

  [ Ignore ]  

Posted on: February 24, 2015 @ 08:35 AM
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.

  [ Ignore ]  

Posted on: February 24, 2015 @ 08:49 AM
DavePolich
Total Posts:  6820
Joined  07-27-2002
status: Guru
zamise - 24 February 2015 08:35 AM

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.

Although I returned my CS6X over a decade ago, I did some programming on it for Yamaha.
I can tell you flat out, without a doubt, with 100% authority, changing a waveform does NOT send out sys-ex message. Why? Because you are scrolling through a list using either a jog wheel or up/down buttons and these do not send sys-sex, they are multi-purpose hardware controls that can address a bunch of different things depending on what mode you are in.

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.

  [ Ignore ]  

Posted on: February 24, 2015 @ 01:43 PM
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
11110000 F0 Exclusive status
01000011 43 YAMAHA ID
0001nnnn 1n device Number
01100100 64 Model ID
0aaaaaaa aaaaaaa Address High
0aaaaaaa aaaaaaa Address Mid
0aaaaaaa aaaaaaa Address Low
0ddddddd ddddddd Data
||
11110111 F7 End of Exclusive

‘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

  [ Ignore ]  

Posted on: February 25, 2015 @ 07:51 AM
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…

  [ Ignore ]  

Posted on: February 25, 2015 @ 08:23 AM
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
01000011 43 = YAMAHA ID
0001nnnn 1n = Device Number n = always 0 (when transmit),
n = 0-F (when receive)
01001100 4C = Model ID
0hhhhhhh hh = Address High
0mmmmmmm mm= Address Mid
0lllllll ll = Address Low
0ddddddd dd = Data
: :
11110111 F7 = End of Exclusive

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.

  [ Ignore ]  

Posted on: February 25, 2015 @ 10:43 AM
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
11110000 F0 Exclusive Status
01000011 43 YAMAHA ID
0001nnnn 1n Device Number
01101010 6A Model ID
0aaaaaaa aaaaaaa Address High
0aaaaaaa aaaaaaa Address Mid
0aaaaaaa aaaaaaa Address Low
0ddddddd ddddddd Data
| | |
11110111 F7 End of Exclusive
For parameters whose data size is 2 or 4, data for the corresponding size will be
transmitted.
For the Address and Byte Count, refer to the separate table.
The RS7000 receives all device numbers, and transmits these messages with n=0.
The following four types are received.
System Data
Effect Data
Multi Part Data

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…

  [ Ignore ]  

Posted on: February 25, 2015 @ 11:14 AM
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.

  [ Ignore ]  

Posted on: February 25, 2015 @ 11:19 AM
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.

  [ Ignore ]  

Posted on: February 27, 2015 @ 09:54 AM
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.

  [ Ignore ]  


Page 1 of 2