Here is some information about some useful MIDI Sysex codes for the Roland Verselab MV-1. It's an ongoing work and I'll add more codes when I decode them. The MV-1 stands out with its distinctive feature of being tweakable via SYSEX codes, setting it apart from the MC-101 and 707 models.
You'll find this information useful if you're using your Verselab for Live performances, as Sysex MIDI will allow you to control more things on the MV-1. Combined with this Raspberry PI Midi hat I can convert Midi CC messages to MV-1 SYSEX messages.
While the MC-101 and 707 offer impressive functionality, they lack this advanced capability, making the MV-1 a preferred choice for those seeking deeper customization options and precise control over their soundscapes. With the ability to manipulate parameters via SYSEX codes, users can delve into intricate adjustments, unlocking a world of creative possibilities and allowing for seamless integration into diverse production setups. Whether shaping complex sequences or refining sonic textures, the MV-1's SYSEX tweakability empowers musicians to sculpt their musical visions.
All Roland Verselab MV-1 SYSex begin with: F0 41 10 00 00 00 6F 12 aa aa aa aa.
aa aa aa aa, are four hex numbers that are the 'address' of the parameter to change. After that you have more data, a checksum byte, and F7 to end the MIDI sysex.
Conventions used, for number with a border xx:
- tr = 07 + track number in hexadecimal (08 for Kick, 09 for Hats, etc)
- mu = 00 for mute (or Off), 01 for unmute (or On)
- cs = Roland data checksum, seems to be ignored in current firmware, can be 00
- v1 v2 = value from 00 00 (0) to 0f 0f (255), 8 bits are split over 2 bytes, the 1st nibble is always 0
- v1 v2 v3 = value from 00 00 00 00 (0) to 0f 0f 0f (4095), 12 bits are split over 3 bytes, the 1st nibble is always 0
Below I won't repeat the first 8 bytes sequence!
Tracks: mute/pan/volume/etc
- Mute/Unmute Track tr: 10 00 tr 0D mu cs F7
- Volume of Track tr: 10 00 tr 31 v1 cs F7
- Pan of Track tr: 10 00 tr 32 v1 v2 cs F7
- Reverb of Track tr: 10 00 tr 34 v1 v2 cs F7
- Delay of Track tr: 10 00 tr 36 v1 v2 cs F7
Example:
- Mute Track 1 full message: F0 41 10 00 00 00 6F 12 10 00 08 0D 00 5B F7
- Unmute Track 1 full message: F0 41 10 00 00 00 6F 12 10 00 08 0D 01 5A F7
Global MFX
- MFX ON: 10 00 18 01 01 56 F7
- MFX OFF: 10 00 18 01 00 57 F7
Multi-mode filter tone
All MFX parameters will start with 10 00 18 addr 08 00, where addr is the hex address of a parameter. For example if the multi-mode filter is enabled in your MFX, address 14 is where the tone parameter can be changed:
- 10 00 18 14 08 00 v1 v2 cs F7
Value from 0 to 255 in 2 bytes (see above).
Mid/Side Delay mix
- Mid: 10 00 18 10 08 00 v1 v2 cs F7
- Side: 10 00 18 3C 08 00 v1 v2 cs F7
Filter value from 00 00 (0) to 07 0f (127)
Note: my MVAVE MS1 seems to be limited to 16 bytes for Sysex over Bluetooth!! So these long 17 bytes sysex will fail to be transmitted properly.
2Tap Pan Delay
- Delay time: 10 00 18 14 08 v1 v2 v3 cs F7
- D.Time Note: 10 00 18 18 08 00 v1 v2 cs F7
-
Feedback: 10 00 18 1C 08 00 v1 v2 cs F7
-
HF Damp: 10 00 18 20 08 00 v1 v2 cs F7 <= to check again
Delay time in ms from 00 00 01 (1) to 0A 02 08 (2600 ms)s
Feedback value from 00 00 (0) to 06 02 (98)
3Tap Pan Delay
- Delay L sync (on/off): 10 00 18 10 08 00 00 01 or 00 cs F7
- DL. Time: 10 00 18 14 08 v1 v2 v3 cs F7
-
DLTime Note: 10 00 18 18 08 00 v1 v2 cs F7
-
Delay R sync (on/off): 10 00 18 1C 08 00 00 01 or 00 cs F7
- DRTime Note: 10 00 18 20 08 00 v1 v2 cs F7
-
DR. Time: 10 00 18 24 08 v1 v2 v3 cs F7
-
Delay C sync (on/off): 10 00 18 28 08 00 00 01 or 00 cs F7
- DC. Time: 10 00 18 2C 08 v1 v2 v3 cs F7
- DCTime Note: 10 00 18 30 08 00 v1 v2 cs F7
- Delay Feedback: 10 00 18 34 08 00 v1 v2 cs F7
-
HF Damp: 10 00 18 38 08 00 v1 v2 cs F7
-
Left level: 10 00 18 3C 08 00 v1 v2 cs F7
- Right level: 10 00 18 40 08 00 v1 v2 cs F7
- Center level: 10 00 18 44 08 00 v1 v2 cs F7
- Low gain: 10 00 18 48 08 00 v1 v2 cs F7
- High gain: 10 00 18 4C 08 00 v1 v2 cs F7
- Balance: 10 00 18 50 08 00 v1 v2 cs F7
- Level: 10 00 18 54 08 00 v1 v2 cs F7
Balance value from 00 00 (0) to 06 04 (100)
Feedback value from 00 00 (0) to 06 02 (98)
Delay time in ms from 00 00 01 (1) to 0A 02 08 (2600 ms)
Feedback value from 00 00 (0) to 06 02 (98)
Change the multimode filter type
- mode 0: 10 00 18 10 08 00 00 00 cs F7
- mode 1: 10 00 18 10 08 00 00 01 cs F7
- mode 2: 10 00 18 10 08 00 00 02 cs F7
Change the MFX type to X
MFX is hard to change live, as you have to scroll through a nice list of effects! So this SYSEX is a game changer 😁 The X value can be found in the following table below. The values were found in the Jupiter X documentation.
- 10 00 18 00 X cs F7
Category | Type | X Value |
---|---|---|
Thru | Thru | 0 |
Filter | Equalizer | 1 |
Mid-Side EQ | 77 | |
Spectrum | 2 | |
Isolator | 3 | |
Low Boost | 4 | |
SuperFilter | 5 | |
MM Filter | 88 | |
Step Filter | 6 | |
Enhancer | 7 | |
Exciter | 92 | |
Auto Wah | 8 | |
Humanizer | 9 | |
Phaser | Phaser | 11 |
SmallPhaser | 12 | |
Script 90 | 13 | |
Script 100 | 90 | |
Step Phaser | 14 | |
M StagePhsr | 15 | |
Inf Phaser | 16 | |
Flanger | Flanger | 24 |
SBF-325 | 73 | |
StepFlanger | 25 | |
Chorus | Chorus | 23 |
Hexa-Chorus | 26 | |
Trem Chorus | 27 | |
Space-D | 28 | |
CE-1 | 72 | |
SDD-320 | 74 | |
JUNO Chorus | 87 | |
Modulation | Ring Mod | 17 |
Tremolo | 18 | |
Auto Pan | 19 | |
Slicer | 20 | |
Rotary | 21 | |
VK Rotary | 22 | |
Drive / Amp | Overdrive | 29 |
Distortion | 30 | |
T-Scream | 31 | |
Fuzz | 86 | |
Fattener | 79 | |
HMS Distort | 89 | |
Saturator | 84 | |
W Saturator | 85 | |
Gt Amp Sim | 32 | |
EP Amp Sim | 81 | |
Speaker Sim | 10 | |
Comp / Limiter | Compressor | 33 |
M/S Comp | 78 | |
Limiter | 34 | |
Sustainer | 35 | |
Transient | 76 | |
Gate | 36 | |
Delay | Delay | 37 |
Mod Delay | 38 | |
2Tap PanDly | 75 | |
3Tap PanDly | 39 | |
4Tap PanDly | 40 | |
MultiTapDly | 41 | |
Reverse Dly | 42 | |
TimeCtrlDly | 43 | |
Tape Echo | 44 | |
M/S Delay | 80 | |
Looper | DJFX Looper | 82 |
BPM Looper | 83 | |
Lo-fi | LOFI Comp | 45 |
Bit Crusher | 46 | |
Phonograph | 91 | |
Pitch | PitchShiftr | 47 |
2V PShifter | 48 | |
Combination | OD->Chorus | 49 |
OD->Flanger | 50 | |
OD->Delay | 51 | |
DS->Chorus | 52 | |
DS->Flanger | 53 | |
DS->Delay | 54 | |
OD/DS>T.Wah | 55 | |
OD/DS>A.Wah | 56 | |
Gt->Chorus | 57 | |
Gt->Flanger | 58 | |
Gt->Phaser | 59 | |
Gt->Delay | 60 | |
EP->Tremolo | 61 | |
EP->Chorus | 62 | |
EP->Flanger | 63 | |
EP->Phaser | 64 | |
EP->Delay | 65 | |
Enhncr->Cho | 66 | |
Enhncr->Fl | 67 | |
Enhncr->Dly | 68 | |
Chorus->Dly | 69 | |
Flanger>Dly | 70 | |
Chorus->Fl | 71 | |
JD-Multi | 93 |
Dawless sysex send
If you don't have a DAW and/or PC, you can use the following solutions:
- An Android device, with MIDI commander from Bordero, plus a USB MIDI cable, or a 'MVAVE MS1' adapter to send the codes via Bluetooth MIDI.
- For iOS devices, Mozaic is a great tool to send anything to MIDI devices
- Custom Arduino or Raspberry PI code
If you want to share more Sysex codes, or need more examples, please comment below 👌
Speak your mind