Novation BS2 Third Osc: MIDI CC, NRPN and OSC map¶
The Novation BS2 Third Osc as named OSC addresses — 60 CC, 2 NRPN — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Novation BS2 Third Osc |
|---|---|
| Vendor | Novation |
| OSC prefix | /bs2_third_osc |
| Source | 🎛️ Derived from an Electra One community preset |
| Revision | per Electra preset |
| Upstream | electra-preset |
| Driver file | devices/novation/bs2_third_osc.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/novation/bs2_third_osc.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 bs2_third_osc: ask “what can the Novation BS2 Third Osc do?” and it reads this map with list_routes. See the MCP guide.
MIDI CC and NRPN parameters (62)¶
| OSC address | CC | NRPN (MSB/LSB) | Range | Nature | Section |
|---|---|---|---|---|---|
/bs2_third_osc/range |
70 | 0–127 | continuous | ||
/bs2_third_osc/coarse |
27 / 59 | -120–120 | continuous | ||
/bs2_third_osc/fine |
26 / 58 | -100–100 | continuous | ||
/bs2_third_osc/mod_env_pitch |
71 | -64–63 | continuous | ||
/bs2_third_osc/lfo_1_pitch |
28 / 60 | -127–127 | continuous | ||
/bs2_third_osc/width |
74 | 5–95 | continuous | ||
/bs2_third_osc/mod_env_pw |
72 | -90–90 | continuous | ||
/bs2_third_osc/lfo_2_pw |
73 | -90–90 | continuous | ||
/bs2_third_osc/amount |
5 | 0–127 | continuous | ||
/bs2_third_osc/range |
75 | 0–127 | continuous | ||
/bs2_third_osc/coarse |
30 / 62 | -120–120 | continuous | ||
/bs2_third_osc/fine |
29 / 61 | -100–100 | continuous | ||
/bs2_third_osc/mod_env_pitch |
76 | -64–63 | continuous | ||
/bs2_third_osc/lfo_1_pitch |
31 / 63 | -127–127 | continuous | ||
/bs2_third_osc/width |
79 | 5–95 | continuous | ||
/bs2_third_osc/mod_env_pw |
77 | -90–90 | continuous | ||
/bs2_third_osc/lfo_2_pw |
78 | -90–90 | continuous | ||
/bs2_third_osc/osc_1_2_sync |
110 | 0–127 | continuous | ||
/bs2_third_osc/sub_osc_wave |
80 | 0–127 | continuous | ||
/bs2_third_osc/sub_osc_oct |
81 | 0–127 | continuous | ||
/bs2_third_osc/sub_coarse |
0 / 84 | -120–120 | continuous | ||
/bs2_third_osc/sub_fine |
0 / 77 | -100–100 | continuous | ||
/bs2_third_osc/osc_1_level |
20 / 52 | 0–255 | continuous | ||
/bs2_third_osc/osc_2_level |
21 / 53 | 0–255 | continuous | ||
/bs2_third_osc/sub_level |
22 / 54 | 0–255 | continuous | ||
/bs2_third_osc/noise_level |
23 / 55 | 0–255 | continuous | ||
/bs2_third_osc/ext_level |
25 / 57 | 0–255 | continuous | ||
/bs2_third_osc/ring_level |
24 / 56 | 0–255 | continuous | ||
/bs2_third_osc/filter_type |
83 | 0–127 | continuous | ||
/bs2_third_osc/filter_slope |
106 | 0–127 | continuous | ||
/bs2_third_osc/filter_shape |
84 | 0–127 | continuous | ||
/bs2_third_osc/overdrive |
114 | 0–127 | continuous | ||
/bs2_third_osc/resonance |
82 | 0–127 | continuous | ||
/bs2_third_osc/cut_off_freq |
16 / 48 | 0–255 | continuous | ||
/bs2_third_osc/mod_envelope |
85 | -63–63 | continuous | ||
/bs2_third_osc/lfo_2 |
17 / 49 | -127–127 | continuous | ||
/bs2_third_osc/lfo1_speed |
18 / 50 | 0–255 | continuous | ||
/bs2_third_osc/lfo_1_wave |
88 | 0–127 | continuous | ||
/bs2_third_osc/lfo_1_delay |
86 | 0–127 | continuous | ||
/bs2_third_osc/lfo_2_wave |
89 | 0–127 | continuous | ||
/bs2_third_osc/lfo_2_delay |
87 | 0–127 | continuous | ||
/bs2_third_osc/lfo_2_speed |
19 / 51 | 0–255 | continuous | ||
/bs2_third_osc/adsr |
90 | 0–127 | continuous | ||
/bs2_third_osc/adsr |
91 | 0–127 | continuous | ||
/bs2_third_osc/adsr |
92 | 0–127 | continuous | ||
/bs2_third_osc/adsr |
93 | 0–127 | continuous | ||
/bs2_third_osc/adsr |
102 | 0–127 | continuous | ||
/bs2_third_osc/adsr |
103 | 0–127 | continuous | ||
/bs2_third_osc/adsr |
104 | 0–127 | continuous | ||
/bs2_third_osc/adsr |
105 | 0–127 | continuous | ||
/bs2_third_osc/on_off |
108 | 0–127 | continuous | ||
/bs2_third_osc/rhythm |
119 | 1–32 | continuous | ||
/bs2_third_osc/octave |
111 | 0–127 | continuous | ||
/bs2_third_osc/swing |
116 | 3–97 | continuous | ||
/bs2_third_osc/distortion |
94 | 0–127 | continuous | ||
/bs2_third_osc/vca_limiter |
95 | 0–127 | continuous | ||
/bs2_third_osc/note_mode |
118 | 0–127 | continuous | ||
/bs2_third_osc/latch |
109 | 0–127 | continuous | ||
/bs2_third_osc/osc_filter_mod |
115 | 0–127 | continuous | ||
/bs2_third_osc/amp_env |
112 | -63–63 | continuous | ||
/bs2_third_osc/mod_env |
113 | -63–63 | continuous | ||
/bs2_third_osc/range |
107 | -24–24 | continuous |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /bs2_third_osc/note/on <note> <velocity>, /bs2_third_osc/cc/<number> <value>, /bs2_third_osc/pitchbend <0-16383>, /bs2_third_osc/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.