Roland RD-2000 MIDI Implementation

MIDI Implementation
Model: RD-2000
Date: Jan. 1, 2018
Version: 1.01

1. Receive data

9
Channel Voice Messages
7
Status 2nd byte 3rd byte 8nH kkH vvH 9nH kkH 00H
n = MIDI channel number: 0H–FH (ch.1–16) kk = note number: 00H–7FH (0–127) vv = note o velocity: 00H–7FH (0–127)
* Some instruments are not received in Rhythm set.
7
Note on
Status 2nd byte 3rd byte 9nH kkH vvH
n = MIDI channel number: 0H–FH (ch.1–16) kk = note number: 00H–7FH (0–127) vv = note on velocity: 01H–7FH (1–127)
7
Polyphonic Key Pressure
Status 2nd byte 3rd byte AnH kkH vvH
6 Volume (Controller number 7)
Status 2nd byte 3rd byte BnH 07H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Volume: 00H–7FH (0–127)
6 Panpot (Controller number 10)
Status 2nd byte 3rd byte BnH 0AH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Panpot: 00H–40H–7FH (Left–Center–Right)
6 Expression (Controller number 11)
Status 2nd byte 3rd byte BnH 0BH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Expression: 00H–7FH (0–127)
6 Tone Color (Controller number 24)
Status 2nd byte 3rd byte BnH 18H vvH
n = MIDI channel number: 0H–3H (ch.1–4) vv = Control value: 00H–7FH (0–127)
6 Hold 1 (Controller number 64)
Status 2nd byte 3rd byte BnH 40H vvH
n = MIDI channel number: 0H–FH (ch.1–ch.16) kk = note number: 00H–7FH (0–127) vv = key pressure: 00H–7FH (0–127)
7
Control Change
6 Bank Select (Controller number 0, 32)
Status 2nd byte 3rd byte BnH 00H mmH BnH 20H llH
n = MIDI channel number: 0H–FH (ch.1–16) mm, ll = Bank number: 00 00H–7F 7FH (bank.1–bank.16384)
6 Modulation (Controller number 1)
Status 2nd byte 3rd byte BnH 01H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Modulation depth: 00H–7FH (0–127)
6 Portamento Time (Controller number 5)
Status 2nd byte 3rd byte BnH 05H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Portamento Time: 00H–7FH (0–127)
6 Data Entry (Controller number 6, 38)
Status 2nd byte 3rd byte BnH 06H mmH BnH 26H llH
n = MIDI channel number: 0H–FH (ch.1–16) mm, ll = the value of the parameter specied by RPN/NRPN mm = MSB, ll = LSB
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH
6 Portamento (Controller number 65)
Status 2nd byte 3rd byte BnH 41H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127) 0–63 = OFF, 64–127 = ON
6 Sostenuto (Controller number 66)
Status 2nd byte 3rd byte BnH 42H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127) 0–63 = OFF, 64–127 = ON
6 Soft (Controller number 67)
Status 2nd byte 3rd byte BnH 43H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127)
6 Legato Footswitch (Controller number 68)
Status 2nd byte 3rd byte BnH 44H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127) 0–63 = OFF, 64–127 = ON
6 Resonance (Controller number 71)
Status 2nd byte 3rd byte BnH 47H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Resonance value (relative change): 00H–7FH (-64–0–+63)
02
Copyright © 2017 ROLAND CORPORATION
1
MIDI Implementation
6 Release Time (Controller number 72)
Status 2nd byte 3rd byte BnH 48H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Release Time value (relative change): 00H–7FH (-64–0–+63)
6 Attack time (Controller number 73)
Status 2nd byte 3rd byte BnH 49H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Attack time value (relative change): 00H–7FH (-64–0–+63),
6 Cuto (Controller number 74)
Status 2nd byte 3rd byte BnH 4AH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Cuto value (relative change): 00H–7FH (-64–0–+63)
6 Decay Time (Controller number 75)
Status 2nd byte 3rd byte BnH 4BH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Decay Time value (relative change): 00H–7FH (-64–0–+63)
6 Vibrato Rate (Controller number 76)
Status 2nd byte 3rd byte BnH 4CH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Vibrato Rate value (relative change): 00H–7FH (-64–0–+63)
6 Vibrato Depth (Controller number 77)
Status 2nd byte 3rd byte BnH 4DH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Vibrato Depth Value (relative change):00H–7FH (-64–0–+63)
6 Vibrato Delay (Controller number 78)
Status 2nd byte 3rd byte BnH 4EH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Vibrato Delay value (relative change):00H–7FH (-64–0–+63)
6 Portamento Control (Controller number 84)
Status 2nd byte 3rd byte BnH 54H kkH
n = MIDI channel number: 0H–FH (ch.1–16) kk = source note number: 00H–7FH (0–127)
* A Note-on received immediately after a Portamento Control message will change
continuously in pitch, starting from the pitch of the Source Note Number.
* If a voice is already sounding for a note number identical to the Source Note
Number, this voice will continue sounding (i.e., legato) and will, when the next Note-on is received, smoothly change to the pitch of that Note-on.
* The rate of the pitch change caused by Portamento Control is determined by the
Portamento Time value.
6 High Resolution Velocity Prex (Controller number 88)
Status 2nd byte 3rd byte BnH 58H kkH
6 Eect 1 (Reverb Send Level) (Controller number 91)
Status 2nd byte 3rd byte BnH 5BH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Reverb Send Level: 00H–7FH (0–127)
6 Eect 3 (Chorus Send Level) (Controller number 93)
Status 2nd byte 3rd byte BnH 5DH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Chorus Send Level: 00H–7FH (0–127)
6 RPN MSB/LSB (Controller number 100, 101)
Status 2nd byte 3rd byte BnH 65H mmH BnH 64H llH
n = MIDI channel number: 0H–FH (ch.1–16) mm = upper byte (MSB) of parameter number specied by RPN ll = lower byte (LSB) of parameter number specied by RPN
<<< RPN >>> Control Changes include RPN (Registered Parameter Numbers), which are extended. When using RPNs, rst RPN (Controller numbers 100 and 101; they can be sent in any order) should be sent in order to select the parameter, then Data Entry (Controller numbers 6 and 38) should be sent to set the value. Once RPN messages are received, Data Entry messages that is received at the same MIDI channel after that are recognized as changing toward the value of the RPN messages. In order not to make any mistakes, transmitting RPN Null is recommended after setting parameters you need.
This device receives the following RPNs.
RPN Data entry MSB, LSB MSB, LSB Notes 00H, 00H mmH, llH
00H, 01H mmH, llH
00H, 02H mmH, llH
00H, 05H mmH, llH
7FH, 7FH ---, ---
Pitch Bend Sensitivity mm: 00H–18H (0–24 semitones) ll: ignored (processed as 00H) Up to 2 octave can be specied in semitone steps. Channel Fine Tuning mm, ll: 20 00H–40 00H–60 00H (-4096 x 100 / 8192–0–+4096 x 100 / 8192 cent) Channel Coarse Tuning mm: 10H–40H–70H (-48–0–+48 semitones) ll: ignored (processed as 00H) Modulation Depth Range mm, ll: 00 00H–06 00H (0–16384 x 600 / 16384 cent)
RPN null RPN and NRPN will be set as “unspecied.” Once this setting has been made, subsequent Parameter values that were previously set will not change. mm, ll: ignored
6 Harmonic Bar 1–9 (Controller number 102–110)
Status 2nd byte 3rd byte BnH 66H–6EH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127) Step0–8
n = MIDI channel number: 0H–FH (ch.1–16) kk = High Resolution Velocity Prex: 00H–7FH (0–127)
2
MIDI Implementation
6 Percussion Volume (Controller number 112)
Status 2nd byte 3rd byte BnH 70H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127) 0–63 = Normal, 64–127 = Soft
6 Percussion Switch/Decay (Controller number 114)
Status 2nd byte 3rd byte BnH 72H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127) O, 2nd/Fast, 2nd/Slow, 3rd/Fast, 3rd/Slow
7
Program Change
Status 2nd byte CnH ppH
n = MIDI channel number: 0H–FH (ch.1–16) pp = Program number: 00H–7FH (prog.1–prog.128)
7
Pitch Bend Change
Status 2nd byte 3rd byte EnH llH mmH
n = MIDI channel number: 0H–FH (ch.1–16) mm, ll = Pitch Bend value: 00 00H–40 00H–7F 7FH (-8192–0–+8191)
9
Channel Mode Messages
7
OMNI OFF (Controller number 124)
Status 2nd byte 3rd byte BnH 7CH 00H
n = MIDI channel number: 0H–FH (ch.1–16)
* The same processing will be carried out as when All Notes O is received.
7
OMNI ON (Controller number 125)
Status 2nd byte 3rd byte BnH 7DH 00H
n = MIDI channel number: 0H–FH (ch.1–16)
* The same processing will be carried out as when All Notes O is received. OMNI ON
will not be turned on.
7
MONO (Controller number 126)
Status 2nd byte 3rd byte BnH 7EH mmH
n = MIDI channel number: 0H–FH (ch.1–16) mm = mono number: 00H–10H (0–16)
* The same processing will be carried out as when All Notes O is received.
7
POLY (Controller number 127)
Status 2nd byte 3rd byte BnH 7FH 00H
7
All Sounds O (Controller number 120)
Status 2nd byte 3rd byte BnH 78H 00H
n = MIDI channel number: 0H–FH (ch.1–16)
* When this message is received, all notes currently sounding on the corresponding
channel will be turned o.
7
Reset All Controllers (Controller number 121)
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) Channel Pressure 0 (o) Modulation 0 (o) Breath Type 0 (min) Expression 127 (max) 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
n = MIDI channel number: 0H–FH (ch.1–16)
* The same processing will be carried out as when All Notes O is received.
9
System Realtime Message
7
Timing Clock
7
Active Sensing
Status FEH
* When Active Sensing is received, the unit will begin monitoring the intervals of
all further messages. While monitoring, if the interval between messages exceeds 420 ms, the same processing will be carried out as when All Sounds O, All Notes O and Reset All Controllers are received, and message interval monitoring will be halted.
7
All Notes O (Controller number 123)
Status 2nd byte 3rd byte BnH 7BH 00H
n = MIDI channel number: 0H–FH (ch.1–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.
3
MIDI Implementation
9
System Exclusive Message
Status 2nd byte 3rd byte
F0H iiH, ddH, ......,eeH F7H
F0H: System Exclusive Message status ii = ID number:
dd,...,ee = data: 00H–7FH (0–127) F7H: EOX (End Of Exclusive)
Of the System Exclusive messages received by this device, the Universal Non-realtime messages and the Universal Realtime messages and the Data Request (RQ1) messages and the Data Set (DT1) messages will be set automatically.
7
Universal Non-realtime System Exclusive Messages
an 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).
6 Identity Request Message
Status 2nd byte 3rd byte F0H 7EH, dev, 06H, 01H F7H
Byte Explanation F0H Exclusive status 7EH ID number (Universal Non-realtime Message) dev Device ID (dev: 10H–1FH, 7FH, the initial value is 10H (17)) 06H Sub ID#1 (General Information) 01H Sub ID#2 (Identity Request) F7H EOX (End Of Exclusive)
* When this message is received, “Identity Reply Message” (p. 8) will be transmitted.
7
Universal Realtime System Exclusive Messages
6 Master Volume
Status 2nd byte 3rd byte 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) 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. * The Master Volume parameter (EDIT: System: Master Volume) will change.
6 Master Fine Tuning
Status 2nd byte 3rd byte 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)
6 Master Coarse Tuning
Status 2nd byte 3rd byte F0H 7FH, 7FH, 04H, 04H, llH, mmH F7H
Byte Explanation F0H Exclusive status 7FH ID number (universal realtime message) 7FH Device ID (Broadcast) 04H Sub ID#1 (Device Control) 04H Sub ID#2 (Master Coarse Tuning) llH Master Coarse Tuning LSB mmH Master Coarse Tuning MSB F7H EOX (End Of Exclusive)
ll: ignored (processed as 00H) mm: 28H–40H–58H (-24–0–+24 [semitones])
7
Global Parameter Control
6 Scale/Octave Tuning Adjust
Status 2nd byte 3rd byte 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 = Undened 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 oset of 12 semitones from C to B 00H = -64 [cents] 40H = 0 [cents] (equal temperament) 7FH = +63 [cents] F7H EOX (End Of Exclusive)
6 Key-based Instrument Controllers
Status 2nd byte 3rd byte 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) : : F7 EOX (End Of Exclusive)
* This parameter aects drum instruments only.
mm, ll: 00 00H–40 00H–7F 7FH (-100–0–+99.9 [cents])
4
MIDI Implementation
7
Data Transmission
This instrument can use exclusive messages to exchange many varieties of internal settings with other devices. The model ID of the exclusive messages used by this instrument is 00H 00H 75H.
6 Data Request 1 (RQ1)
This message requests the other device to transmit data. The address and size indicate the type and amount of data that is requested. When a Data Request message is received, if the device is in a state in which it is able to transmit data, and if the address and size are appropriate, the requested data is transmitted as a Data Set 1 (DT1) message. If the conditions are not met, nothing is transmitted.
Status 2nd byte 3rd byte F0H 41H, dev, 00H, 00H, 75H, 11H, aaH, bbH, F7H ccH, ddH, ssH, ttH, uuH, vvH, sum
Byte Explanation F0H Exclusive status 41H ID number (Roland) dev Device ID (dev: 10H–1FH, 7FH) 00H Model ID #1 (RD-2000) 00H Model ID #2 (RD-2000) 75H model ID #3 (RD-2000) 11H Command ID (RQ1) aaH Address MSB bbH Address ccH Address ddH Address LSB ssH Size MSB ttH Size uuH Size vvH Size LSB sum Checksum F7H EOX (End Of Exclusive)
* The size of data that can be transmitted at one time is xed for each type of data.
And data requests must be made with a xed starting address and size. Refer to the address and size given in “3. Parameter Address Map” (p. 9).
* For the checksum, refer to 16 page.
6 Data Set 1 (DT1)
This is the message that actually performs data transmission, and is used when you wish to transmit the data. Status 2nd byte 3rd byte F0H 41H, dev, 00H, 00H, 75H, 12H, aaH, bbH, F7H ccH, ddH, eeH, ... H, sum
Byte Explanation F0H Exclusive status 41H ID number (Roland) dev Device ID (dev: 10H–1FH, 7FH, Initial value is 10H) 00H Model ID #1 (RD-2000) 00H Model ID #2 (RD-2000) 75H Model ID #3 (RD-2000) 12H Command ID (DT1) aaH
bbH
ccH
ddH
eeH
: : H 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 will be transmitted from the specied starting address and size. Refer to the address and size given in “3. Parameter Address Map” (p. 9).
* Data larger than 256 bytes will be divided into packets of 256 bytes or less, and
each packet will be sent at an interval of about 20 ms.
* Regarding the checksum, please refer to p. 16.
Address MSB: upper byte of the starting address of the data to be sent Address: upper middle byte of the starting address of the data to be sent Address: lower middle byte of the starting address of the data to be sent Address LSB: lower byte of the starting address of the data to be sent. Data: the actual data to be sent. Multiple bytes of data are transmitted in order starting from the address.
5
MIDI Implementation

