Last Updated:

C u b a s e   S X   M i d i   D e v i c e   P a n e l s 
S o m e   T i p s / H o w  T o . . .


It seems that there are lots of confusion for people when creating panels.
I try to help answering some questions on the Cubase forum, but usually it's hard to describe something and can cause further confusions.

I decided maybe I should put up a page, and slowly adding some screen caps on some notes / tips / how-to's in creating panels, since, not until Steinberg gives us full documentations, we're pretty stuck and the only way to find out about things are by trial and error.

There are quite a few basics and intermediate things I thought I should put here, but currently I'm on working on some projects, so I can't mess around and take screen-caps, so things maybe added here slowly.

Please note:
I can't guarantee all the stuff I write here are correct. I maybe wrong in some stuff!!



TIPS / INFO on these pages:

On this page:  Initial Settings | Patch Banks | Defining ParametersDefining SysEx | Panel-in-Panel | Copying Workarounds |

On Page 2: Copying Patch Names across different XMLs (external TEXT Editing)

On Page 3: Copying Parameters across different Panels (Drag & Drop Subnodes)

On Page 4: Creating & Defining "Proper/Better" SysEx Strings

Last Updated: 2006/02


Q U I C K   J U M P

  | Top | Initial Settings | Patch Banks |
| Defining Parameters | Defining SysEx | Panel-in-Panel | Copying Workarounds |



Initial Settings

To create a new panel, Open Midi Device Manager, click on the Install Device Button, then the Add Midi Device pane will pop up. This usually lists all the patch names .txt scripts you have. But at the top there is the "Define New..." option.

By clicking OK, it'll then take you to the Device Definition pane.

Usual setting...for all channels.

This usually is where things get confusing, and tends to lead to a lot of things not working afterwards.
Real problem is, when you click Create New Device, this is THE ONLY PLACE where you can set these parameters. Once set, there's no going back to change them.

Enter the NAME for the device you're creating at the top.
Next, it's the very important Channel Settings.
How exactly do these 2 selections (Identical / Individual) affect the parameters are not properly/well documented.

Usually one would want to create a Device Panel that could work on any midi channel, so when sharing with other people, or when you change your setup, the panel would still work on any user selected midi channel.
This is done by checking all the 16 midi channels ON THE LEFT (Identical Channels).
By doing this, any parameters you define in any Channel node, will automatically be created across all 16 channel nodes.

Individual Channels I've never really used.
But I guess it's useful for some synths where there is a dedicated channel for specific parameters (eg the Roland JP8000).  If I understand correctly, When channels are checked here, parameters in those channels are fixed to that channel.

NOTE ABOUT Individual Channels

I started to understand more about Individual Channels.
If you have a Multi-Timbral device, you're probably better checking ALL the Individual Channels rather than al Identical.
Checking ALL 16 Individual Channels, the Midi Device Manager will still create identical Parameters across 16 channels, but the Channel node are independent of each other.

This is also needed, if your instrument can have different Patch Bank for different midi channels. (Otherwise the Bank Assignment would not work as expected).

Check "Channel Parameters" - this would place the variable ''Channel'' across the channel nodes.

All the other options, if checked, would appear as a parameter across each channel node.
eg, if you check CC07 Volume, then a Parameter CC07 Volume will appear across all channel nodes.
It is the same as adding it manually at the parameter page, but I guess Steinberg provide some common settings here for faster/easier creation of common parameters.

If your synth has presets and you want to select defined Patch Names in the Inspector, then check Preset References. Otherwise, check Snapshots for pure Snapshot settings only.

GLOBAL SETTINGS - SysEx Parameters
I'm not sure exactly what or how this affects the nodes, I'm guessing, it allows you to select any SysEx strings that were already defined. Usually I just have this enabled.

This again is where it confuses things.
I just usually have it checked. I presume it's for allowing storing Snapshots.

Clicking OK will then bring up the Main Device Panel page.


Q U I C K   J U M P

  | Top | Initial Settings | Patch Banks |
| Defining Parameters | Defining SysEx | Panel-in-Panel | Copying Workarounds |



Patch Banks

Usually after I've defined the Device, I'd deal with the Patch Banks first before I start messing about with the actual device panel creations. This is because after you've done this, you can export a safe copy of the XML and then continue to work on the Device Panel, and if anything goes wrong, you can always go back to this safe copy patch names only XML and start again from there.

To access the Patch Bank page, you select it from the drop down next to the blue 'e' button:

This will bring you to the Patch Banks editing page:

From here you can define your patch banks/presets.
Problem is you can't import patch scripts from here. (It'll be a nice feature if they can add it here).

With ENABLE EDIT checked, you can select commands from the dropdown, creating new presets or new folders inside the bank.

Or, you can right-click any on the Bank name and select these options too.

By Add Multiple Presets, you'll be brought to a new window, where you define how the presets are selected.

