devices/oberheim/ob_xa.electra-dennis-ferrer.fw-encore.jsonEdit on GitHubJSONOberheim OB-Xa (per Electra preset) MIDI CC chart, NRPN and OSC map
The Oberheim OB-Xa MIDI implementation: 38 CC, each named, for Claude (MCP), SuperCollider or any OSC app.
- sourceElectra One preset
- firmwareencore
- real unitnot yet checked
Not checked on a real Oberheim OB-Xa yet. Own one? Load a sound or send a control, and tell us whether it worked.
- Maker
- Oberheim
- Version
- per Electra preset
- Source
- Electra One preset
- OSC prefix
/ob_xa
Use 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_xa.electra-dennis-ferrer.fw-encore.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 ob_xa: ask “what can the Oberheim OB-Xa do?” and it reads this map with list_routes. See the MCP guide.
MIDI controls
38 controls, each with its number, its range and the name to send
| Control | CC | Range | Name to send |
|---|---|---|---|
| Frequency 1 | 28 | 0–127 | /ob_xa/frequency_1 |
| Pulse width | 19 | 0–127 | /ob_xa/pulse_width |
| Frequency 2 | 29 | 0–127 | /ob_xa/frequency_2 |
| Waveform | 102 | 0–127 | /ob_xa/waveform |
| Sync | 104 | 0–127 | /ob_xa/sync |
| F env | 105 | 0–127 | /ob_xa/f_env |
| Waveform | 106 | 0–127 | /ob_xa/waveform |
| Cutoff | 16 | 0–127 | /ob_xa/cutoff |
| Resonance | 17 | 0–127 | /ob_xa/resonance |
| Modulation | 18 | 0–127 | /ob_xa/modulation |
| Osc 1 | 108 | 0–127 | /ob_xa/osc_1 |
| Osc 2 | 109 | 0–127 | /ob_xa/osc_2 |
| Noise | 111 | 0–127 | /ob_xa/noise |
| 4 pole | 112 | 0–127 | /ob_xa/4_pole |
| Track | 113 | 0–127 | /ob_xa/track |
| Filter env | 20 | 0–127 | /ob_xa/filter_env |
| Filter env | 21 | 0–127 | /ob_xa/filter_env |
| Filter env | 22 | 0–127 | /ob_xa/filter_env |
| Filter env | 23 | 0–127 | /ob_xa/filter_env |
| Amp env | 24 | 0–127 | /ob_xa/amp_env |
| Amp env | 25 | 0–127 | /ob_xa/amp_env |
| Amp env | 26 | 0–127 | /ob_xa/amp_env |
| Amp env | 27 | 0–127 | /ob_xa/amp_env |
| Lfo rate | 80 | 0–127 | /ob_xa/lfo_rate |
| Freq depth | 1 | 0–127 | /ob_xa/freq_depth |
| Pulse w depth | 81 | 0–127 | /ob_xa/pulse_w_depth |
| Lfo shape | 88 | 0–127 | /ob_xa/lfo_shape |
| Osc 1 | 85 | 0–127 | /ob_xa/osc_1 |
| Osc 2 | 86 | 0–127 | /ob_xa/osc_2 |
| Filter | 87 | 0–127 | /ob_xa/filter |
| Osc 1 | 82 | 0–127 | /ob_xa/osc_1 |
| Osc 2 | 83 | 0–127 | /ob_xa/osc_2 |
| Portamento | 5 | 0–127 | /ob_xa/portamento |
| Unison | 114 | 0–127 | /ob_xa/unison |
| Detune | 30 | 0–127 | /ob_xa/detune |
| Split double | 89 | 0–127 | /ob_xa/split_double |
| Upper lower | 90 | 0–127 | /ob_xa/upper_lower |
| All notes off | 123 | 0–127 | /ob_xa/all_notes_off |
Performance MIDI
Notes, pitch bend and any CC are also available: /ob_xa/note/on <note> <velocity>, /ob_xa/cc/<number> <value>, /ob_xa/pitchbend <0-16383>, /ob_xa/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.
Other versions
The Oberheim OB-Xa is mapped in 2 versions. per Electra preset.
Frequently asked questions
Which MIDI CC controls the filter cutoff on the Oberheim OB-Xa?
CC 16 (0–127), named /ob_xa/cutoff in SynthHub's map.
How many parameters of the Oberheim OB-Xa can be controlled over MIDI?
SynthHub's map of the Oberheim OB-Xa lists 38 MIDI CC parameters, each with its number, range and a readable name; the full chart is on this page.
Can an AI agent like Claude control the Oberheim OB-Xa?
Yes: SynthHub's hosted MCP server knows the Oberheim OB-Xa's MIDI map, and its browser relay lets the agent send it parameter changes or load a sound, each sound change confirmed by you.