Sending the correct SysEx message to Yamaha CP300

4 posts / 0 new
Last post
NMRI
NMRI's picture
Sending the correct SysEx message to Yamaha CP300

I have the BCN-44 and would like to program it with SysEx messages to control advanced functions on the Yamaha CP300.

The manual can be found here;

https://jp.yamaha.com/files/download/other_assets/7/334187/cp300_en_om_c...

On page 129 i would like to be able to control paramaters such as FX return. How do I interpret the co-ordinates in a way that the BCN 44 can use and send back to the CP300?

Many thanks!!!

Below is a SysEx dump generated by the Yamaha CP300  - not sure if this holds a clue to the format????

20:03:40.780 From UM-ONE SysEx Yamaha 14 bytes F0 43 00 7F 04 00 00 00 00 10 00 00 70 F7
20:03:40.784 From UM-ONE SysEx Yamaha 494 bytes F0 43 00 7F 04 03 60 03 20 20 00 00 00 00 00 00 00 00 00 40 01 00 7F 00 00 00 01 00 00 02 00 03…
20:03:41.948 From UM-ONE SysEx Yamaha 14 bytes F0 43 00 7F 04 00 00 00 00 20 7F 7F 62 F7
20:03:41.952 From UM-ONE SysEx Yamaha 14 bytes F0 43 00 7F 04 00 00 00 00 11 00 00 6F F7
 

 

 

Mark van den Berg
Mark van den Berg's picture

The "Type" parameter of a BCN44 button or encoder can be set to "Custom" (at least that's what BCN44 Manager calls it).
This allows you to define any sequence of MIDI bytes, with a maximum of 11 bytes.
Furthermore, an encoder has an "Index" parameter, which indicates the number (1-11) of the byte that will be filled with the current value of the encoder.

So if your examples are representative of the CP300, you're out of luck, since all these examples are SysEx messages of 14 bytes or more.
You could use a Behringer BCF2000 or BCR2000: these allow up to 125 bytes.

NMRI
NMRI's picture

Thanks for your message, 

So if i was to get a  BCF2000 or BCR2000 what would the exact code look like? (how would I translate the information in the table in the manual to specific SysEx messages that would be able to control the CP300? 

thanks again!

Mark van den Berg
Mark van den Berg's picture

So if i was to get a  BCF2000 or BCR2000 what would the exact code look like? (how would I translate the information in the table in the manual to specific SysEx messages that would be able to control the CP300?

On a BCF/R2000 you'd have to create what BC Manager calls "custom output" definitions, using ".tx" statements.
In these ".tx" statements, the current value (or portions thereof) of the BCF/R's button/encoder/fader can be represented by one or more "val..." identifiers.
For the full details, see the BC MIDI Implementation.pdf document (particularly section 14.6), available from the BCF2000/BCR2000 page at this website.
In BC Manager, open the "Custom output" tab of a button/encoder/fader dialog box.

BC Manager has a facility that can sometimes make creating custom output definitions easier:
You first write a "SyxEx model definition file", which specifies the exact SysEx format required by the receiving device, plus a list of the parameters (address, size, range and name) that you wish to support.
Then in BC Manager's "Insert SysEx parameter dialog box" you only have to choose the parameter you wish to assign to a particular button/encoder/fader: BC Manager will create the correct custom output definition, based on your SysEx model definition file. So this saves you from having to manually write the whole complicated ".tx" statement for each individual parameter.
See section 19 ("The Insert SysEx parameter dialog box") of the BC Manager manual for details.

If you have further questions about these definitions for the BCF/R2000, please start a new topic in the B-Control forum.

Hope this helps,
   Mark.