You are here

Creating A Cubase MIDI Mixer Map For Yamaha SY85, Part 1

Tips & Techniques By Simon Millward
Published June 1995

Cubase's MIDI Mixer Module allows you to create Mixer Maps to help you edit and control your MIDI instruments. In part one of this two‑part series, Simon Millward takes you through the construction of a Mixer Map for Yamaha's popular SY85.

A friend of mine, Bad Apple Sound Studios owner Alex Giorgiou, bought a Yamaha SY85 recently, with the intention of using it as the master keyboard in his North London facility. Being also the owner of Steinberg's Cubase Audio running on the Atari Falcon, Alex decided to integrate the SY85 into his existing MIDI setup by using it in Multi Mode with the sequencer. This gave him an extra 16 channels of multitimbrality, but the system lacked an easy way to quickly set up all the Multi Edit parameters. Doing this on the SY85 itself involved paging through a fairly large selection of menus and peering at the various parameters in small groups. This wasn't very intuitive, and it was difficult to see the current setup as a whole.

When Alex asked me to solve the problem, creating a Mixer Map in the Mixer Module of Cubase seemed the obvious solution. A Mixer Map, for those who haven't come across this term, is a set of user‑definable objects which can be created to control external devices, such as the SY85, from within Cubase. Each object appears as an on‑screen icon which can be manipulated in order to send out almost any kind of MIDI data.

Your Mission, Should You Accept It...

Alex's brief included the following: the Mixer Map was to be a one‑screen affair with all the controls laid out like a conventional mixing desk. Program Change, Volume, Pan, Tune, Note Shift, Effect Send Level and On/Off were to be included for each of the 16 Multi channels (or 'Instruments', as they're called on the SY85), plus anything else I thought might be helpful. Suddenly Alex had become my client and I realised that I was going to have to produce something to a high standard. This month's article, and the follow‑up in the next issue, tell the story of the hows, whys and wherefores in the creation of this Mixer Map. Readers who use the SY85 in Multi Mode with Cubase (Atari v.3 onwards or equivalent) should find this both practical and informative, and any readers into Cubase's Mixer Module should find this a valuable tutorial. It's probably going to take a bit of time, possibly a couple of Sunday afternoons, but it should be worth it.

Tools Of The Trade

