This instrument contains two sound generators: one for accompaniment (GM2) and
one for keyboard performance.
Normally, data received at the MIDI IN connector will control only the sound generator for keyboard performance. However by changing the “MIDI IN Mode” setting, you
can control the GM2 sound generator from MIDI In.
For instructions on changing the “MIDI IN Mode,” refer to the Owner’s Manual.
For instructions on controlling each sound generator, refer to the “Received data”
section.
MIDI IN Mode
Mode Explanation
MODE 1 Control the instrument as a GM2 sound generator.
MODE 2 Channels 5 through 10 and Channels 12,14,15 are transmitted
to the GM2 sound generator, and all other channels are
transmitted to the keyboard sound generator.
KEYBOARD
The correspondence between channels and parts in each mode is described below.
* Valid in dual mode if a piano sound is assigned to part 2.
All channels are sent to the lower part for keyboard performance.
2. Transmit Channel
Keyboard and Transmit Channel
You can control external MIDI devices using the VR-09’s MIDI OUT connector. Data
describing what is played on the upper part, the lower part, and the pedal part is
transmitted over MIDI channels for the respective parts.
Messages from the expression pedal and PC Numbers set in the Registrations are
transmitted on the Control channel.
The channels used for transmission can be changed individually for each Registration. For instructions on how to change the transmission channels, refer to the
Owner’s Manual.
3. Receive Data
[GM2] This indicates that the message will be received if the MIDI IN
Mode is MODE 1 and the unit is in GM2 mode. Use GM2 System
On (p. 5) to select GM2 mode.
[GM1] This indicates that the message will be received if the MIDI IN
Mode is MODE 1 and the unit is in GM1 mode. Use GM1 System
On (p. 5) to select GM1 mode.
[VR-09] This indicates that the message will be received on the
keyboard part if the MIDI IN Mode is MODE 2. For details on the
keyboard part, refer to “1. Receive Channel” (p. 1).
Channel Voice Messages
Note o [GM2] [GM1] [VR-09]
Status 2nd byte 3rd byte
8nH kkH vvH
9nH kkH 00H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
kk = note number: 00H-7FH (0-127)
vv = note o velocity: 00H-7FH (0-127)
* The velocity values of Note O messages are ignored.
Note on [GM2] [GM1] [VR-09]
Status 2nd bytes 3rd byte
9nH kkH vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
kk = note number: 00H-7FH (0-127)
vv = note on velocity: 01H-7FH (1-127)
Control Change
* The value specied by a Control Change message will not be reset even by a
Program Change, etc.
Bank Select (Controller number 0, 32) [GM2]
Status 2nd bytes 3rd byte
BnH 00H mmH
BnH 20H llH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
mm, ll = Bank number: 00 00H-7F 7FH (bank.1-bank.16384),
Initial Value = 00 00H (bank.1)
* After receiving “GM1 System On,” Bank Select messages will be ignored. After
receiving “GM2 System On,” Bank Select messages will be recognized.
* Bank Select processing will be suspended until a Program Change message is
received.
* Not Received in keyboard part. Specication of the tones used by keyboard parts is
accomplished using System Exclusive messages (p. 11).
Channel (default) Content Transmitted
UPPER (4) Key information from the upper part is
transmitted.
LOWER (3) Key information from the lower part is
transmitted.
PEDAL (2) Performance information from the pedal
part is transmitted.
(when using a pedalboard)
PIANO DUAL2 (1) Key information is transmitted if a piano
sound is assigned to part 2 in dual mode.
CONTROL (16) Expression pedal information and PC
Numbers set in the Registrations are
transmitted.
* The PC Number is transmitted when Send PC Switch is set to ON.
* For more details regarding the data that is transmitted, refer to “4. Transmit Data”
(p. 7).
1PS
All rights reserved. No part of this publication may be reproduced in any form without the written permission of ROLAND CORPORATION.
Portamento Time (Controller number 5) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 05H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Portamento Time: 00H-7FH (0-127), Initial value = 00H (0)
* This adjusts the rate of pitch change when Portamento is ON or when using the
Portamento Control. A value of 0 results in the fastest change.
Data Entry (Controller number 6, 38) [GM2] [GM1]
[VR-09]
Status 2nd bytes 3rd byte
BnH 06H mmH
BnH 26H llH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
mm, ll = the value of the parameter specied by RPN/NRPN
mm = MSB, ll = LSB
Volume (Controller number 7) [GM2] [GM1] [VR-09]
Status 2nd bytes 3rd byte
BnH 07H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Volume: 00H-7FH (0-127), Initial Value = 64H (100)
* Volume messages are used to adjust the volume balance of each Part.
* Volume messages cannot independently control the layered parts of the keyboard
part. If you need to independently control the parts that are layered on the
keyboard part, you must use system exclusive messages for the keyboard part (p.
11) [VR-09].
Sostenuto (Controller number 66) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 42H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-7FH (0-127) 0-63 = OFF, 64-127 = ON
Soft (Controller number 67) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 43H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-7FH (0-127) 0-63 = OFF, 64-127 = ON
* Eects may vary depending on the tone used.
Resonance (Controller number 71) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 47H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-40H-7FH (-64-0-+63)
* With certain tones, there may be no eect at all.
Release Time (Controller number 72) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 48H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-40H-7FH (-64-0-+63)
Panpot (Controller number 10) [GM2] [GM1] [VR-09]
Status 2nd bytes 3rd byte
BnH 0AH vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = pan: 00H-40H-7FH (Left-Center-Right),
Initial Value = 40H (Center)
* This does not aect eects such as reverb or rotary sound.
Expression (Controller number 11) [GM2] [GM1]
[VR-09]
Status 2nd bytes 3rd byte
BnH 0BH vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Expression: 00H-7FH (0-127), Initial Value = 7FH (127)
* This adjusts the volume of a part. It can be used independently from Volume
messages. Expression messages are used for musical expression within a
performance; e.g., expression pedal movements, crescendo and decrescendo.
* If received on the Control Channel while MIDI IN Mode 2 is in eect, this changes
the VR-09’s overall volume in the same manner as the expression pedal. The volume
of individual keyboard parts cannot be controlled independently [VR-09].
Hold 1 (Controller number 64) [GM2] [GM1] [VR-09]
Status 2nd bytes 3rd byte
BnH 40H vvH
* With certain tones, there may be no eect at all.
Attack Time (Controller number 73) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 49H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-40H-7FH (-64-0-+63)
* With certain tones, there may be no eect at all.
Eect 3 (Chorus Send Level) (Controller number 93)
[GM2]
Status 2nd bytes 3rd byte
BnH 5DH vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-7FH (0-127), Initial Value = 00H (0)
* This message adjusts the Chorus Send Level of each Part.
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-7FH (0-127)
Portamento (Controller number 65) [GM2] [VR-09]
Status 2nd bytes 3rd byte
BnH 41H vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-7FH (0-127) 0-63 = OFF, 64-127 = ON
2
MIDI Implementation
RPN MSB/LSB (Controller number 100, 101)
Status 2nd bytes 3rd byte
BnH 65H mmH
BnH 64H llH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
mm = upper byte of parameter number specied by RPN (MSB)
ll = lower byte of parameter number specied by RPN (LSB)
* Not received when Rx.RPN = OFF. (Initial value is ON)
* The value specied by RPN will not be reset even by messages such as Program
Change or Reset All Controller.
**RPN**
The RPN (Registered Parameter Number) messages are expanded control changes,
and each function of an RPN is described by the MIDI Standard.
To use these messages, you must rst use RPN MSB and RPN LSB messages to specify
the parameter to be controlled, and then use Data Entry messages to specify the
value of the specied parameter. Once an RPN parameter has been specied, all Data
Entry messages received on that channel will modify the value of that parameter. To
prevent accidents, it is recommended that you set RPN Null (RPN Number = 7FH/7FH)
when you have nished setting the value of the desired parameter.Refer to Section 6.
“Examples of actual MIDI messages” <Example 4> (p. 14).
On the VR-09, RPN can be used to modify the following parameters.
RPN Data entry
MSB LSB MSB LSB Explanation
00H 00H mmH --- Pitch Bend Sensitivity [GM2] [GM1]
[VR-09]
mm: 00H-18H (0-24 semitones), Initial
Value = 02H (2 semitones)
ll: ignored (processed as 00H)
specify up to 2 octaves in semitone steps
00H 01H mmH llH Master Fine Tuning [GM2] [GM1] [VR-09]
mm, ll: 20 00H - 40 00H - 60 00H (-50 - 0 +50 cents), Initial Value = 40 00H (0 cent)
ll: ignored (processed as 00h)
Refer to 6. Supplementary material,
“About tuning” (p. 15)
00H 02H mmH --- Master Coarse Tuning [GM2] [GM1]
[VR-09]
mm: 10H - 40H - 70H (-48 - 0 - +48
semitones), Initial Value = 40H (0 cent)
ll: ignored (processed as 00h)
00H 05H mmH llH Modulation Depth Range [GM2]
mm, ll: 00 00H - 06 00H
(0 - 16384 * 600 / 16384 cent)
7FH 7FH --- --- RPN null
Set condition where RPN and NRPN are
unspecied. The data entry messages
after set RPN null will be ignored. (No Data
entry messages are required after RPN
null).
Settings already made will not change.
mm, ll: ignored
Program Change [GM2] [GM1]
Status 2nd bytes
CnH ppH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
pp = Program number: 00H-7FH (prog.1-prog.128)
* After a Program Change message is received, the sound will change beginning with
the next Note-on. Voices already sounding when the Program Change message
was received will not be aected.
* Not Received in keyboard part.
* Specication of the tones used by keyboard parts is accomplished using System
n = MIDI channel number: 0H-FH (ch.1-ch.16)
mm, ll = Pitch Bend value: 00 00H - 40 00H - 7F 7FH
(-8192 - 0 - +8191)
3
MIDI Implementation
Channel Mode Messages
All Sounds O (Controller number 120) [GM2] [VR-09]
Status 2nd byte 3rd bytes
BnH 78H 00H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
* When this message is received, all notes currently sounding on the corresponding
channel will be turned o.
Reset All Controllers (Controller number 121) [GM2]
Status 2nd byte 3rd byte
BnH 79H 00H
n = MIDI channel number: 0H - FH (Ch.1 - 16)
* When this message is received, the following controllers will be set to their reset
values.
Controller Reset value
Pitch Bend Change ±0 (center)
Polyphonic Key Pressure 0 (o)
Channel Pressure 0 (o)
Modulation 0 (o)
Expression 127 (max) However, the controller will be
at minimum.
Hold 1 0 (o )
Sostenuto 0 (o )
Soft 0 (o )
RPN unset; previously set data will not change
NRPN unset; previously set data will not change
MONO (Controller number 126) [GM2] [VR-09]
Status 2nd byte 3rd bytes
BnH 7EH mmH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
mm = mono number: 00H-10H (0-16)
* The same processing will be carried out as when All Sounds O and All Notes O is
received, and the corresponding channel will be set to Mode 4 (M = 1) regardless of
the value of “mono number.”
POLY (Controller number 127) [GM2] [VR-09]
Status 2nd byte 3rd bytes
BnH 7FH 00H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
* The same processing will be carried out as when All Sounds O and All Notes O is
received, and the corresponding channel will be set to Mode 3.
Active Sensing
Status
FEH
* Once an Active Sensing message is received, the unit will begin monitoring the
interval between all subsequent messages. If there is an interval of 420 ms or
longer between messages while monitoring is active, the same processing as when
All Sound O, All Notes O, and Reset All Controllers messages are received will be
carried out. The unit will then stop monitoring the message interval.
All Notes O (Controller number 123) [GM2] [GM1]
[VR-09]
Status 2nd byte 3rd bytes
BnH 7BH 00H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
* When All Notes O is received, all notes on the corresponding channel will be
turned o. However if Hold 1 or Sostenuto is ON, the sound will be continued until
these are turned o.
OMNI OFF (Controller number 124) [GM2] [VR-09]
Status 2nd byte 3rd bytes
BnH 7CH 00H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
* The same processing will be carried out as when All Notes O is received.
OMNI ON (Controller number 125) [GM2] [VR-09]
Status 2nd byte 3rd bytes
BnH 7DH 00H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
* OMNI ON is only recognized as “All notes o”; the Mode doesn’t change (OMNI OFF
remains).
4
MIDI Implementation
System Exclusive Messages
Status Data byte Status
F0H iiH, ddH, ......, eeH F7H
F0H: System Exclusive Message status
ii = ID number: ID number (manufacturer ID) to indicate the manufacturer
whose Exclusive message this is. Roland’s manufacturer ID is
41H.
ID numbers 7EH and 7FH are extensions of the MIDI standard;
Universal Non-realtime Messages (7EH) and Universal Realtime
Messages (7FH).
dd,...,ee = data: 00H-7FH (0-127)
F7H: EOX (End of Exclusive)
The System Exclusive Messages received by the VR-09 are; messages related to mode
settings, Universal Realtime System Exclusive messages, Universal Non-realtime
System Exclusive messages and Data Set (DT1).
System exclusive messages related to mode settings
These messages are used to initialize a device to General MIDI mode or change the
operating mode.
When creating performance data, a “GM2 System On” or “GM1 System On” message
should be inserted at the beginning of a General MIDI score. Each song should
contain only one mode message as appropriate for the type of data. (Do not insert
two or more mode setting messages in a single song.)
GM1 System On
Status Data byte Status
F0H 7EH, 7FH, 09H, 01H F7H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
7FH Device ID (Broadcast)
09H Sub ID#1 (General MIDI Message)
01H Sub ID#2 (General MIDI 1 On)
F7H EOX (End of Exclusive)
* When this messages is received, this instrument will turn to the GM mode.
* Not received in keyboard part.
GM2 System On
Status Data byte Status
F0H 7EH, 7FH, 09H, 03H F7H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
7FH Device ID (Broadcast)
09H Sub ID#1 (General MIDI Message)
03H Sub ID#2 (General MIDI 2 On)
F7H EOX (End of Exclusive)
Universal Non-realtime System Exclusive Messages
Identity Reply Message
Status Data byte Status
F0H 7EH, dev, 06H, 01H F7H
Byte Explanation
F0H Exclusive status
7EH ID number (universal non-realtime message)
dev Device ID (10H, 7FH)
06H Sub ID#1 (General Information)
01H Sub ID#2 (Identity Request)
F7H EOX (End of Exclusive)
* When this message is received, this unit will transmit the appropriate Identity Reply
message (p. 8).
Universal Realtime System Exclusive Messages
Master volume [GM2]
Status Data byte Status
F0H 7FH, 7FH, 04H, 01H, llH, mmH F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
04H Sub ID#1 (Device Control messages)
01H Sub ID#2 (Master Volume)
llH Master volume lower byte
mmH Master volume upper byte
F7H EOX (End of Exclusive)
* The lower byte (llH) of Master Volume will be handled as 00H.
Master Fine Tuning [GM2]
Status Data byte Status
F0H 7FH, 7FH, 04H, 03H, llH, mmH F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
04H Sub ID#1 (Device Control)
03H Sub ID#2 (Master Fine Tuning)
llH Master Fine Tuning LSB
mmH Master Fine Tuning MSB
F7H EOX (End of Exclusive)
Status Data byte Status
F0H 7FH, 7FH, 04H, 04H, llH, mmH F7H
* When this messages is received, this instrument will turn to the GM mode.
* Not received in keyboard part.
GM System O
Status Data byte Status
F0H 7EH, 7F, 09H, 02H F7H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
7FH Device ID (Broadcast)
09H Sub ID#1 (General MIDI Message)
02H Sub ID#2 (General MIDI O )
F7H EOX (End of Exclusive)
* Not Received in keyboard part.
* This message has no meaning for this unit.
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
04H Sub ID#1 (Device Control messages)
04H Sub ID#2 (Master Coarse Tuning)
llH Master Coarse Tuning LSB
mmH Master Coarse Tuning MSB
F7H EOX (End of Exclusive)
Status Data byte Status
F0H 7EH, 7FH, 08H, 08H, H, ggH, hhH, ssH... F7H
Byte Explanation
F0H Exclusive status
7EH ID number (Universal Non-realtime Message)
7FH Device ID (Broadcast)
08H Sub ID#1 (MIDI Tuning Standard)
08H Sub ID#2 (scale/octave tuning 1-byte form)
H Channel/Option byte 1
bits 0 to 1 = channel 15 to 16
bit 2 to 6 = Undened
ggH Channel byte 2
bits 0 to 6 = channel 8 to 14
hhH Channel byte 3
bits 0 to 6 = channel 1 to 7
ssH 12 byte tuning oset of 12 semitones from C to B
00H = -64 [cents]
40H = 0 [cents] (equal temperament)
7FH = +63 [cents]
F7H EOX (End of Exclusive)
Key-based Instrument Controllers [GM2]
Status Data byte Status
F0H 7FH, 7FH, 0AH, 01H, 0nH, kkH, nnH, vvH F7H
Byte Explanation
F0H Exclusive status
7FH ID number (universal realtime message)
7FH Device ID (Broadcast)
0AH Sub ID#1 (Key-Based Instrument Control)
01H Sub ID#2 (Controller)
0nH MIDI Channel (00 - 0F)
kkH Key Number
nnH Control Number
vvH Value
nn=07H (Level)
vv = 00H - 7FH (0 - 200% (Relative))
nn=0AH (Pan)
vv = 00H - 7FH (Left - Right (Absolute))
nn=5BH (Reverb Send)
vv = 00H - 7FH (0 - 127 (Absolute))
nn=5D (Chorus Send)
vv = 00H - 7FH (0 - 127 (Absolute))
: :
F7 EOX (End of Exclusive)
* This parameter aects drum instruments only.
6
MIDI Implementation
Data transmission
VR-09 can receive the various parameters using System Exclusive messages.
When keyboard part in MIDI IN Mode: Mode 2, the exclusive message has a model ID
of 62H and a device ID of 10H (17).
Data set 1 DT1
This is the message that actually performs data transmission, and is used when you
wish to transmit the data.
Status Data byte Status
F0H 41H, 10H, iiH, 12H, aaH, bbH, ccH, F7H
ddH, ... eeH, sum
F0H 41H, 10H, nnH, nnH, nnH, 12H, aaH, F7H (VR-09 Synth
bbH, ccH, ddH, ... eeH, sum Section)
Byte Explanation
F0H Exclusive status
41H ID number (Roland)
10H Device ID
iiH Model ID (Keyboard part: 62H)
nnH VR-09 Synth Section Model ID (00H 00H 71H)
12H Command ID (DT1)
aaH Address MSB: upper byte of the starting address of the
transmitted data
bbH Address: middle byte of the starting address of the transmitted
data
ccH Address LSB: lower byte of the starting address of the
transmitted data
ddH Data: the actual data to be transmitted. Multiple bytes of data
are transmitted starting from the address.
: :
: :
eeH Data
sum Checksum
F7H EOX (End of Exclusive)
* The amount of data that can be transmitted at one time depends on the type of
data, and data can be received only from the specied starting address and size.
Refer to the Address and Size given in “5. Parameter Address Map” (p. 11).
* Data larger than 128 bytes must be divided into packets of 128 bytes or less. If
“Data Set 1” is transmitted successively, there must be an interval of at least 40 ms
between packets.
* Regarding the checksum please refer to “Example of an Exclusive Message and
Calculating a Checksum” (p. 14).
4. Transmit Data
Channel Voice Messages
Note o
Status 2nd byte 3rd byte
8nH kkH 40H
n = MIDI channel number: 0H-FH (ch.1-ch.16)
kk = note number: 24H-60H (36-96)
* When the transpose is set to 0.
* Note o message is sent out with the velocity of 40H.
Note on
Status 2nd bytes 3rd byte
9nH kkH vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
kk = note number: 24H-60H (36-96)
* When the transpose is set to 0.
vv = note on velocity: 0AH-7FH (10-127)
Control Change
Bank Select (Controller number 0, 32)
Status 2nd bytes 3rd byte
BnH 00H mmH
BnH 20H llH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
Initial Value = FH (ch.16)
mm, ll = Bank number: 00 00H - 7F 7FH (bank.1-bank.16384)
* The bank number stored in the registration will be transmitted on the control