Skip to content

Oberheim OB-6: MIDI CC, NRPN and OSC map

The Oberheim OB-6 as named OSC addresses — 56 CC, 102 NRPN — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.

Device Oberheim OB-6
Vendor Oberheim
OSC prefix /ob_6
Source 📦 Derived from MIDI Guide (community CC/NRPN data)
Firmware unknown
Revision per pencilresearch canonical CSV
Upstream pencilresearch
Data licence CC-BY-SA-4.0 — MIDI Guide (https://midi.guide) by Pencil Research and contributors
Driver file devices/oberheim/ob_6.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/oberheim/ob_6.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /ob_6/performance/mod_wheel 63

From Claude or any MCP client, the osc-bridge mcp server exposes this driver as ob_6: ask “what can the Oberheim OB-6 do?” and it reads this map with list_routes. See the MCP guide.

MIDI CC and NRPN parameters (122)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/ob_6/performance/mod_wheel 1 0–127 continuous Performance
/ob_6/performance/foot_controller 4 0–127 continuous Performance
/ob_6/performance/midi_volume 7 / 39 0–16383 continuous Performance
/ob_6/performance/sustain_pedal 64 0–127 continuous Performance
/ob_6/oscillator_1/frequency 67 0 / 0 0–127 continuous Oscillator 1
/ob_6/oscillator_1/sync 0 / 1 0–1 switch Oscillator 1
/ob_6/oscillator_1/level 69 0 / 2 0–127 continuous Oscillator 1
/ob_6/oscillator_1/shape 70 0 / 3 0–127 continuous Oscillator 1
/ob_6/oscillator_1/pulse_width 71 0 / 4 0–127 continuous Oscillator 1
/ob_6/oscillator_1/sub_level 8 0 / 27 0–127 continuous Oscillator 1
/ob_6/oscillator_2/frequency 75 0 / 5 0–127 continuous Oscillator 2
/ob_6/oscillator_2/frequency_fine 76 0 / 6 0–127 continuous Oscillator 2
/ob_6/oscillator_2/level 77 0 / 7 0–127 continuous Oscillator 2
/ob_6/oscillator_2/shape 78 0 / 8 0–127 continuous Oscillator 2
/ob_6/oscillator_2/pulse_width 79 0 / 9 0–127 continuous Oscillator 2
/ob_6/oscillator_2/low_frequency 0 / 10 0–1 switch Oscillator 2
/ob_6/oscillator_2/keyboard_tracking 0 / 11 0–1 switch Oscillator 2
/ob_6/mixer/noise_level 0 / 32 0–127 continuous Mixer
/ob_6/mixer/detune 0 / 33 0–127 continuous Mixer
/ob_6/portamento/on_off 65 0 / 29 0–127 continuous Portamento
/ob_6/portamento/mode 5 0 / 28 0–127 continuous Portamento
/ob_6/portamento/rate 0 / 30 0–127 continuous Portamento
/ob_6/portamento/pitch_bend_range 0 / 31 0–12 discrete Portamento
/ob_6/filter/frequency 102 0 / 45 0–127 continuous Filter
/ob_6/filter/frequency_brightness 74 0–127 continuous Filter
/ob_6/filter/resonance 103 0 / 46 0–127 continuous Filter
/ob_6/filter/keyboard_amount 104 0 / 47 0–127 continuous Filter
/ob_6/filter/velocity_on_off 105 0 / 48 0–127 continuous Filter
/ob_6/filter/mode 106 0 / 49 0–127 continuous Filter
/ob_6/filter/bandpass 107 0 / 50 0–127 continuous Filter
/ob_6/filter_envelope/amount 47 0 / 77 0–127 continuous Filter envelope
/ob_6/filter_envelope/attack 50 0 / 78 0–127 continuous Filter envelope
/ob_6/filter_envelope/decay 51 0 / 79 0–127 continuous Filter envelope
/ob_6/filter_envelope/sustain 52 0 / 80 0–127 continuous Filter envelope
/ob_6/filter_envelope/release 53 0 / 81 0–127 continuous Filter envelope
/ob_6/amplifier/program_volume 0 / 62 0–127 continuous Amplifier
/ob_6/amplifier/pan_spread 0 / 63 0–127 continuous Amplifier
/ob_6/amplifier/distortion_amount 9 0 / 64 0–127 continuous Amplifier
/ob_6/amplifier/envelope_amount 40 0 / 66 0–127 continuous Amplifier
/ob_6/amplifier/envelope_attack 43 0 / 67 0–127 continuous Amplifier
/ob_6/amplifier/envelope_decay 44 0 / 68 0–127 continuous Amplifier
/ob_6/amplifier/envelope_sustain 45 0 / 69 0–127 continuous Amplifier
/ob_6/amplifier/envelope_release 46 0 / 70 0–127 continuous Amplifier
/ob_6/amplifier/envelope_velocity_on_off 41 0 / 71 0–127 continuous Amplifier
/ob_6/lfo/frequency 0 / 88 0–254 continuous LFO
/ob_6/lfo/initial_amount 0 / 89 0–255 continuous LFO
/ob_6/lfo/shape 0 / 90 0–4 discrete LFO
/ob_6/lfo/sync 0 / 91 0–1 switch LFO
/ob_6/lfo/oscillator_1_destination 0 / 93 0–1 switch LFO
/ob_6/lfo/oscillator_2_destination 0 / 94 0–1 switch LFO
/ob_6/lfo/pulse_width_1_and_2_destination 0 / 95 0–3 discrete LFO
/ob_6/lfo/filter_frequency_destination 0 / 96 0–1 switch LFO
/ob_6/lfo/filter_mode_destination 0 / 97 0–1 switch LFO
/ob_6/lfo/amplifier_destination 0 / 98 0–1 switch LFO
/ob_6/cross_modulation/filter_envelope_amount 1 / 15 0–254 continuous Cross modulation
/ob_6/cross_modulation/oscillator_2_amount 1 / 16 0–254 continuous Cross modulation
/ob_6/cross_modulation/oscillator_1_destination 1 / 17 0–1 switch Cross modulation
/ob_6/cross_modulation/shape_1_destination 1 / 18 0–1 switch Cross modulation
/ob_6/cross_modulation/pulse_width_1_destination 1 / 19 0–1 switch Cross modulation
/ob_6/cross_modulation/filter_frequency_destination 1 / 20 0–1 switch Cross modulation
/ob_6/cross_modulation/filter_mode_destination 1 / 21 0–1 switch Cross modulation
/ob_6/cross_modulation/normal_bandpass_destination 1 / 22 0–1 switch Cross modulation
/ob_6/pressure/amount 0 / 109 0–254 continuous Pressure
/ob_6/pressure/oscillator_1_destination 0 / 110 0–1 switch Pressure
/ob_6/pressure/oscillator_2_destination 0 / 111 0–1 switch Pressure
/ob_6/pressure/filter_frequency_destination 0 / 112 0–1 switch Pressure
/ob_6/pressure/filter_mode_destination 0 / 113 0–1 switch Pressure
/ob_6/pressure/amplifier_destination 0 / 114 0–1 switch Pressure
/ob_6/pressure/lfo_amount_destination 0 / 115 0–1 switch Pressure
/ob_6/effects/on_off 1 / 7 0–1 switch Effects
/ob_6/effects/effect_1_type 0 / 119 0–5 discrete Effects
/ob_6/effects/effect_1_mix 0 / 120 0–127 continuous Effects
/ob_6/effects/effect_1_parameter_1 0 / 121 0–255 continuous Effects
/ob_6/effects/effect_1_parameter_2 0 / 122 0–127 continuous Effects
/ob_6/effects/effect_1_sync 0 / 123 0–1 switch Effects
/ob_6/effects/effect_2_type 0 / 127 0–9 discrete Effects
/ob_6/effects/effect_2_mix 1 / 0 0–127 continuous Effects
/ob_6/effects/effect_2_parameter_1 1 / 1 0–255 continuous Effects
/ob_6/effects/effect_2_parameter_2 1 / 2 0–127 continuous Effects
/ob_6/effects/effect_2_sync 1 / 3 0–1 switch Effects
/ob_6/unison/on_off 1 / 28 0–1 switch Unison
/ob_6/unison/mode 1 / 29 0–6 discrete Unison
/ob_6/unison/key_mode 1 / 30 0–5 discrete Unison
/ob_6/arpeggiator/on_off 58 1 / 32 0–127 continuous Arpeggiator
/ob_6/arpeggiator/mode 59 1 / 33 0–127 continuous Arpeggiator
/ob_6/arpeggiator/range 60 1 / 34 0–127 continuous Arpeggiator
/ob_6/arpeggiator/time_signature 62 1 / 35 0–127 continuous Arpeggiator
/ob_6/arpeggiator/tempo 3 1 / 39 0–127 continuous Arpeggiator
/ob_6/sequencer/transpose 8 / 65 0–127 continuous Sequencer
/ob_6/global/master_fine_tune 8 / 0 0–100 continuous Global
/ob_6/global/master_coarse_tune 8 / 1 0–24 discrete Global
/ob_6/global/midi_channel 8 / 2 0–16 discrete Global
/ob_6/global/midi_clock_mode 8 / 3 0–3 discrete Global
/ob_6/global/midi_clock_port 8 / 4 0–1 switch Global
/ob_6/global/midi_parameter_send 8 / 5 0–2 discrete Global
/ob_6/global/midi_parameter_receive 8 / 6 0–2 discrete Global
/ob_6/global/midi_control_enable 8 / 7 0–1 switch Global
/ob_6/global/midi_sysex_enable 8 / 8 0–1 switch Global
/ob_6/global/midi_out_select 8 / 9 0–3 discrete Global
/ob_6/global/local_control 122 8 / 11 0–127 continuous Global
/ob_6/global/pot_mode 8 / 13 0–2 discrete Global
/ob_6/global/sequencer_jack 8 / 15 0–3 discrete Global
/ob_6/global/sustain_polarity 8 / 16 0–3 discrete Global
/ob_6/global/velocity_response 8 / 17 0–3 discrete Global
/ob_6/global/aftertouch_response 8 / 18 0–3 discrete Global
/ob_6/global/stereo_mono 8 / 19 0–1 switch Global
/ob_6/global/alternative_tuning 8 / 20 0–16 discrete Global
/ob_6/midi/data_entry_msb 6 0–127 continuous MIDI
/ob_6/midi/data_entry_lsb 38 0–127 continuous MIDI
/ob_6/midi/data_increment 96 0–127 continuous MIDI
/ob_6/midi/data_decrement 97 0–127 continuous MIDI
/ob_6/midi/nrpn_parameter_lsb 98 0–127 continuous MIDI
/ob_6/midi/nrpn_parameter_msb 99 0–127 continuous MIDI
/ob_6/midi/rpn_parameter_lsb 100 0–127 continuous MIDI
/ob_6/midi/rpn_parameter_msb 101 0–127 continuous MIDI
/ob_6/midi/all_sound_off 120 0–127 continuous MIDI
/ob_6/midi/reset_all_controllers 121 0–127 continuous MIDI
/ob_6/midi/all_notes_off 123 0–127 continuous MIDI
/ob_6/midi/omni_mode_off 124 0–127 continuous MIDI
/ob_6/midi/omni_mode_on 125 0–127 continuous MIDI
/ob_6/midi/mono_mode_on 126 0–127 continuous MIDI
/ob_6/midi/poly_mode_on 127 0–127 continuous MIDI

Performance MIDI

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

Limitations

CC/NRPN only. SysEx (preset management, display control, bulk dump/load, vendor-proprietary opcodes) is NOT covered by pencilresearch. To extend this device with SysEx, sniff the vendor editor, add `sysex.header/footer` + `commands` blocks, and use `update_device.md` PR template.