MIDI

VR-‘Sound engines’ and MIDI


As discribed in GM2 Sounds, the VR has two distinct ‘sound engines’ that can be controlled by Midi:

  1. the VR Keyboard Engine: Midi-communication to the Keyboard engine is done by ‘Midi System Exclusive messages’ (also called ‘SysEx’, see next chapter). There are some ‘Classic GM-format Midi’ messages (Control Changes, Pitch, Program changes etc) that can be transmitted and received by the VR Keyboard engine (see “List of ‘classic midi signals’ of the VR”).
    VR has no ‘special Control Changes for e.g. the drawbars, most of knobs etc – these only work with SysEx messages!
  2. the VR GM2 Engine: Midi-communication to the GM2 engine is done by ‘Classical Midi’ (System Exclusive does not work with GM2 engine). Midi is only received but not transmitted

VR: classic midi against system exlusive messages – the problem


It’s said that the VR handles MIDI badly. What does this mean?

Well, the MIDI world knows two basic ‘formats’ of message types:
A) The ‘classical midi messages’: these are NOTE ON/OFF, Control Changes (CC), Program Changes etc etc etc. These are ‘universal’ device-independent messages that cover standarized basic midi functions (lke ‘modulation’, ‘pitch bend’, etc) and device specific messages for selected features of the device. The amount of possible classical midi messages is limited though : on modern keys and synths with thousands of ‘controls’ and parameters, they simply cannot cover all features.
B) System Exclusive messages (also ‘SysEx’, ‘sysex’ or ‘syx’): SysEx messages depend on the device (keyboard) and cannot be applied to other devices, but they are principally ‘unlimited’. In the VR they allow you to access any controller/parameter.

The VR is 99% based on SysEx messages. It accepts only a few ‘universal’ classical midi messages like NOTE on/off, modulation (CC1), volume (CC 7) etc (see below). A popular example are the VR drawbars: on most combo organs drawbars can be controlled by Control Change messages. The VR drawbars do only send/receive SysEx messages. Unfortunately most midi controllers/midi keyboards and a lot of software tools (e.g. virtual pianos or organs) are not able to handle SysEx. Therefore it’s necessary to use (and configure) ‘midi translators’ (software) which transform the VR SysEx into Control Changes (see below)


VR and ‘classical Midi’


The VR MIDI TX and RX channels


A) Send (Transmit/TX) Midi:
transmit are midi signals sent from the VR to other devices (keyboards, computers, etc.) by actioning VR ‘controllers’ (e.g. keys, knobs).
The midi channls on which the VR sends classical midi signals from its ‘controls’ (e.g. key manuals). The ‘default TX channel’ can be customized in the VR menu ‘MIDI’. The customized channels are saved in VR registrations.

VR “part” default TX Channel custom TX Channel
VR ‘solo manual’ 1 cannot be changed
VR ‘pedal manual’ 2 1-16
VR ‘lower manual’ 3 1-16
VR ‘upper manual’ 4 1-16
VR ‘DRUM’ 11 1-16
VR ‘D-Beam SFX sounds’ 13 cannot be changed
VR ‘Midi CONTROL’ 16 1-16

B) Receive (RX) Midi:
receive are midi signals that can be received in the VR from other device (keyboards, computers, …).

Depending on the midi channel, the received midi signals are routed either to the ‘VR keyboard engine’ or the ‘hidden VR GM2 engine’.
The routing also depends on the ‘MIDI MODE’ chosen in the VR menu ‘MIDI’:
  – VR in ‘MIDI MODE 2’: channels 1-4,11,13,16 are directed to the VR Keyboard engine, channels 5-10,12,14,15 directed to the GM2 engine
  – VR in ‘MIDI MODE 1’: all channels 1-15 directed to the VR GM2 engine and none to keyboard engine

