Skip to content

Roland MKS30 w/JH: MIDI CC, NRPN and OSC map

The Roland MKS30 w/JH as named OSC addresses — 4 CC, 35 NRPN — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.

Device Roland MKS30 w/JH
Vendor Roland
OSC prefix /mks30_w_jh
Source 🎛️ Derived from an Electra One community preset
Revision per Electra preset
Upstream electra-preset
Driver file devices/roland/mks30_w_jh.json

Not tested on the device yet

This driver comes from documentation or community data and has not been checked on real hardware. If you own one, a quick test and a pull request promoting it helps everyone — see CONTRIBUTING.

How do you control it?

Find the MIDI ports, then start the bridge with this driver:

osc-bridge detect        # prints the ready-to-run line for what is plugged in
osc-bridge run --device devices/roland/mks30_w_jh.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /mks30_w_jh/range 63

From Claude or any MCP client, the osc-bridge mcp server exposes this driver as mks30_w_jh: ask “what can the Roland MKS30 w/JH do?” and it reads this map with list_routes. See the MCP guide.

MIDI CC and NRPN parameters (39)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/mks30_w_jh/range 24 / 8 0–127 continuous
/mks30_w_jh/waveform 27 / 9 0–127 continuous
/mks30_w_jh/data 96 0–127 continuous
/mks30_w_jh/data 97 0–127 continuous
/mks30_w_jh/fm_env 39 / 13 0–127 continuous
/mks30_w_jh/fm_lfo 36 / 12 0–127 continuous
/mks30_w_jh/range 30 / 10 0–127 continuous
/mks30_w_jh/waveform 33 / 11 0–127 continuous
/mks30_w_jh/tune 6 / 2 -63–64 continuous
/mks30_w_jh/fine_tune 3 / 1 -63–64 continuous
/mks30_w_jh/fm_env 45 / 15 0–127 continuous
/mks30_w_jh/fm_lfo 42 / 14 0–127 continuous
/mks30_w_jh/dco1_dco2 21 / 7 -63–64 continuous
/mks30_w_jh/cross_mod 9 / 3 0–127 continuous
/mks30_w_jh/hpf 63 / 20 0–127 continuous
/mks30_w_jh/env_polarity 18 / 6 0–127 continuous
/mks30_w_jh/env_depth 15 / 5 0–127 continuous
/mks30_w_jh/lfo_depth 12 / 4 0–127 continuous
/mks30_w_jh/cutoff 2 / 0 0–127 continuous
/mks30_w_jh/resonance 48 / 16 0–127 continuous
/mks30_w_jh/key_track 54 / 18 0–127 continuous
/mks30_w_jh/env_polarity 63 / 21 0–127 continuous
/mks30_w_jh/env_depth 51 / 17 0–127 continuous
/mks30_w_jh/lfo_depth 57 / 19 0–127 continuous
/mks30_w_jh/attack 72 / 24 0–127 continuous
/mks30_w_jh/attack 75 / 25 0–127 continuous
/mks30_w_jh/attack 78 / 26 0–127 continuous
/mks30_w_jh/attack 81 / 27 0–127 continuous
/mks30_w_jh/mode 69 / 23 0–127 continuous
/mks30_w_jh/level 66 / 22 0–127 continuous
/mks30_w_jh/waveform 84 / 28 0–127 continuous
/mks30_w_jh/rate 90 / 30 0–127 continuous
/mks30_w_jh/delay 87 / 29 0–127 continuous
/mks30_w_jh/chorus 93 / 31 0–127 continuous
/mks30_w_jh/dynamic 105 / 35 0–127 continuous
/mks30_w_jh/playable 102 / 34 0–127 continuous
/mks30_w_jh/split_point 99 / 33 0–127 continuous
/mks30_w_jh/data_entry 6 0–127 continuous
/mks30_w_jh/volume 7 0–127 continuous

Performance MIDI

Notes, pitch bend and any CC are also available: /mks30_w_jh/note/on <note> <velocity>, /mks30_w_jh/cc/<number> <value>, /mks30_w_jh/pitchbend <0-16383>, /mks30_w_jh/program_change <n>.

Limitations

Imported from an Electra One community preset. The mapping reflects the preset author's editorial choices: parameter naming, ranges, and which params are exposed. Untested on hardware in this repo.