Moog SUB25: MIDI CC, NRPN and OSC map¶
The Moog SUB25 as named OSC addresses — 31 CC — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Moog SUB25 |
|---|---|
| Vendor | Moog |
| OSC prefix | /sub25 |
| Source | 🎛️ Derived from an Electra One community preset |
| Revision | per Electra preset |
| Upstream | electra-preset |
| Driver file | devices/moog/sub25.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/moog/sub25.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 sub25: ask “what can the Moog SUB25 do?” and it reads this map with list_routes. See the MCP guide.
MIDI CC and NRPN parameters (31)¶
| OSC address | CC | NRPN (MSB/LSB) | Range | Nature | Section |
|---|---|---|---|---|---|
/sub25/lfo_rate |
3 | 0–127 | continuous | ||
/sub25/lfo_kb |
78 | 0–127 | continuous | ||
/sub25/lfo_range |
76 | 0–127 | continuous | ||
/sub25/wave_mod_dest |
72 | 0–127 | continuous | ||
/sub25/lfo_midi_sync |
102 | 0–127 | continuous | ||
/sub25/lfo_gate_reset |
93 | 0–127 | continuous | ||
/sub25/osc1_wave |
9 | 0–127 | continuous | ||
/sub25/osc2_wave |
14 | 0–127 | continuous | ||
/sub25/osc2_beat |
13 | 0–127 | continuous | ||
/sub25/duo_mode |
94 | 0–127 | continuous | ||
/sub25/duo_osc2_prio |
95 | 0–127 | continuous | ||
/sub25/vco_gate_reset |
81 | 0–127 | continuous | ||
/sub25/filter_poles |
109 | 0–127 | continuous | ||
/sub25/decay_speed |
118 | 0–127 | continuous | ||
/sub25/trigger_mode |
114 | 0–127 | continuous | ||
/sub25/repeat |
112 | 0–127 | continuous | ||
/sub25/reset |
82 | 0–127 | continuous | ||
/sub25/eg_kb |
79 | 0–127 | continuous | ||
/sub25/vel_2_amt |
110 | 0–127 | continuous | ||
/sub25/vel_2_time |
86 | 0–127 | continuous | ||
/sub25/gate_src |
90 | 0–127 | continuous | ||
/sub25/eg_delay |
103 / 7 | 0–127 | continuous | ||
/sub25/amp |
120 / 24 | 0–127 | continuous | ||
/sub25/trigger_mode |
115 / 19 | 0–127 | continuous | ||
/sub25/repeat |
113 / 17 | 0–127 | continuous | ||
/sub25/reset |
83 / 115 | 0–127 | continuous | ||
/sub25/eg_kb |
80 | 0–127 | continuous | ||
/sub25/vel_2_amt |
92 | 0–127 | continuous | ||
/sub25/vel_2_time |
87 | 0–127 | continuous | ||
/sub25/gate_src |
91 | 0–127 | continuous | ||
/sub25/eg_delay |
104 | 0–127 | continuous |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /sub25/note/on <note> <velocity>, /sub25/cc/<number> <value>, /sub25/pitchbend <0-16383>, /sub25/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.