So what do we need before we commence? Firstly, and most obviously, you need a Yamaha SY85 keyboard and a recent version of Cubase. Second on the list are the SY85 manuals, particularly the SY85 MIDI Data Format manual, and (if you haven't already read it), the MIDI Mixer chapter of the Cubase manual. It's not necessary to be an expert, but any reading you do before completing this project will help make things a little easier to understand.

The creation of the SY85 Multi Mode Mixer Map will involve the manipulation of System Exclusive data. As many readers will already know, System Exclusive is a special kind of manufacturer‑specific data which is used to pass special messages for particular instruments down the MIDI cable. This could be anything from requesting the machine to dump its memory contents, to the changing of a single parameter. In the case of the SY85 Multi Mixer Map, we'll be dealing with the latter — the changing of single parameters.

Strange though it may seem, I do not own a Yamaha SY85, and I couldn't have access to Alex's in the busy studio, but luckily another friend of mine, Paul Beecham, gave me access to his. In addition, he gave me a few insights into the SY85 which helped shape the choices for the final map.

He, too, was using the synth with Cubase, which seems to be a very popular combination. Paul had found that editing on the SY85 was not particularly user‑friendly. The problem is that the SY85 can do so much in so many different ways. In truth, it's probably not ideally suited to be slaved in Multi mode to Cubase, since many of its features are somewhat rigid and unadaptable. Indeed, some functions are difficult to find within its complex web of multiple menus. However, the SY85 comes close to being all things to all MIDI musicians, hence its enormous popularity.

Inside Story

The SY85 Multi Mode features a number of menus, each containing settings for the 16 Instruments. Each Instrument is set to receive on a consecutive MIDI channel, from 1 to 16. It is, of course, a good idea to become familiar with the Multi Edit menus, since this will help you to understand what we're aiming for with the Mixer Map. Also, please note that the SY85 sends out System Exclusive data over MIDI when various of the front panel controls are moved. Paul had already noticed that this sometimes caused some strange reactions in Cubase, with various notes sounding at random. I'm not quite sure of the source of this problem, but if 'Device Number' in the MIDI 1 menu of the Synth Setup utility is set to the 'OFF' position, this prevents the synth from sending SysEx data — but it also prevents it from receiving SysEx. This, obviously, would present problems with sending data to the synth from our forthcoming Mixer Map, so, for the purposes of this project, 'Device Number' must remain set to 'All'.

It was also decided that a Local On/Off switch and an On/Off switch for each Instrument should be included in the map. In addition, Paul suggested that it would be a real bonus if we could label each channel of our virtual mixing desk, just as a sound engineer would do in the real world.

But first, let's take a look around the SY85 to find where some of the functions are — they're not always easy to find in the manuals. Local On/Off is found in the System menu of the Synth Setup, and the inclusion of this on our map will improve its ease of use with the SY85/Cubase combination. The keyboard would normally be set to Local 'OFF' for use in Multi Mode with Cubase. The On/Off function for each of the 16 Instruments in Multi mode may be accessed while in Song Multi Edit, by moving the cursor to the desired Instrument and pressing [Shift] [+] or [Shift] [‑]. This isn't ideal, but our map will make it a lot easier, since we'll include a simple 'OFF' switch for each of the 16 Instruments. This will be a one‑way switch, for reasons which will become clear later.

That's a start in finding some of the Parameters we need to target on the SY85. The other Parameters follow those outlined in Alex's brief, above, and these are found on the various Multi Edit windows of the SY85. To obtain an overview of the parameters involved, refer to the Multi 'InitSong' table on page 300 of the SY85 user manual 2. Refer also to the MIDI Parameter change tables on pages 6 and 7 of the SY85 MIDI Data Format manual. Above the first MIDI Parameter change table, on page 6, is the essential building block for the objects we will be creating — the System Exclusive message. This warrants detailed inspection.

What The Hex

Like all SysEx, the message is expressed in Hexadecimal. Each byte represents an essential part of the syntax which the SY85 needs in order to understand what it is receiving, and to decide whether it should respond to it. The following is a brief analysis of each part of a message which would change the Volume of Multi Mode Instrument 1 on the SY85:

$F0 — SysEx Status byte. All SysEx messages begin in this way.

$43 — Yamaha ID. Each manufacturer has an ID number. $43 is for Yamaha.

$1n — Device Number.'n'= the Device (1‑16) to which the message is addressed.

$29 — Model Number.

$00 — Parameter Group Number. $00 specifies parameters in Multi Mode.

$01 — Sub Group Number.(1‑16); $01 specifies Multi Mode Instrument number 1.

$00 — Parameter Number MSB. [Most Significant Byte.]

$02 — Parameter Number LSB. [Least Significant Byte.] Choice of Parameter number. $02 specifies Volume.

$00 — Parameter Value MSB.

$XX — Parameter Value LSB. Value of chosen Parameter. Volume range = 0‑127.

$F7 — End of SysEx message (EOX). A kind of SysEx 'over and out'.

For the purposes of our Mixer Objects, the first four bytes of the message (often referred to as the 'Header') will remain constant. The other bytes will vary according to which Parameter we are addressing. A brief look at Parameter table 2 on page 7 of the MIDI Data Format manual reveals the essentials of the Multi Mode Parameters we wish to address. The final map will use Parameter numbers 0, 1, 2, 3, 4, 5 and 7.

Note that some functions are common to the same Parameter number, and change according to the status of the respective bit. This is awkward to use with some of our Mixer objects. For example, when addressing the On/Off switch of an Instrument (with Parameter 1), it is bit 7 alone of the Parameter value which activates the change. But with a Mixer Object, all the other bits are unavoidably sent down the MIDI line at the same time, thus also selecting an Instrument Voice Number and choice of Performance or Voice. Some knowledge of the Binary representation of each Hexadecimal byte helps in understanding things, and the Cubase manual should help, with its Decimal/Hexadecimal/Binary conversion table in the MIDI Mixer section.

Just above table 2 on Page 7 of the MIDI Data Format manual, the statement 's = 1..16(inst number)' specifies that the Instrument number being addressed is given by the Sub Group number (the 6th byte), as shown in the SysEx message above. Apart from that, the Parameter Number, Data Range, Display and Notes columns are what concern us most. However, before we go on to create our first MIDI Mixer objects we will need to understand Cubase's MIDI Mixer Module to some degree.

The Mixer Map

The MIDI Mixer needs to be 'activated' in the Modules menu before we can use it, so select and activate the MIDI Mixer from the 'Modules...' window.

  • To go into the Mixer window, first create a new part on the Arrange page.
  • Click in the Track Class column (C) and select 'Mix Track' from the pop‑up menu.
  • Click in the Output column of the Mixer track, select an 'empty' Mixer Map slot and exit the pop‑up Mixer Map Setup without loading any map. 'Untitled' should appear in the Output column.
  • Now double‑click on the Mixer part and you should go into a fresh, blank Mixer Map window. This is where so‑called 'objects' are created, which may take the form of faders, dials, switches, numerical displays and text. All, except text, can be made to send out almost any kind of MIDI data.

It's now time to create our first MIDI Mixer object. Pressing the right mouse button reveals the Mixer Map Toolbox, from which the 'NEW' Tool should be selected. Clicking anywhere on our empty Mixer Map will create a new object and bring up the Object Definition Box. Here we define the function and characteristics of the object. The first task is to create 16 Volume Control Objects for the 16 Instruments of the SY85 Multi Mode section. Please note that the order in which the objects are created is important for the correct functioning of the Mixer Map, so please follow the instructions carefully. Proceed as follows:

  • Name the object as '1' in the NAME section.
  • Set a value range of 'MIN 0' and 'MAX 127' in the VALUE section.
  • Select 'name' and de‑select 'instrument' in the SHOW section
  • Set the object type to a Vertical Fader in the OBJECT TYPE section.
  • Select 'SysEx' from the MIDI MESSAGE Status pop‑up menu. The SysEx message should be edited to read: F0, 43, 10, 29, 00, 01, 00, 02, 00, XX, F7. The user is allowed to enter a message with one byte alone as a variable (XX). This variable is usually entered into the Parameter value part of the message, enabling the target Parameter to be altered according to the movements of the object. Note that the Sub Group number (the 6th byte) has been set to 1, for Instrument 1, and the Parameter number being addressed (the 8th byte) is 2, as shown in table 2 on page 7 of the MIDI data format manual. Note also that the chosen 'Device Number' (the third byte) is $00 (Device Number 1).
  • Clicking on 'OK' will return you to the MIDI Mixer window, where a new vertical fader object will be found. The object may be sized appropriately using the Edit Tool (Pointing Arrow) and it may be manipulated (played) using the Play Tool (Pointing Finger). When played, the object should send out data to the SY85. With the appropriate window of the synth displayed, the Volume setting should be seen to match that of the new object as it is moved. If you experience difficulties, check that the SysEx message is correct in the Object Definition box and check that the Device Number is set to 'ALL' in the SY85 System Setup. Note that this, and all forthcoming objects, will contain SysEx messages addressed to Device number 1. You may adjust this if it is not suitable for your own MIDI setup.

When you're completely satisfied that the object is functioning correctly, copy the object 15 times using [Alternate] drag with the Edit Tool. Each time, copy from the previously created object and adjust the SysEx message Sub Group number to read consecutive Hexadecimal numbers from $02 to $10 (2 to 16 in decimal). Also name the objects as '2 to 16' as you proceed. For the purposes of this map, the names of most of the objects will not be visible on screen. However, the Volume Objects are to be used to label the 16 channels of the whole map, and each should clearly display its respective number. Most of the other groups of controls will be labelled using the leftmost Object.

The next group of objects to create is the Pan dials for the 16 Instrument channels. Once again, create a new object using the New Tool.

  • Name the object simply as 'Pan'.
  • Set the object range to 'MIN 0' and 'MAX 64' in the VALUE section.
  • De‑select 'Name' and tick 'Instrument' in the SHOW section.
  • Set the Object Type to a dial.
  • Set the MIDI Output section to MIDI channel 1
  • Select SysEx from the MIDI MESSAGE Status pop‑up menu.
  • Edit the SysEx message to read: F0, 43, 10, 29, 00, 01, 00, 05, 00, xx, F7 .

When satisfied, click on 'OK' to go back to the Mixer window. A new dial should be visible on the screen. Once again, size and position the object appropriately using the Edit Tool. Then copy it in the same way as the Volume objects, adjusting the Name and MIDI Output Channel each time to consecutive numbers from 2 to 16, and the sixth byte to consecutive Hexadecimal numbers from $02 to $10. Finally, the leftmost dial should be made to display the function of the dials by ticking its SHOW 'Name'.

Note that the 'Instrument' part of the SHOW section of all Pan dials should be ticked, and the MIDI Output Channel numbers should match the Pan Dial number, as outlined above. This will serve as a labelling system for each of the 16 channels of our virtual mixing desk. When tracks on the Arrange page of Cubase are named in the 'Instrument' column, these names will appear on the Mixer Map for each Pan Object with the corresponding MIDI channel.

You will notice from the Multi Parameter table on page 7 of the SY85 Data Format Manual that Parameter 5 simultaneously addresses the Instrument Pan Source as well as the Instrument Pan itself. When bit 6 changes from 0 to 1, the Multi Source ('MLT' on the SY85) changes to Voice Source ('VCE' on the SY85). In other words, the Instrument takes its Pan position from the chosen Voice. Bit 6 becomes a 1 when the Parameter Value reaches its maximum of 64 (Binary 0100 0000), so moving the new Pan control to its maximum right position will select 'VCE' on Instrument 1 of the SY85 Multi Edit Pan window. All other positions for the object will produce the corresponding Pan position in the stereo image.

Test that all the objects function correctly and then save your efforts so far as 'SY85M116.MIX' from the Setup Mixer Maps pop‑up window. Next issue, we'll complete the map and learn how to use it... See you then.