01/W MIDI

Go to: 01 On-Line Directory Book Info
rev: 02Sep15
Topics

 MIDI Controllers in the 01

MIDI Controllers in the 01 
# Controls Values Comments
1 Pitch Bend 0 (off) - 127 (max) Joystick movement in +Y direction (away from you)
2 VDF modulation 0 (off) - 127 (max) Joystick movement in -Y direction (towards from you)
7 Volume 0 (min) - 127 (max)
10 Pan 0 (A) - 127 (B) C and/or D cannot be controlled over MIDI
12 Effect 1 amount 0 (min) - 127 (max) Varies Effect 1
13 Effect 2 amount 0 (min) - 127 (max) Varies Effect 2
64 Damper switch 0 (off) 
127 (on)
Turns sustain off and on
91 Effect 1 switch 0 - 63 (off) 
64 - 127 (on)
Turns Effect 1 off and on
92 Effect 2 switch 0 - 63 (off) 
64 - 127 (on)
Turns Effect 2 off and on
102 VDF cutoff 0 - 64 - 127 
low - "set" - high
Internal control only - not sent or recognized over MIDI. 
"64" sets VDF to the value in the Program (patch).
 
Assignable Pedals 1/2
A pedal plugged into "ASS. PEDAL/SW" 1 or 2 will send MIDI controller messages. The type of message and values sent depend on the function you assign to the pedal in GLOBAL Mode, Page 4, Line 3 and/or 4.
If you have a switch plugged in (like a damper pedal), you can only send values 0 or 127.
If you have a continuous pedal plugged in, you can send values ranging from 0 through 127.

(For more details on Pedals, how they work, and how to use them, see the Pedals section on page 127 in the appendix of the Percussion Manual.)
 

top of page

How to Turn Effects On and Off via MIDI

To Control FX 1 To Control FX 2
1 Enter Global Mode
2 Go to Page 4
3 Set "Assignable Pedal 1" to "Effect1 On/Off"  Set "Assignable Pedal 2" to "Effect2 On/Off" 
4 MIDI Controller #91 now controls FX 1  MIDI Controller #92 now controls FX 2 
5 Send a value of 127 (to turn FX on) or 0 (to turn FX off)
 
top of page

Changing Effects via MIDI