2. Data Transmission

9
Channel Voice Messages
7
Status 2nd byte 3rd byte 8nH kkH vvH
n = MIDI channel number: 0H–FH (ch.1–16) kk = note number: 00H–7FH (0–127) vv = note of velocity: 00H–7FH (0–127)
7
Note on
Status 2nd byte 3rd byte 9nH kkH vvH
n = MIDI channel number: 0H–FH (ch.1–16) kk = note number: 00H–7FH (0–127) vv = note on velocity: 01H–7FH (1–127)
7
Control Change
* By selecting a controller number that corresponds to the setting of parameters
of controllers (Pedals, Assign 1-9, Sliders, Wheels), these can transmit any control change message.
6 Bank Select (Controller number 0, 32)
Status 2nd byte 3rd byte BnH 00H mmH BnH 20H llH
n = MIDI channel number: 0H–FH (ch.1–16) mm, ll = Bank number: 00 00H–7F 7FH (bank.1–bank.16384)
6 Modulation (Controller number 1)
Status 2nd byte 3rd byte BnH 01H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Modulation depth: 00H–7FH (0–127)
* These messages are transmitted when Modulation lever is operated.
6 Portamento Time (Controller number 5)
Status 2nd byte 3rd byte BnH 05H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Portamento Time: 00H–7FH (0–127)
* These messages are transmitted when Portamento Time is set in External Zone.
6 Data Entry (Controller number 6, 38)
Status 2nd byte 3rd byte BnH 06H mmH BnH 26H llH
n = MIDI channel number: 0H–FH (ch.1–16) mm, ll = the value of the parameter specied by RPN/NRPN mm = MSB, ll = LSB
6 Volume (Controller number 7)
Status 2nd byte 3rd byte BnH 07H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Volume: 00H–7FH (0–127)
* These messages are transmitted when Zone Level Slider is operated in External
Zone.
* These messages are transmitted when Volume value is set in External Zone.
6 Panpot (Controller number 10)
Status 2nd byte 3rd byte BnH 0AH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Panpot: 00H–40H–7FH (Left–Center–Right)
* These messages are transmitted when Pan value is set in External Zone.
6 Expression (Controller number 11)
Status 2nd byte 3rd byte BnH 0BH vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Expression: 00H–7FH (0–127)
6 Tone Color (Controller number 24)
Status 2nd byte 3rd byte BnH 18H vvH
n = MIDI channel number: 0H–3H (ch.1–4) vv = Expression: 00H–7FH (0–127)
6 Hold 1 (Controller number 64)
Status 2nd byte 3rd byte BnH 40H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127)
* These messages are transmitted when Damper pedal is operated.
6 Portamento (Controller number 65)
Status 2nd byte 3rd byte BnH 41H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127)
* These messages are transmitted when Portamento Switch is set in External Zone.
6 Sostenuto (Controller number 66)
Status 2nd byte 3rd byte BnH 42H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127)
6 Soft (Controller number 67)
Status 2nd byte 3rd byte BnH 43H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127)
6 Legato Footswitch (Controller number 68)
Status 2nd byte 3rd byte BnH 44H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Control value: 00H–7FH (0–127) 0–63 = OFF, 64–127 = ON
6 Resonance (Controller number 71)
Status 2nd byte 3rd byte BnH 47H vvH
n = MIDI channel number: 0H–FH (ch.1–16) vv = Resonance value (relative change): 00H–7FH (-64–0–+63)
* These messages are transmitted when Resonance value is set in External Zone.
6
Loading...
+ 11 hidden pages