Moog Subsequent 37: MIDI CC, NRPN and OSC map¶
The Moog Subsequent 37 as named OSC addresses — 89 CC, 98 NRPN — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Moog Subsequent 37 |
|---|---|
| Vendor | Moog |
| OSC prefix | /sub37 |
| Source | 📦 Derived from MIDI Guide (community CC/NRPN data) |
| Firmware | unknown |
| Revision | v1.1 firmware |
| Upstream | pencilresearch |
| Data licence | CC-BY-SA-4.0 — MIDI Guide (https://midi.guide) by Pencil Research and contributors |
| Driver file | devices/moog/subsequent-37.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/subsequent-37.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 sub37: ask “what can the Moog Subsequent 37 do?” and it reads this map with list_routes. See the MCP guide.
MIDI CC and NRPN parameters (131)¶
| OSC address | CC | NRPN (MSB/LSB) | Range | Nature | Section |
|---|---|---|---|---|---|
/sub37/oscillator_1/octave |
74 | 3 / 95 | 0–127 | continuous | Oscillator 1 |
/sub37/oscillator_1/wave |
9 / 41 | 3 / 96 | 0–16383 | continuous | Oscillator 1 |
/sub37/oscillator_2/octave |
75 | 3 / 99 | 0–127 | continuous | Oscillator 2 |
/sub37/oscillator_2/wave |
14 / 46 | 3 / 100 | 0–16383 | continuous | Oscillator 2 |
/sub37/oscillator_2/frequency |
12 / 44 | 0–16383 | continuous | Oscillator 2 | |
/sub37/oscillator_2/frequency_mode |
3 / 103 | 0–2 | discrete | Oscillator 2 | |
/sub37/oscillator_2/beat_frequency |
13 / 45 | 0–16383 | continuous | Oscillator 2 | |
/sub37/oscillator_2/beat_mode |
3 / 104 | 0–1 | switch | Oscillator 2 | |
/sub37/oscillator_2/hard_sync |
77 | 3 / 97 | 0–127 | continuous | Oscillator 2 |
/sub37/oscillator_2/keyboard_control |
111 | 3 / 101 | 0–127 | continuous | Oscillator 2 |
/sub37/oscillators/oscillator_keyboard_reset |
81 | 3 / 98 | 0–127 | continuous | Oscillators |
/sub37/oscillators/duo_mode |
110 | 3 / 102 | 0–127 | continuous | Oscillators |
/sub37/mixer/oscillator_1_on |
3 / 106 | 0–1 | switch | Mixer | |
/sub37/mixer/oscillator_1_level |
114 | 3 / 105 | 0–127 | continuous | Mixer |
/sub37/mixer/sub_oscillator_on |
3 / 107 | 0–1 | switch | Mixer | |
/sub37/mixer/sub_oscillator_level |
115 | 3 / 108 | 0–127 | continuous | Mixer |
/sub37/mixer/oscillator_2_on |
3 / 110 | 0–1 | switch | Mixer | |
/sub37/mixer/oscillator_2_level |
116 | 3 / 109 | 0–127 | continuous | Mixer |
/sub37/mixer/noise_on |
3 / 111 | 0–1 | switch | Mixer | |
/sub37/mixer/noise_level |
117 | 3 / 112 | 0–127 | continuous | Mixer |
/sub37/mixer/feedback_external_on |
3 / 114 | 0–1 | switch | Mixer | |
/sub37/mixer/feedback_external_level |
118 | 3 / 113 | 0–127 | continuous | Mixer |
/sub37/filter/cutoff |
19 / 51 | 3 / 115 | 0–16383 | continuous | Filter |
/sub37/filter/resonance |
21 / 53 | 3 / 116 | 0–16383 | continuous | Filter |
/sub37/filter/multidrive |
18 / 50 | 3 / 117 | 0–16383 | continuous | Filter |
/sub37/filter/slope |
109 | 3 / 118 | 0–127 | continuous | Filter |
/sub37/filter/envelope_amount |
27 / 59 | 3 / 119 | 0–16383 | continuous | Filter |
/sub37/filter/keyboard_amount |
22 / 54 | 3 / 120 | 0–16383 | continuous | Filter |
/sub37/filter_envelope/attack |
23 / 55 | 3 / 121 | 0–16383 | continuous | Filter envelope |
/sub37/filter_envelope/decay |
24 / 56 | 3 / 122 | 0–16383 | continuous | Filter envelope |
/sub37/filter_envelope/sustain |
25 / 57 | 3 / 123 | 0–16383 | continuous | Filter envelope |
/sub37/filter_envelope/release |
26 / 58 | 3 / 124 | 0–16383 | continuous | Filter envelope |
/sub37/filter_envelope/delay |
103 | 3 / 125 | 0–127 | continuous | Filter envelope |
/sub37/filter_envelope/hold |
105 | 3 / 126 | 0–127 | continuous | Filter envelope |
/sub37/filter_envelope/velocity_amount |
86 | 3 / 127 | 0–127 | continuous | Filter envelope |
/sub37/filter_envelope/keyboard_tracking |
79 | 4 / 0 | 0–127 | continuous | Filter envelope |
/sub37/filter_envelope/multi_trigger |
112 | 4 / 1 | 0–127 | continuous | Filter envelope |
/sub37/filter_envelope/reset |
82 | 4 / 2 | 0–127 | continuous | Filter envelope |
/sub37/filter_envelope/sync |
4 / 3 | 0–1 | switch | Filter envelope | |
/sub37/filter_envelope/loop |
4 / 4 | 0–1 | switch | Filter envelope | |
/sub37/filter_envelope/latch |
4 / 5 | 0–1 | switch | Filter envelope | |
/sub37/filter_envelope/clock_divider |
4 / 6 | 0–20 | discrete | Filter envelope | |
/sub37/filter_envelope/attack_exponential |
4 / 8 | 0–1 | switch | Filter envelope | |
/sub37/amplifier_envelope/attack |
28 / 60 | 0–16383 | continuous | Amplifier envelope | |
/sub37/amplifier_envelope/decay |
29 / 61 | 0–16383 | continuous | Amplifier envelope | |
/sub37/amplifier_envelope/sustain |
30 / 62 | 0–16383 | continuous | Amplifier envelope | |
/sub37/amplifier_envelope/release |
31 / 63 | 0–16383 | continuous | Amplifier envelope | |
/sub37/amplifier_envelope/delay |
104 | 0–127 | continuous | Amplifier envelope | |
/sub37/amplifier_envelope/hold |
106 | 0–127 | continuous | Amplifier envelope | |
/sub37/amplifier_envelope/velocity_amount |
87 | 0–127 | continuous | Amplifier envelope | |
/sub37/amplifier_envelope/keyboard_amount |
80 | 0–127 | continuous | Amplifier envelope | |
/sub37/amplifier_envelope/multi_trigger |
113 | 0–127 | continuous | Amplifier envelope | |
/sub37/amplifier_envelope/reset |
83 | 0–127 | continuous | Amplifier envelope | |
/sub37/modulation_1/source |
71 | 3 / 56 | 0–127 | continuous | Modulation 1 |
/sub37/modulation_1/destination |
91 | 3 / 58 | 0–127 | continuous | Modulation 1 |
/sub37/modulation_1/pitch_destination |
70 | 3 / 63 | 0–127 | continuous | Modulation 1 |
/sub37/modulation_1/pitch_amount |
4 / 36 | 3 / 61 | 0–16383 | continuous | Modulation 1 |
/sub37/modulation_1/filter_amount |
11 / 43 | 3 / 62 | 0–16383 | continuous | Modulation 1 |
/sub37/modulation_1/programmable_destination_amount |
20 / 52 | 3 / 60 | 0–16383 | continuous | Modulation 1 |
/sub37/modulation_1/programmable_source |
3 / 57 | 0–7 | discrete | Modulation 1 | |
/sub37/modulation_1/programmable_destination |
3 / 59 | 0–88 | discrete | Modulation 1 | |
/sub37/modulation_1/mod_wheel_amount |
3 / 51 | 0–16383 | continuous | Modulation 1 | |
/sub37/modulation_1/velocity_amount |
3 / 52 | 0–16383 | continuous | Modulation 1 | |
/sub37/modulation_1/pressure_amount |
3 / 53 | 0–16383 | continuous | Modulation 1 | |
/sub37/modulation_1/controller_4_amount |
3 / 54 | 0–16383 | continuous | Modulation 1 | |
/sub37/modulation_2/source |
72 | 3 / 81 | 0–127 | continuous | Modulation 2 |
/sub37/modulation_2/destination |
92 | 3 / 83 | 0–127 | continuous | Modulation 2 |
/sub37/modulation_2/pitch_destination |
88 | 3 / 88 | 0–127 | continuous | Modulation 2 |
/sub37/modulation_2/pitch_amount |
15 / 47 | 3 / 86 | 0–16383 | continuous | Modulation 2 |
/sub37/modulation_2/filter_amount |
16 / 48 | 3 / 87 | 0–16383 | continuous | Modulation 2 |
/sub37/modulation_2/programmable_destination_amount |
17 / 49 | 3 / 85 | 0–16383 | continuous | Modulation 2 |
/sub37/modulation_2/programmable_source |
3 / 82 | 0–7 | discrete | Modulation 2 | |
/sub37/modulation_2/programmable_destination |
3 / 84 | 0–88 | discrete | Modulation 2 | |
/sub37/modulation_2/mod_wheel_amount |
3 / 76 | 0–16383 | continuous | Modulation 2 | |
/sub37/modulation_2/velocity_amount |
3 / 77 | 0–16383 | continuous | Modulation 2 | |
/sub37/modulation_2/pressure_amount |
3 / 78 | 0–16383 | continuous | Modulation 2 | |
/sub37/modulation_2/controller_4_amount |
3 / 79 | 0–16383 | continuous | Modulation 2 | |
/sub37/lfo_1/rate |
3 / 35 | 3 / 39 | 0–16383 | continuous | LFO 1 |
/sub37/lfo_1/clock_divider |
3 | 3 / 43 | 0–127 | discrete | LFO 1 |
/sub37/lfo_1/range |
76 | 3 / 40 | 0–127 | continuous | LFO 1 |
/sub37/lfo_1/sync |
3 / 41 | 0–1 | switch | LFO 1 | |
/sub37/lfo_1/keyboard_reset |
93 | 3 / 42 | 0–127 | continuous | LFO 1 |
/sub37/lfo_1/clock_source |
3 / 44 | 0–1 | switch | LFO 1 | |
/sub37/lfo_1/keyboard_tracking |
3 / 46 | 0–16383 | continuous | LFO 1 | |
/sub37/lfo_2/rate |
8 / 40 | 3 / 64 | 0–16383 | continuous | LFO 2 |
/sub37/lfo_2/clock_divider |
8 | 3 / 68 | 0–127 | discrete | LFO 2 |
/sub37/lfo_2/range |
78 | 3 / 65 | 0–127 | continuous | LFO 2 |
/sub37/lfo_2/sync |
3 / 66 | 0–1 | switch | LFO 2 | |
/sub37/lfo_2/keyboard_reset |
95 | 3 / 67 | 0–127 | continuous | LFO 2 |
/sub37/lfo_2/clock_source |
3 / 69 | 0–1 | switch | LFO 2 | |
/sub37/lfo_2/keyboard_tracking |
3 / 71 | 0–16383 | continuous | LFO 2 | |
/sub37/arpeggiator/on |
73 | 0–127 | continuous | Arpeggiator | |
/sub37/arpeggiator/run |
3 / 26 | 0–1 | switch | Arpeggiator | |
/sub37/arpeggiator/latch |
69 | 3 / 27 | 0–127 | continuous | Arpeggiator |
/sub37/arpeggiator/rate |
3 / 19 | 0–16383 | continuous | Arpeggiator | |
/sub37/arpeggiator/sync |
3 / 20 | 0–1 | switch | Arpeggiator | |
/sub37/arpeggiator/range |
3 / 21 | 0–6 | discrete | Arpeggiator | |
/sub37/arpeggiator/back_forth |
3 / 22 | 0–1 | switch | Arpeggiator | |
/sub37/arpeggiator/back_forth_mode |
3 / 23 | 0–1 | switch | Arpeggiator | |
/sub37/arpeggiator/invert |
3 / 24 | 0–1 | switch | Arpeggiator | |
/sub37/arpeggiator/pattern |
3 / 25 | 0–5 | discrete | Arpeggiator | |
/sub37/arpeggiator/gate_length |
3 / 28 | 0–16383 | continuous | Arpeggiator | |
/sub37/arpeggiator/clock_divider |
3 / 29 | 0–20 | discrete | Arpeggiator | |
/sub37/arpeggiator/step_1_reset |
3 / 32 | 0–1 | trigger | Arpeggiator | |
/sub37/performance/mod_wheel |
1 / 33 | 3 / 18 | 0–16383 | continuous | Performance |
/sub37/performance/hold_pedal_sustain |
64 | 0–127 | continuous | Performance | |
/sub37/performance/pitch_bend_up_amount |
107 | 0–24 | discrete | Performance | |
/sub37/performance/pitch_bend_down_amount |
108 | 0–24 | discrete | Performance | |
/sub37/glide/on |
65 | 3 / 38 | 0–127 | continuous | Glide |
/sub37/glide/time |
5 / 37 | 3 / 33 | 0–16383 | continuous | Glide |
/sub37/glide/type |
85 | 3 / 35 | 0–127 | continuous | Glide |
/sub37/glide/legato |
94 | 3 / 37 | 0–127 | continuous | Glide |
/sub37/glide/destination_oscillator |
102 | 3 / 34 | 0–127 | continuous | Glide |
/sub37/glide/gate |
3 / 36 | 0–1 | switch | Glide | |
/sub37/global/bank_select |
0 | 0–0 | discrete | Global | |
/sub37/global/bank_select_lsb |
32 | 0–1 | discrete | Global | |
/sub37/global/master_volume |
7 / 39 | 0–16383 | continuous | Global | |
/sub37/global/keyboard_octave |
89 | 0–127 | continuous | Global | |
/sub37/global/keyboard_transpose |
119 | 0–127 | continuous | Global | |
/sub37/global/local_control |
122 | 0–127 | continuous | Global | |
/sub37/global/all_notes_off |
123 | 0–0 | trigger | Global | |
/sub37/reserved/midi_breath_control |
2 / 34 | 0–16383 | continuous | Reserved | |
/sub37/reserved/data_entry |
6 / 38 | 0–16383 | continuous | Reserved | |
/sub37/reserved/midi_pan |
10 / 42 | 0–16383 | continuous | Reserved | |
/sub37/reserved/portamento_control |
84 | 0–127 | continuous | Reserved | |
/sub37/reserved/data_increment |
96 | 0–127 | continuous | Reserved | |
/sub37/reserved/data_decrement |
97 | 0–127 | continuous | Reserved | |
/sub37/reserved/nrpn_lsb |
98 | 0–127 | continuous | Reserved | |
/sub37/reserved/nrpn_msb |
99 | 0–127 | continuous | Reserved | |
/sub37/reserved/rpn_lsb |
100 | 0–127 | continuous | Reserved | |
/sub37/reserved/rpn_msb |
101 | 0–127 | continuous | Reserved |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /sub37/note/on <note> <velocity>, /sub37/cc/<number> <value>, /sub37/pitchbend <0-16383>, /sub37/program_change <n>.