The only way you can change the effects is with the All Sequence Data Dump function (#18). {per Korg tech support}. The 01 has some screwy behavior in this area, and this is not documented anywhere, so pay attention.

Here's a perfectly reasonable approach to setting effects from your computer sequencer, but this will NOT work:
1. In Sequencer Mode, set all the effects the way you want them.
2. From your computer sequencer, send the 01 a Dump All Sequence command.
3. The 01 sends all its sequencer data, which the computer sequencer stores in a SysEx file.
4. When it's time to play the song, the computer sequencer first sends all the Track settings that are stored in the computer's sequence (what you see on the computer screen).
5. When the song actually starts, the first MIDI thing sent is the SysEx file, which includes the effects settings
6 And the song sounds all wrong.

You'll find the SysEx file had the effects settings all right, but all the Track settings (Program, Pan, Volume) were at their power-on values (Prog=A00, Pan=5:5, Volume=127). When you issued the Dump All Sequence, these default values were stored along with your effects settings. Although the computer set all the tracks up correctly before playing the song, the SysEx overwrote all those settings with default values.

"No problem," you say. "I'll have the computer play the beginning of the sequence, which will set all the Track parameters. Then I'll do the Dump All Sequence, and everything will be saved." Or so you'd think. Wrong!

If you set things like Program, Volume, and Pan from the 01 panel buttons, the settings can be dumped (output) to your computer sequencer, and the sequencer will capture the data. If those same settings were made by your sequencer (not using the 01 panel buttons), those settings can NOT be dumped (output) to your computer sequencer. Again,

Sequencer info received into the 01 by SysEx dump will not be output in a SysEx dump!

Why?
SysEx information sent to the 01 sequencer is not “stored in memory”, and therefor cannot be dumped. In other words, parameters like Program, Pan, and Volume, when entered from the 01 panel, are stored in a RAM area that is used to retain things. SysEx parameters show up in the panel LCD, but are not stored anywhere. Since they are not stored, they cannot be accessed by anything else.

Solution #1: Set the 01's effects, Dump All Sequence, and save the SysEx file. In your computer sequencer, set up the song to (re-)send all Track parameters AFTER the SysEx is sent. This means you have to send a Patch Change, Volume, and Pan MIDI message for every track you use. Although tedious, this is probably the best approach because all your song settings are easily visible and in one place (try looking at a SysEx file sometime).

Solution #2: Hand-enter Track parameters into the 01, then Dump All Sequence. If you don't plan on changing track assignments or settings, this solution will get you by.

What follows is how I use Cakewalk 3.0 to change the 01's effects settings.
(Note: There is a bug in newer versions of Cakewalk and they will not work in my system. Cakewalk tech support has refused to help, so I cannot recommend or endorse any Cakewalk products.)
 

Initializing Effects from Cakewalk 3.0

Step 01 CW Operation
1 01 Power-up the 01 so everything in the sequencer is empty.
2 CW Load the song you want to add effects to.
3 01 Enter SEQuence mode, go to Page 8: SONGn P8:EFFECT
4 01 CW Play the sequence back and adjust the effects to what you want.
5 01 Manually re-enter every Track Parameter of every Track that's used
6 CW Enter SysEx view
7 CW Highlight an empty bank (say, 0)
8 CW Select Receive with "you start the transfer" (or whatever the menu says)
9 01 Go to GLOBAL page 8, highlight Dump Sequence, and then DUMP.
10 CW Cakewalk will receive a small (3,966 byte) SysEx file, including the effects data.
11 CW Give the bank a name (like the Effects you just sent).
12 CW You don't need to save the bank here unless you want to make it accessible to other songs.
13 CW Save the song (Control-S), and the received SysEx file will be saved with it.
14 CW Experiment with when you want to send the SysEx file. Chose AUTO to send it whenever you load the song into Cakewalk. Play with other options to change effects during a song. (How long a hiccup will 3,966 bytes cause?)
 
top of page

System Exclusive (SysEx) Messages

The format for a SysEx message:

General System Exclusive Format
F0h 0xxx xxxx <data bytes 2, 3, ..., n>  F7h
System Exclusive  data byte 1 data, byte 2 data, ... End of Exclusive (EOX)
called 
"SysEx" or "Sysx"
Manufacturer's ID (Korg is 42h) 
or 
Universal Exclusive Message (7D, 7E, 7F)
EOX is a System Common message.
If Data Byte 1 = 7D, 7E, or 7F, then a new set of commands are accessed.
7D: for non-commercial use by universities, researchers, etc.
7E: for Universal Non-Real Time use (format: F0  7E  <dev ID>  <subID1>  <subID2>  <data> F7
7F: for Universal Real-Time use.
(Device ID used to be known as “channel byte”)

 

01/W System Exclusive Format
Byte Hex Description
1 F0 Identifies a SysEx message
2 42 Manufacturer’s ID (Korg)
3 3g Global Channel (g = 0, 1, 2, ..., E, or F)
4 2B This is an 01/W
5 nn Function Code. Releveant codes here are: 
   41 Change Parameter 
   4E Change Mode
6 nn 1st data byte, if any
n F7 End Of Exclusive (EOX)
 
top of page


Universal System Exclusive Messages (Device Inquiry)
 
01/W Universal System Exclusive Messages
Byte Hex Description
1 F0 Identifies a SysEx message
2 7E Non-Realtime message
3 0g MIDI Global Channel (Device ID)
4 06 Inquiry Message
5 02 Identity Reply
6 42 Manufacturer’s ID (Korg)
7
8
2B 
00
01/W Series ID, Family code, LSB 
01/W Series ID, Family code, MSB
9
 

10

0a 
 

00

01/W Series ID, Member code, LSB 
   03: 01/W ProX 
   04: 01/W Pro 
01/W Series ID, Member code, MSB
11
12
xx 
00
ROM Number, Minor Version, LSB 
ROM Number, Minor Version, MSB
13
14
xx 
00
SOFT Version, Minor Version, LSB 
SOFT Version, Minor Version, MSB 
15 F7 End Of Exclusive (EOX)
 top of page

SysEx Messages from Panel Buttons

Pushing 01 front panel buttons will send a SysEx message. If you record and store this message (in a computer-based sequencer), sending the message to the 01 will have the same effect as pushing the button. For example, you can have your sequencer switch between COMBI and PROG mode.
Here’s what goes out the MIDI OUT port when you push the button indicated:

COMBI
F0 42 30 2B 4E 00 00 F7
F0 42 30 2B 41 00 00 00 00 00 F7
in English:
SysEx:Korg:Global Channel 0:01W: Change Mode: Data=00 00: EOX
SysEx:Korg:Global Channel 0:01W: Change Parameter: Data=00 00 00 00 00: EOX

EDIT COMBI
F0 42 30 2B 4E 01 00 F7
F0 42 30 2B 41 00 02 00 01 00 F7
in English:
SysEx:Korg:Global Channel 0:01W: Change Mode:Data=01 00: EOX
SysEx:Korg:Global Channel 0:01W: Change Parameter: Data=00 02 00 01 00: EOX

PROG
F0 42 30 2B 4E 02 00 F7
F0 42 30 2B 41 00 00 00 00 00 F7
in English:
SysEx:Korg:Global Channel 0:01W: Change Mode:Data=02 00: EOX
SysEx:Korg:Global Channel 0:01W: Change Parameter: Data=00 02 00 01 00: EOX

EDIT PROG
F0 42 30 2B 4E 03 00 F7
F0 42 30 2B 41 00 00 00 01 00 F7
in English:
SysEx:Korg:Global Channel 0:01W: Change Mode:Data=03 00: EOX
SysEx:Korg:Global Channel 0:01W: Change Parameter: Data=00 00 00 01 00: EOX

SEQ
F0 42 30 2B 4E 06 00 F7
in English:
SysEx:Korg:Global Channel 0:01W: Change Mode:Data=06 00: EOX
SongSel (number of the song currently displayed in the 01’s sequencer LCD)
Channel 1 Bank Number, Program Change, Controller Change: Volume, Controller Change: Pan
Channel 2 (identical to above)
through
Channel 16 (identical to above)
Song Position Pointer

GLOBAL
F0 42 30 2B 4E 04 00 F7
in English:
SysEx:Korg:Global Channel 0:01W: Change Mode:Data=04 00: EOX

BANK
The MIDI Bank Change message is sent as a Continuous Controller message on the Global Channel. The message has three parts: Bank Change MSB (Most Significant Byte), Bank Change LSB (Least Significant Byte), and then a Program Change message.

For example, when you first turn power on, you are in Bank A.
If you push BANK to change to Bank B, the 01 sends:
Controller Change/Bank: 00,
Controller Change/Bank: 01,
Program Change 00.

Push BANK again,the 01 sends:
Controller Change/Bank: 00,
Controller Change/Bank: 00,
Program Change 00.

Notice the LSB of Controller 0 is 0 for Bank A and 01 for Bank B. Also notice you can’t just change Banks without specifying the Program (or Combi) number in the new Bank.

Pressing  BANK, UP-ARROW, or DOWN-ARROW sends PROGRAM CHANGE (192)

DISK
F0 42 30 2B 4E 08 00 F7
in English:
SysEx:Korg:Global Channel 0:01W: Change Mode:Data=08 00: EOX

top of page


MIDI Dump File Sizes
 
Dump Command Bytes
All Combis
29,265
All Data
74,481
All Drums
1,927
All Prog
39,322
All Sequences (empty)
3,966
Current Combi
6
Current Prog
6
(as received from an 01/Wpro)



Misc. Info.
1. SysEx info is in the back of the Owner's Manual. This is the only information that is available in the universe {per Korg tech support}. When a SysEx is sent, that is all that is sent - no other MIDI messages are sent (like program changes. {again, per Korg tech support}

2. GLOBAL P0:GLOBAL has a MIDI Filter parameter called EXCLusive that defaults to DISabled. When disabled, you have to go to GLOBAL P8:DATA DUMP to send or receive MIDI data. By ENAbeling EXCL, SysEx data can be sent and received while in SEQuencer mode/screens.

top of page

Copyright ©1998-2002 by Ken Westover at Cliff Canyon Publishing Co. All rights reserved.
This material may not be distributed without the written permission of the author.
  E-mail questions or comments to cliffcan@indra.com.
 
Go to: 01 On-Line Directory Book Info Top of this page.
0209150609