Roland MKS-30 KIWI V2: MIDI CC, NRPN and OSC map¶
The Roland MKS-30 KIWI V2 as named OSC addresses — 91 CC, 3 SysEx commands — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Roland MKS-30 KIWI V2 |
|---|---|
| Vendor | Roland |
| OSC prefix | /mks_30_kiwi_v2 |
| Source | 🎛️ Derived from an Electra One community preset |
| Revision | per Electra preset |
| Upstream | electra-preset |
| Driver file | devices/roland/mks_30_kiwi_v2.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/mks_30_kiwi_v2.json --out-port <N> --in-port <M>
Then send OSC to 127.0.0.1:7777, for example:
From Claude or any MCP client, the osc-bridge mcp server exposes this driver as mks_30_kiwi_v2: ask “what can the Roland MKS-30 KIWI V2 do?” and it reads this map with list_routes. See the MCP guide.
MIDI CC and NRPN parameters (91)¶
| OSC address | CC | NRPN (MSB/LSB) | Range | Nature | Section |
|---|---|---|---|---|---|
/mks_30_kiwi_v2/range |
65 | 0–127 | continuous | ||
/mks_30_kiwi_v2/wave |
66 | 0–127 | continuous | ||
/mks_30_kiwi_v2/coarse_tune |
8 | -12–12 | continuous | ||
/mks_30_kiwi_v2/cross_mod |
84 | 0–127 | continuous | ||
/mks_30_kiwi_v2/dco_mix |
22 | -63–64 | continuous | ||
/mks_30_kiwi_v2/env_src |
68 | 0–127 | continuous | ||
/mks_30_kiwi_v2/level |
10 | -63–64 | continuous | ||
/mks_30_kiwi_v2/source |
67 | 0–127 | continuous | ||
/mks_30_kiwi_v2/level |
12 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_1 |
35 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_1 |
36 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_1 |
37 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_1 |
39 | 0–127 | continuous | ||
/mks_30_kiwi_v2/range |
70 | 0–127 | continuous | ||
/mks_30_kiwi_v2/coarse_tune |
14 | -12–12 | continuous | ||
/mks_30_kiwi_v2/fine_tune |
15 | -50–50 | continuous | ||
/mks_30_kiwi_v2/env_2 |
40 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_2 |
41 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_2 |
42 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_2 |
43 | 0–127 | continuous | ||
/mks_30_kiwi_v2/vca_mode |
77 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_src |
73 | 0–127 | continuous | ||
/mks_30_kiwi_v2/level |
17 | -63–64 | continuous | ||
/mks_30_kiwi_v2/source |
72 | 0–127 | continuous | ||
/mks_30_kiwi_v2/level |
16 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_3 |
59 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_3 |
60 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_3 |
61 | 0–127 | continuous | ||
/mks_30_kiwi_v2/env_3 |
62 | 0–127 | continuous | ||
/mks_30_kiwi_v2/cutoff |
27 | 0–127 | continuous | ||
/mks_30_kiwi_v2/resonance |
28 | 0–127 | continuous | ||
/mks_30_kiwi_v2/key_track_lvl |
31 | 0–127 | continuous | ||
/mks_30_kiwi_v2/cutoff |
33 | 0–127 | continuous | ||
/mks_30_kiwi_v2/level |
30 | -63–64 | continuous | ||
/mks_30_kiwi_v2/env_src |
76 | 0–127 | continuous | ||
/mks_30_kiwi_v2/level |
29 | 0–127 | continuous | ||
/mks_30_kiwi_v2/source |
75 | 0–127 | continuous | ||
/mks_30_kiwi_v2/volume |
7 | 0–127 | continuous | ||
/mks_30_kiwi_v2/wave |
79 | 0–127 | continuous | ||
/mks_30_kiwi_v2/rate |
44 | 0–127 | continuous | ||
/mks_30_kiwi_v2/delay |
45 | 0–127 | continuous | ||
/mks_30_kiwi_v2/wave |
81 | 0–127 | continuous | ||
/mks_30_kiwi_v2/rate |
48 | 0–127 | continuous | ||
/mks_30_kiwi_v2/delay |
49 | 0–127 | continuous | ||
/mks_30_kiwi_v2/wave |
80 | 0–127 | continuous | ||
/mks_30_kiwi_v2/rate |
46 | 0–127 | continuous | ||
/mks_30_kiwi_v2/delay |
47 | 0–127 | continuous | ||
/mks_30_kiwi_v2/all_notes_off |
123 | 0–127 | continuous | ||
/mks_30_kiwi_v2/depth |
103 | -63–63 | continuous | ||
/mks_30_kiwi_v2/depth |
107 | 0–127 | continuous | ||
/mks_30_kiwi_v2/depth |
82 | -63–63 | continuous | ||
/mks_30_kiwi_v2/wave |
71 | 0–127 | continuous | ||
/mks_30_kiwi_v2/chorus |
106 | 0–127 | continuous | ||
/mks_30_kiwi_v2/level |
108 | -63–64 | continuous | ||
/mks_30_kiwi_v2/level |
109 | -63–64 | continuous | ||
/mks_30_kiwi_v2/level |
111 | -63–64 | continuous | ||
/mks_30_kiwi_v2/level |
113 | -63–64 | continuous | ||
/mks_30_kiwi_v2/level |
115 | -63–64 | continuous | ||
/mks_30_kiwi_v2/level |
117 | -63–64 | continuous | ||
/mks_30_kiwi_v2/level |
116 | -63–64 | continuous | ||
/mks_30_kiwi_v2/level |
114 | -63–64 | continuous | ||
/mks_30_kiwi_v2/level |
112 | -63–64 | continuous | ||
/mks_30_kiwi_v2/level |
110 | -63–64 | continuous | ||
/mks_30_kiwi_v2/time |
5 | 0–127 | continuous | ||
/mks_30_kiwi_v2/dco_detune |
21 | 0–127 | continuous | ||
/mks_30_kiwi_v2/analogue_feel |
63 | 0–127 | continuous | ||
/mks_30_kiwi_v2/mode |
85 | 0–127 | continuous | ||
/mks_30_kiwi_v2/mix_env |
23 | -63–64 | continuous | ||
/mks_30_kiwi_v2/mix_dyn |
24 | 0–127 | continuous | ||
/mks_30_kiwi_v2/pw |
11 | 0–127 | continuous | ||
/mks_30_kiwi_v2/pwm |
12 | 0–127 | continuous | ||
/mks_30_kiwi_v2/pwm_source |
92 | 0–127 | continuous | ||
/mks_30_kiwi_v2/dco2_pw |
18 | 0–127 | continuous | ||
/mks_30_kiwi_v2/dco2_pwm |
19 | 0–127 | continuous | ||
/mks_30_kiwi_v2/pwm_source |
93 | 0–127 | continuous | ||
/mks_30_kiwi_v2/mix_env |
105 | 0–127 | continuous | ||
/mks_30_kiwi_v2/steal |
95 | 0–127 | continuous | ||
/mks_30_kiwi_v2/voice_mode |
102 | 0–127 | continuous | ||
/mks_30_kiwi_v2/list |
125 | 0–127 | continuous | ||
/mks_30_kiwi_v2/clock_source |
90 | 0–127 | continuous | ||
/mks_30_kiwi_v2/arp_mode |
86 | 0–127 | continuous | ||
/mks_30_kiwi_v2/arp_range |
87 | 0–127 | continuous | ||
/mks_30_kiwi_v2/clock_divide |
88 | 0–127 | continuous | ||
/mks_30_kiwi_v2/arp_seq_start |
122 | 0–127 | continuous | ||
/mks_30_kiwi_v2/arp_seq_stop |
124 | 0–127 | continuous | ||
/mks_30_kiwi_v2/arp_seq_cont |
123 | 0–127 | continuous | ||
/mks_30_kiwi_v2/bend_range |
91 | 0–127 | continuous | ||
/mks_30_kiwi_v2/patch_tempo |
51 | 0–127 | continuous | ||
/mks_30_kiwi_v2/clock_divide |
89 | 0–127 | continuous | ||
/mks_30_kiwi_v2/vca_dyn |
26 | 0–127 | continuous | ||
/mks_30_kiwi_v2/vcf_dyn |
34 | 0–127 | continuous |
SysEx commands (3)¶
| OSC address | Arguments |
|---|---|
/mks_30_kiwi_v2/source |
val: u7 |
/mks_30_kiwi_v2/destination |
val: u7 |
/mks_30_kiwi_v2/sync |
val: u7 |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /mks_30_kiwi_v2/note/on <note> <velocity>, /mks_30_kiwi_v2/cc/<number> <value>, /mks_30_kiwi_v2/pitchbend <0-16383>, /mks_30_kiwi_v2/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.