RX Channel MIDI MODE 2 MIDI MODE 1 MIDI MODE KEYBOARD
1 Keyboard engine ‘solo manual’ GM2 engine Keyboard engine ‘lower manual’
2 Keyboard engine ‘pedal manual’ GM2 engine Keyboard engine ‘lower manual’
3 Keyboard engine ‘lower manual’ GM2 engine Keyboard engine ‘lower manual’
4 Keyboard engine ‘upper manual’ GM2 engine Keyboard engine ‘lower manual’
5-10 GM2 engine GM2 engine Keyboard engine ‘lower manual’
11 Keyboard engine ‘DRUM’ GM2 engine Keyboard engine ‘lower manual’
12 GM2 engine GM2 engine Keyboard engine ‘lower manual’
13 Keyboard engine ‘D-Beam SFX’ (notes C-1 to F#2) GM2 engine Keyboard engine ‘lower manual’
14 GM2 engine GM2 engine Keyboard engine ‘lower manual’
15 GM2 engine GM2 engine Keyboard engine ‘lower manual’
16 Keyboard engine ‘CONTROL’ GM2 engine Keyboard engine ‘lower manual’


List of ‘classic midi signals’ of the VR:

The following table shows an overview of ‘Classical Midi’ received and transmitted messages:

Midi Function Midi
Message
Type
VR keyboard Controllers
(all Modes)
Controller-Type          transmit
KBD Engine
(Mode 2)
receive
GM2 Engine
(Mode 1+2)
receive
Note ON/OFF 9n, 8n Keys/Keybed yes yes yes
D-Beam SFX sounds: ‘note’ on CH 13 9d, 8d D-Beam yes yes n.a.
Sound Program Change + Bank msb lsb pc VR sound+drum buttons/dial yes yes yes
Registration Program Change + Bank msb lsb pc VR registrations yes
Pitch bend En ll mm Joystick, D-Beam yes [1] yes yes
Modulation CC 1 Joystick yes yes yes
Volume CC 7 Volume knob yes yes
Expression CC 11 Expression pedal yes [2] yes yes
Panpot CC 10 yes yes
Portamento: time, on/off CC 5,65 yes yes
Envelope: Attack, Decay, Release CC 73, 75, 72 yes yes
Filter: Resonance, Cutoff CC 71,74 yes yes
Piano-Pedals: Sustain, Soft, Sostenuto CC 64,67,66 yes yes
Vibrato: Rate, Depth, Delay CC 76,77,78 yes yes
Reverb Level CC 91 yes
Chorus Level CC 93 yes
Sound Variation (Sustain) CC 70 yes
Hold 1 CC 64 yes yes
Midi Panic CC 121 yes yes

[1] Joystick pitch is ‘stepped’, see bug ‘pitch bend stepping’ in VR Bugs, Tips & Tricks
[2] No signal send on USB-Midi, only on DIN-socket

VR and ‘GM2 sound engine’

The VR has a second sound engine under the hood – the ‘GM’ (General Midi) Roland sound library with several hundreds of sounds and ‘classical midi controls’
The GM2 sound engine is fully (and only) controllable by control changes (no SysEx!)

The GM2 sound can be played by:
– external midi gear (e.g. a 2nd keyboard or software)
– running a midi song file from the VR USB-stick
– directly on the VR by connection VR midi-out to -in and setting the TX channel(s) to a ‘GM2 channel’.
   See below: ‘ring trick’

To load (and customise) GM sounds you can use
– The [GM2] section of CTRLR EDITOR: it addresses the ‘official’ VR GM2 sounds plus a huge number of ‘unofficial’ sounds
– any programmable midi controller able to send Midi Bank-Select + Program Changes (PC). PC numbers of official’ GM2 sounds are listed in the MIDI implementation manual (Roland VR manuals). PC numbers of additional GM sounds can be taken from the ‘GM2 Display’ of CTRLR EDITOR

The GM2 midi ‘ring trick’
or: how to play a GM2 sound without external arms 🙂
The Trick is to plug a 5-pin midi cable from VR midi-out to midi-in (the ‘ring’ – or ‘bridge’). This will enable you to:
1. send a program change message from a VR registration to a ‘GM2’ midi channel for loading a GM2 sound
2. send note on/off messages from the VR keybed to this ‘GM2’ channel for playing the GM sound

WARNING:
As long as the midi cable stays at its place, the keybed will always send midi notes to the ‘TX’ channel of the manual. The default TX channels (e.g. channel 4 for upper manual) will result into ‘double-playing’ of the VR manual sound. If an active ‘GM2’ channel is selected as TX channel, this will always trigger the GM2 default sound (a piano).
The trick is to set the TX channels of ALL non-‘GM2’-registrations to the ‘deaf’ control channel 16 (with the VR being in Midi ‘Mode 2’ or ‘keyboard’). Channel 16 does not receive midi note messages

The process is:
– set VR to Midi-Mode 2
– set the TX channels of upper, lower, bass and drum manual of ALL registrations to channel 16
   You can use the UPG-Editor of CTRLR editor for comfortably muting all TX channels with the ‘GM2 sil’ button

Now all registrations are ‘disarmed’. To activate a GM2 sound for a VR registration:
– load the VR registration
– set TX channel of the manual (e.g. upper) that you want for playing GM2 sounds to a GM2-channel (e.g. channel 5)
– set ‘control TX channel’ also to channel 5
– set ‘program change’ and ‘msb/lsb bank select’ to the numbers of a GM2 sound
– you can layer the GM2 sound with a ‘VR sound’ from the PIANO or SYNTH section – or mute the ‘VR sound’ by decreasing it’s volume
– connect VR midi out to midi-in using a 5-pin DIN cable
– reload the VR registration and test if the GM2 sound can be played
voilà


VR and ‘SysEx’


SysEx is not complicated to understand – but it needs a certain learning curve: please find you some literature (web, books)


VR and Midi Devices


Connecting a 2nd keyboard to the VR via midi

Any (midi) keyboard is able to play notes on the VR (e.g. as a real ‘lower manual’).
But only a few keyboards (able to send ‘SysEx’) can be used for more sophisticated VR control

  1. If you want to use the midi keyboard as ‘lower manual’
    – on VR, open VR menu, goto MIDI, switch ‘MIDI MODE’ to ‘KEYBOARD’
    – connect your midi keyboard with a 5-pin midi cable (keyboard midi-out to VR midi-in)
    – that’s all, VR will automatically react to any note signals independent of the midi channel
  2. If you want to use the midi keyboard for playing sounds on any VR manual (upper, lower, bass and ‘solo’)
    – on VR, open VR menu, goto MIDI, switch ‘MIDI MODE’ to ‘MODE 2’
    – connect your midi keyboard with a 5-pin midi cable (keyboard midi-out to VR midi-in)
    – on the midi keyboard, set the ‘TX’ (transmit or ‘sending’) midi channel to the ‘receive’ midi channel of the VR manual. If you don’t know how to set the TX channels on your keyboard, consult the keyboard user manual please)
           VR upper manual: Channel 4 (see notes ‘dual mode’)
           VR solo manual: Channel 1 (see note ‘dual mode’)
           VR lower manual: Channel 3
           VR bass manual: Channel 2
       NOTE: the receive (‘RX’) channels of the VR cannot be changed
    – now you should be able to play VR sounds with the midi keyboard