Right-clicking on the area under Midi Message Name, would brought up a load of options, where you can define what parameters are to be sent when a preset is selected.
If you select 0-127 for the program change RANGE, then, multiple presets (in this case 128) will be created, with the prefix name same as what you put at the Default Name box below. So your presets will become Name 0, Name 1, ... Name 127 or Preset 0, Preset 1, ..., Preset 127.

I don't wanna go into great details here. But this is how preset selections are defined.
Multiple messages can be set here, so for some devices like the Oberheim Matrix 1000, which requires two more Midi CC parameters to change BANKS, can be defined here.

Note that these Preset Midi Message Parameters can also be selected or modified when you highlight any presets on the left, the same list would appear on the right pane.


Q U I C K   J U M P

  | Top | Initial Settings | Patch Banks |
| Defining Parameters | Defining SysEx | Panel-in-Panel | Copying Workarounds |



Defining Parameters

Additional notes on parameters and so on.


Defining Parameter:
Note that mathematical formulae can be used for the formula values..
** However, currently there seems to be a bug if the formula is with the actual 'x' value. **
It gets calculated but not transmitted correctly. Sometimes works and sometimes don't.
BUT, I found that this only applies to the 'x' value. 
If there are other variables/values needing a formula, it works.
(eg. if you want the Channel formula = (channel+1), this would work, since this is not at the last sending 'x' value.
For using formulae in the 'x' value, i guess u just need to test and see if it works or not.


Q U I C K   J U M P

  | Top | Initial Settings | Patch Banks |
| Defining Parameters | Defining SysEx | Panel-in-Panel | Copying Workarounds |



Defining SysEx

How to define SysEx strings and some info explained.

The Define SysEx Pane


Removing any selected Value,
you can then enter the value on top, either as HEX or DEC or Binary.
SysEx String defined, with a Value named "Parameter" - so you just need to change this parameter value instead of re-defining extra SysEx strings for every parameter.
Three SysEx Values defined in this case, as Channel, Tone and Parameter.
Entering 'channel' under formula, will allow the SysEx string to follow Cubase Midi Channel.

OK. I've written up detailed info on how to create SysEx strings (properly).
Please see the Create SysEx page!


Q U I C K   J U M P

  | Top | Initial Settings | Patch Banks |
| Defining Parameters | Defining SysEx | Panel-in-Panel | Copying Workarounds |



Panel in Panel

If you've defined a few Inspector Panels or small panels, or if you just want a ghost copy of the panel, you can easily do that without the need for copying all the objects and re-assigning the parameters.

Add a new panel, which would then be your main large panel, for example.
Then go into the panel editor page. Define/enlarge the area/size of your panel.

On the left, expand the nodes, highlight the node so that your other inspector panels or small panels are listed under VIEWS at the bottom left.
You can then DRAG this name and DROP it to the main editor area.

It's not easy to explain this in words, so I've made a small animated GIF:

So you can combine any panel or multiple panels into any panel.

OK, just found that (with the help from Doug from the forum) this only works if the panels you're dragging from are one level down in the a subnode. Or, the panel you're dropping to is one node level above.
i.e., you can't do drag & drop between panels on the same node.



Q U I C K   J U M P

  | Top | Initial Settings | Patch Banks |
| Defining Parameters | Defining SysEx | Panel-in-Panel | Copying Workarounds |




Copying Workarounds

How to copy defined patch names across different XML and how to copy node paramters from one panel to another.
Very useful if you need to restart/re-do a panel, to correct the initial settings, or you want to combine patch names only XML and an XML that has a panel.
You've got a patch name script (.txt). And you've created a Midi Device from that, with thousands of patches defined. Then you wanna add in a panel.
But when you define any parameters in the channel nodes, it only appears in 1 channel node and not across all 16 channels. (Since, for XML created from Patch Name Scripts txt files you cannot access the initial setting page, and it defaults to NOT having any identical channels.)
Or, you have a device with a panel done, and you wanna copy the patch banks from another patch names only XML.
With a little care, you can define a new device, with all 16 channels identical checked, then export the XML.
Then using a text editor, you can copy certain text/info from the other XML that has all the patch names, and paste them into this new XML.
See the XML COPYING Page
You've started defining Parameters for your panel, you've done like 60 or so parameters, the you realised you've defined the initial settings wrong, so you'd need to restart a new one, and have to re-define all those parameters again.
With a little care, you can open 2 devices, and do a drag and drop of a sub-node containing parameters from one device to another. (It's buggy, and also I don't think it's supposed to allow this, but it's a very time saving workaround).
See the Parameters COPYING Page

More Coming Soon...



Q U I C K   J U M P

  | Top | Initial Settings | Patch Banks |
| Defining Parameters | Defining SysEx | Panel-in-Panel | Copying Workarounds |





Don't email me about any panels not working properly or asking for a bugfix!
Honestly, I made these for my own use and I thought
I should share them for anyone who can also make use of them!
But, in any case...


Home Cubase SX Panels SX Panel Help XML Copying Parameters Copy Create SysEx