This guide will explain how you can use MIDI System Exclusive Messages (SysEx) to achieve real-time control of all editable parameters of the Roland Juno 106, Alpha Juno 1, 2 and MKS-50. The MIDI SysEx information can be recorded, transmitted and replayed just like MIDI controller data, giving you fully automated and controllable parameter editing for these classic synths!
All you need is a hardware or software sequencer that is capable of outputting MIDI SysEx messages. Sequencers like Performer, Cubase, Logic, and hardware like the Roland PG-300 Controller have this ability. In the following guide, you will get the info you need to set-up continuous controllers or mixer maps that you can use within your sequencing program.
The Juno 106 will transmit SysEx messages through its MIDI Out port when the MIDI Function switch is set to position 3. Any slider moves or buttons pushed on the Juno 106's front panel will be transmitted and can be recorded into a sequencer - and played back in to the Juno-106! Any on-board editing you transmit and record into your sequencer will always be re-applied to the Juno 106 during playback.
However you may want to create your own programmer/controller for your Juno 106 using your Sequencer program. Simply set-up a Continuous Controller that will send MIDI SysEx Messages to your Juno 106 and use the following code-chart to create controllers for the Juno-106 parameters you want to edit.
I. First you must set the Juno 106's Midi Mode switch to 3 (on the rear).
II. These are the components of the system exclusive message:
F0 [Start Exclusive]
41 [Roland ID#]
32 [Function Type]
0N [N+1=MIDI
channel (N=0-15, Chan 1=00)]
XX [Parameter number (0-09, 0A-0F)] see table
below
YY [Variable value (0-127)] Should be left at 00
F7 [End of
Exclusive]
III. Here is an example:
A SysEx message for editing the VCF Resonance
Parameter on MIDI channel 1:
F0 41 32 00 06 00 F7
"06" Is the SysEx code for the VCF Resonance Parameter.
"00"
Is the SysEx code for the variable start value of the current edit
parameter.
CODE (XX) | EDIT PARAMETER | COMPLETE SYSEX CODE |
00 | LFO rate | F0 41 32 00 00 00 F7 |
01 | LFO delay | F0 41 32 00 01 00 F7 |
02 | DCO LFO modulation level | F0 41 32 00 02 00 F7 |
03 | DCO PWM modulation level | F0 41 32 00 03 00 F7 |
04 | Noise level | F0 41 32 00 04 00 F7 |
05 | VCF cutoff level | F0 41 32 00 05 00 F7 |
06 | VCF resonance level | F0 41 32 00 06 00 F7 |
07 | VCF ENV level | F0 41 32 00 07 00 F7 |
08 | VCF LFO modulation level | F0 41 32 00 08 00 F7 |
09 | VCF KYBD modulation level | F0 41 32 00 09 00 F7 |
0A | VCA level | F0 41 32 00 0A 00 F7 |
0B | ENV attack rate | F0 41 32 00 0B 00 F7 |
0C | ENV decay rate | F0 41 32 00 0C 00 F7 |
0D | ENV sustain level | F0 41 32 00 0D 00 F7 |
0E | ENV release rate | F0 41 32 00 0E 00 F7 |
0F | Sub level | F0 41 32 00 0F 00 F7 |
Extra Links And Resources:
Here is a custom
console I made for Performer (Mac) that you can use to control these Juno 106
parameters from any version of Performer or Digital Performer.
The Alpha Juno 1, 2 and MKS-50 transmit MIDI system exclusive messages through the MIDI Out port whenever you do any editing via the alpha-dial or press any buttons. These SysEx messages can be recorded into a sequencer and played back! And any editing you've recorded will always be re-applied during playback and can be further fine-tuned.
You can create your own external programmer/controllers for your Juno using your Sequencer or computer. Simply create a Controller that will send MIDI System Exclusive Messages to your Juno and use the following codes to create controllers for the parameters you want to control.
I. First scroll through the MIDI menu and turn Exclusive Messages ON.
II. These are the components of the system exclusive message:
F0 [Exclusive]
41 [Roland ID#]
36 [Individual Tone Parameters]
0N
[N=MIDI channel (N=0-F, Chan 1=00 Chan 16=0F)]
23 [Format type]
20
[unknown]
01 [unknown]
XX [Parameter number (0-23)] see table below
YY
[Value (0-127)] Can be left at 00
F7 [End of Exclusive]
III. Here is an example:
A SysEx message for editing the VCF Resonance
Parameter on MIDI channel 1:
F0 41 36 00 23 20 01 11 00 F7
"11" Is the SysEx code for the VCF Resonance edit
parameter.
"00" Is the SysEx code for the variable start value of the
current edit parameter.
(Parentheses indicated range of variable values 'YY' possible for the parameter.)
CODE (XX) | EDIT PARAMETER | COMPLETE SYSEX CODE |
00 | DCO Env. Mode (0=Normal, 1=Inverted, 2=Normal-Dynamic, 3=Inv.-Dynamic) | F0 41 36 00 23 20 01 00 00 F7 |
01 | VCF Env. Mode (0=Normal, 1=Inverted, 2=Normal-Dynamic, 3=Dynamic) | F0 41 36 00 23 20 01 01 00 F7 |
02 | VCA Env. Mode (0=Normal, 1=Gate, 2=Normal-Dynamic, 3=Gate-Dynamic) | F0 41 36 00 23 20 01 02 00 F7 |
03 | DCO Wave Pulse (0..3) | F0 41 36 00 23 20 01 03 00 F7 |
04 | DCO Wave Saw (0..5) | F0 41 36 00 23 20 01 04 00 F7 |
05 | DCO Wave Sub (0..5) | F0 41 36 00 23 20 01 05 00 F7 |
06 | DCO Range (0=4', 1=8', 2=16', 3=32') | F0 41 36 00 23 20 01 06 00 F7 |
07 | DCO Sub Level (0..3) | F0 41 36 00 23 20 01 07 00 F7 |
08 | DCO Noise (0..3) | F0 41 36 00 23 20 01 08 00 F7 |
09 | HPF Cutoff (0..3) | F0 41 36 00 23 20 01 09 00 F7 |
0A | Chorus Switch (0=Off, 1=On) | F0 41 36 00 23 20 01 0A 00 F7 |
0B | DCO LFO Mod. (0..7F) | F0 41 36 00 23 20 01 0B 00 F7 |
0C | DCO ENV Mod. (0..7F) | F0 41 36 00 23 20 01 0C 00 F7 |
0D | DCO After Mod. (0..7F) | F0 41 36 00 23 20 01 0D 00 F7 |
0E | DCO PWM Depth (0..7F) | F0 41 36 00 23 20 01 0E 00 F7 |
0F | DCO PWM Rate (0..7F) 0 = Pulse Width Manual 1..7F = PW LFO Rate | F0 41 36 00 23 20 01 0F 00 F7 |
10 | VCF Cutoff (0..7F) | F0 41 36 00 23 20 01 10 00 F7 |
11 | VCF Resonance (0..7F) | F0 41 36 00 23 20 01 11 00 F7 |
12 | VCF LFO Mod. (0..7F) | F0 41 36 00 23 20 01 12 00 F7 |
13 | VCF ENV Mod. (0..7F) | F0 41 36 00 23 20 01 13 00 F7 |
14 | VCF Key Follow (0..7F) | F0 41 36 00 23 20 01 14 00 F7 |
15 | VCF Aftertouch (0..7F) | F0 41 36 00 23 20 01 15 00 F7 |
16 | VCA Level (0..7F) | F0 41 36 00 23 20 01 16 00 F7 |
17 | VCA Aftertouch (0..7F) | F0 41 36 00 23 20 01 17 00 F7 |
18 | LFO Rate (0..7F) | F0 41 36 00 23 20 01 18 00 F7 |
19 | LFO Delay (0..7F) | F0 41 36 00 23 20 01 19 00 F7 |
1A | ENV T1 (0..7F) Attack Time | F0 41 36 00 23 20 01 1A 00 F7 |
1B | ENV L1 (0..7F) Attack Level | F0 41 36 00 23 20 01 1B 00 F7 |
1C | ENV T2 (0..7F) Break Time | F0 41 36 00 23 20 01 1C 00 F7 |
1D | ENV L2 (0..7F) Break Level | F0 41 36 00 23 20 01 1D 00 F7 |
1E | ENV T3 (0..7F) Decay Time | F0 41 36 00 23 20 01 1E 00 F7 |
1F | ENV L3 (0..7F) Sustain Level | F0 41 36 00 23 20 01 1F 00 F7 |
20 | ENV T4 (0..7F) Release Time | F0 41 36 00 23 20 01 20 00 F7 |
21 | ENV Key Follow (0..7F) | F0 41 36 00 23 20 01 21 00 F7 |
22 | Chorus Rate (0..7F) | F0 41 36 00 23 20 01 22 00 F7 |
23 | Bender Range (0..C) | F0 41 36 00 23 20 01 23 00 F7 |
Extra Links And Resources:
Here is a custom
console I made for Performer (Mac) that you can use to control these Alpha-Juno
parameters from any version of Performer or Digital
Performer.