‘Dual mode’:
As long as you only use one sound in upper manual life is simple and you only have to use channel 4.
It gets complicated when you use the VR in dual mode, e.g. layering 2 sounds:
depending on the category of the sounds they are both loaded either both to ‘upper manual’ or one is in upper manual and the other in ‘solo’ (‘dual piano’) manual.
When playing on the VR keybed you always trigger both sounds by playing on the upper manual of the VR keybed: the keybed triggers both ‘virtual’ upper and solo manuals.
This ‘sound thing’ does sound complicated, doesn’t it? Well, think of making a distinction between the physical ‘VR key manual’ and abstract ‘VR sound manuals’: the ‘key manual’ is just the physical keybed, that is separated in a physical upper and lower. The ‘VR sound manual’ is a ‘container’ where sounds are loaded into. On the the VR, the ‘upper key manual’ always triggers both upper and solo ‘sound manuals’. With an external keyboard you can trigger either upper (channel 4) or solo (channel 1)

Now we have to consider 3 different cases (sorry for that – but it is like it is):

– if you layer 2 sounds from the VR SYNTH section, both sounds are ‘loaded’ to upper sound manual and respond to channel 4
– if you layer 2 sounds from the VR PIANO section one of the sounds is in upper, the other in the solo ‘sound manual’: you see this in the VR LCD display: [1] is the upper sound manual (channel 4), [2] is the solo sound manual (channel 1)
– if you layer 1 sound from SYNTH and 1 from PIANO section the sounds can be in upper+solo or both in upper sound manuals: which sound is where depends on the type of sound , the order of the pressed buttons etc… in brief: finally you don’t know !!!

So how should one handle this ‘mess’: instead of getting a Gordian knot in your head, simply probe : set your midi keyboard to channel 4, then 1, and listen which sound it triggers. A more organised method is to use CTRLR EDITOR which shows which sound is in which ‘sound manual’

If you want to use the midi keyboard to play the ‘hidden’ GM2 sounds please refer to GM2 Sounds, CTRLR EDITOR ‘QuickHelp’, YouTube ‘VR 09 GM2’

Full Midi control between software (apps) and VR

Virtual Instruments (organ, synths etc) usually don’t understand VR SysEx Messages but there are ways to make them communicate: you can use the virtual instruments as VSTs in DAWs that are able to handle SysEx, or use a ‘mapping software (app’) to translate between Midi-CC and sysex:

Organ App [CC] ↞ mapper ↠ [SysEx] VR

Examples for mapping software:
– CTRLR V-COMBO EDITOR (free): Midi-Mapper section, including Roland checksum handling
– BOME midi translator CLASSIC (free) for Windows
– BOME midi translator PRO (payed) for Windows and OSX
– KeyStage for IOS (tablet/smartphone)

Full Midi control between Midi Controllers and VR

As said, there are very few midi controllers (keyboards) that can handle SysEx to communicate with the VR (see GEAR).
There is even only one midi keyboard available, the Roland A-Pro series.

For ‘non sysex controllers’, you can use a computer/tablet with ‘mapping software’ that you put between the controller and the VR for mapping sysex coming from the VR to the controller. The opposite direction (controller -> VR) is more complicated: either the software is be able to handle Roland sysex checksum or a ‘mapping rule’ has to be created for each single midi value