fbpx
Skip to main content

MIDI Forum

Help sysex Yamaha C...
 
Notifications
Clear all

Help sysex Yamaha Cp33

13 Posts
3 Users
0 Reactions
19.1 K Views
Vincenzo
Posts: 6
Active Member
Topic starter
 

Hi, I would need to know how to make a SYSTEM EXCLUSIVE MESSAGES string to send to the Yamaha CP33 via MIDI, to change REVERB effects (eg: ROOM, HALL1 etc.) and EFFET (ex .: CHORUS, ROTARY SP etc.)
Example: F0 43 73 ......F7
thank you

 
Posted : 16/03/2018 11:24 am
Geoff
Posts: 1040
Noble Member
 

This is a rather steep request.

I guess you're hoping that someone with a CP33 sees this, and knows all about it.

I assume you've got the CP33 manual, and have all the information to hand, but cannot quite put it all together?

Unfortunately, I don't know anything about the CP33, so couldn't help. I do have a Yamaha MU90r, but I'm sure all the details for the SYSEX commands will be quite different. The MU90r is an XG device, so some of the settings you might want to change can be changed directly via normal midi CC commands. Maybe the CP33 has no such facilities?

I don't know the structure of the relevant memory areas, but depending on which effect parameters you want to change (you don't say) you may need a number of separate SYSEX strings, each changing one or two bytes, to implement each change to any one of the effects. Each string would need the correct address. Certain values may be the same, for example 'Effect Depth' might be the same number for each effect if you were making a similar change to each. Then again, the chart I'm looking at here for my MU90r may be more complex than that for the CP33.

Maybe I could help further if you were to work out a possible string, and post that with notes as to the components. I could tie that up with information that I have.

Geoff

 
Posted : 16/03/2018 12:39 pm
Vincenzo
Posts: 6
Active Member
Topic starter
 

Thanks Geoff for the answer and help.
Unfortunately I tried to read and try to form a string with the values I wanted to send to the CP33 but with a negative result.
Place the manual of the CP33. If you want to spend some time.

 
Posted : 17/03/2018 12:27 am
Pedro Lopez-Cabanillas
Posts: 154
Estimable Member
 

That manual is really XXXX!. I'm not surprised that you couldn't make heads or tails of it. You may want to complain to Yamaha as customer.

The solution is: you need to build your messages according to this type:
10. SYSTEM EXCLUSIVE MESSAGES (XG Standard) (1) XG Native Parameter Change
And then apply the addresses and parameters of this one:

MIDI Parameter Change table (EFFECT 1)
Refer to the “Effect MIDI Map” for a complete list of Reverb, Chorus and Variation type numbers.

I've attached a zip file with a couple of SYX files that I've made for another XG device, which is documented here (much better document than your Yamaha manual, IMO).
https://kode54.net/bassmididrv/BASSMIDI_Driver_MIDI_Implementation_Chart.htm

Regards,
Pedro

 
Posted : 17/03/2018 4:36 am
Vincenzo
Posts: 6
Active Member
Topic starter
 

Thank you, for the example and the link. I have already contacted yamaha many times but only once did he answer me. The answer was "read the manual". 😮 🙁

 
Posted : 17/03/2018 8:25 am
Geoff
Posts: 1040
Noble Member
 

I don't think you've said - even generally, never mind exactly - just what you want to do. I assume there are a number of settings that you might wish to change? Each setting may require different SYSEX data. Can you please select ONE thing that you wish to change, give your initial data, and we'll go from there.

I believe your CP33 is XG capable, so it should have access to some normal controllers that allow some change to be made without using SYSEX. Have you looked into that?

Geoff

 
Posted : 17/03/2018 9:18 am
Vincenzo
Posts: 6
Active Member
Topic starter
 

Hi Geof, I have a device called SIPARIO. http://www.lab4music.it Connected via midi to CP33 and other keyboards.
Through SIPARIO I can send Program Changes and other VOLUME PAN settings etc.
Everything works but I can not change the REVERB effect (eg: ROOM, HALL1 etc.) and EFFET (eg: CHORUS, ROTARY SP etc.) on the CP33
On SIPARIO there is the possibility to send a sysex together with the PROGRAM CHANG.
In this way, when I select a performance, everything is set automatically.
Ex. Fender Piano + Rotary or Chorus effect.
Thk

 
Posted : 17/03/2018 9:51 am
Geoff
Posts: 1040
Noble Member
 

So, let me get this straight.

The problem is with the SIPARIO device, that you did not mention before?

This device CAN send certain controllers, etc, but NOT others, i.e. REVERB and EFFECT. But you CAN make it send some SYSEX.

Is that correct?

You would like to select the reverb TYPE, and the effect TYPE. Correct? Not worried (just now ?) with any of the other settings for reverb and effect. Correct?

This makes things much simpler.

I could now look at your manual with a clearer idea as to what I'm looking for. The examples from Pedro will prob be a help too!

Hopefully, the device can store enough data, but how many bytes of SYSEX can be stored. Would you intend to store two separate strings for reverb and effect, or one combined string? I'd guess that two separate strings would be more use?

Or will you want a separate string for each and every type of the two effects?

Geoff

 
Posted : 17/03/2018 10:36 am
Vincenzo
Posts: 6
Active Member
Topic starter
 

All right, I can send a single string of data length 20 (00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00)

 
Posted : 17/03/2018 10:56 am
Pedro Lopez-Cabanillas
Posts: 154
Estimable Member
 

Thank you, for the example and the link.

Maybe I didn't explain very well. Yamaha XG is a standard, shared by many instruments (not all of then by Yamaha, and maybe only sharing some features).

For instance, the reverb effect "Hall 1" for BASS MIDI and for your CP33 is ALMOST the same. Let's see from page 53:

F0H = Exclusive status
43H = YAMAHA ID
1nH = When received, n=0~F. When transmitted, n=0.
4CH = Model ID of XG
hhH = Address High
mmH = Address Mid
llH = Address Low
ddH = Data
|
F7H = End of Exclusive

Now from page 54:

Address (H) Size (H) Data (H) Parameter
02 01 00 2 00-7F REVERB TYPE MSB

REVERB MSB LSB
ROOM 02H 10H
HALL 1 01H 10H
HALL 2 01H 11H
STAGE 03H 10H
OFF 00H 00H

Now let's build HALL 1 from the previous information:

F0 43 10 4C 02 01 00 01 10 F7

And from the BASS documentation:

Hall 1 F0 43 10 4C 02 01 00 01 00 F7 Reverb simulating the resonance of a hall

Almost the same! I think that from this information you should be able to build the other effects.

 
Posted : 17/03/2018 12:52 pm
Geoff
Posts: 1040
Noble Member
 

Hmm..

20 bytes. That's not much. Do you mean ONE string of 20 bytes, or could that be 2 separate strings of 10 each?

How easy would it be for you to change, say, 1 byte in the middle of the string. So one string for effect, with one byte in it that was the parameter for the Effect Type?

Geoff

 
Posted : 17/03/2018 12:57 pm
Geoff
Posts: 1040
Noble Member
 

So, following on from the last post from Pedro, and the couple of pages in the CP33 manual (which isn't THAT bad, although I say that AFTER Pedro's input)

You need a 10 byte string to do each of the things you've mentioned. A string like this can have a specified number of data bytes, so each 'function' must have it's own string.

The string to set Effect to 'Rotary'

would be:

F0,43,10,4C,02,01,40,47,10,F7

where the 02,01,40 is the address for the Effect Type setting
and the 47,10 is the setting for Rotary (42,10 is for Chorus, 48,10 is for Phaser, 46,10 is Tremelo and 00,00 is OFF) All other bytes are fixed. Change the address bytes for Reverb settings, and parameter bytes as per table in manual

ALL NUMBERS ARE HEX, not decimal.

Is this, with Pedro's comments, any help?

Geoff

 
Posted : 17/03/2018 1:26 pm
Vincenzo
Posts: 6
Active Member
Topic starter
 

Fantastic, everything works.
Thanks to you two I also understood how to build it.
After a year of research and requests to Yamaha and various forums, I found two angels Pedro and Geoff.

 
Posted : 18/03/2018 1:21 am
Share: