MIDI implementation details for the discoDSP OB-Xd 3.
Last update: April 24, 2026 • 81 parameters
Contributions welcome! You can email us your edited CSV if you don't want to use GitHub.
| Parameter | CC | Range | Usage | Description | Orientation |
|---|---|---|---|---|---|
| Voice Count | 15 | [0–127] |
1~32: Voice count
|
Polyphony / number of voices
Note: Voice count = round(value/127 * 31) + 1. |
0-based |
| Unison | 16 | [0–127] |
0-63: Off; 64-127: On
|
Unison enable
Note: Threshold at 64. |
0-based |
| Octave | 17 | [0–127] |
0-15: -2 oct; 16-47: -1 oct; 48-79: 0; 80-111: +1 oct; 112-127: +2 oct
|
Master octave
Note: Octave = (round(value/127 * 4) - 2) * 12 semitones. |
Centered |
| As Played Allocation | 21 | [0–127] |
0-63: Round-robin; 64-127: As-played
|
Voice allocation mode
Note: Threshold at 64. |
0-based |
| Portamento | 23 | [0–127] |
0~127: Instant to slowest glide
|
Portamento time
Note: Logarithmic 0.14~250 ms scaled internally. |
0-based |
| Unison Detune | 24 | [0–127] |
0~127: No detune to maximum
|
Unison voice detune
|
0-based |
| Bend Osc 2 Only | 31 | [0–127] |
0-63: Off (both oscillators); 64-127: On (Osc 2 only)
|
Pitch wheel affects only oscillator 2
Note: Threshold at 64. |
0-based |
| Tune | 33 | [0–127] |
0~127: -100 to +100 cents
|
Master fine tune
Note: Maps to -1~+1 internally. |
Centered |
| Legato Mode | 35 | [0–127] |
0-21: Mode 0; 22-63: Mode 1; 64-105: Mode 2; 106-127: Mode 3
|
Mono/legato mode
Note: LegatoMode = round(value/127 * 3 + 1) - 1. |
0-based |
| Pitch Bend LFO Rate | 75 | [0–127] |
0: Off; 1~127: Slowest to fastest vibrato rate
|
Vibrato LFO rate (mod wheel)
Note: Vibrato enabled when value > 6. |
0-based |
| Volume | 71 | [0–127] |
0~127: Silence to full output
|
Master volume
Note: Linear 0~0.30 internally. |
0-based |
| Economy Mode | 111 | [0–127] |
0-63: Off; 64-127: On
|
CPU economy mode (skip inactive voices)
Note: Threshold at 64. |
0-based |
| Bend Range | 118 | [0–127] |
0-63: 2 semitones; 64-127: 12 semitones
|
Pitch bend range
Note: Threshold at 64; sets pitch wheel amount. |
0-based |
| Multiply Voices | 123 | [0–127] |
1~16: Voice multiplier
|
Voice multiplier
Note: Voices = round(value/127 * 15) + 1; shadows MIDI All Notes Off. |
0-based |
| Parameter | CC | Range | Usage | Description | Orientation |
|---|---|---|---|---|---|
| Oversampling | 18 | [0–127] |
0-63: Off; 64-127: On
|
Filter oversampling enable
Note: Threshold at 64. |
0-based |
| Resonance | 42 | [0–127] |
0~127: No resonance to maximum Q
|
Filter resonance
|
0-based |
| Cutoff | 74 | [0–127] |
0~127: Fully closed to fully open
|
Filter cutoff
Note: Linear 0~120 internally. |
0-based |
| Filter Key Follow | 103 | [0–127] |
0~127: No tracking to full tracking
|
Filter cutoff keyboard tracking
|
0-based |
| Multimode | 104 | [0–127] |
0~127: Low-pass to High-pass (centre = Band-pass)
|
Filter multimode (LP to HP)
Note: Continuous LP to HP morph. |
0-based |
| Bandpass Blend | 105 | [0–127] |
0-63: Off; 64-127: On
|
Bandpass mode enable
Note: Threshold at 64. |
0-based |
| Four Pole | 106 | [0–127] |
0-63: Off (2-pole / 12 dB); 64-127: On (4-pole / 24 dB)
|
4-pole filter mode (24dB/oct) enable
Note: Threshold at 64. |
0-based |
| Filter Env Amount | 107 | [0–127] |
0~127: No modulation to maximum
|
Filter envelope modulation amount
Note: Linear 0~140 internally. |
0-based |
| Self Osc Push | 119 | [0–127] |
0-63: Off; 64-127: On
|
Filter self-oscillation push
Note: Threshold at 64. |
0-based |
| Filter Falloff | 122 | [0–127] |
0~127: No leak to maximum leak
|
Filter analog falloff/leak
Note: Linear 0~0.0003 internally. |
0-based |
| Parameter | CC | Range | Usage | Description | Orientation |
|---|---|---|---|---|---|
| LFO Frequency | 19 | [0–127] |
0~127: Slowest to fastest
|
LFO rate
Note: Logarithmic 0~50 Hz scaled internally. |
0-based |
| LFO Amount 1 | 22 | [0–127] |
0~127: No modulation to maximum
|
LFO modulation depth 1
|
0-based |
| LFO Amount 2 | 25 | [0–127] |
0~127: No modulation to maximum
|
LFO modulation depth 2 (PW)
|
0-based |
| LFO Sine Wave | 44 | [0–127] |
0-63: Off; 64-127: On
|
LFO sine waveform enable
Note: Threshold at 64; OR'd into LFO waveform bitmask. |
0-based |
| LFO Square Wave | 45 | [0–127] |
0-63: Off; 64-127: On
|
LFO square waveform enable
Note: Threshold at 64; OR'd into LFO waveform bitmask. |
0-based |
| LFO S&H Wave | 46 | [0–127] |
0-63: Off; 64-127: On
|
LFO sample-and-hold waveform enable
Note: Threshold at 64; OR'd into LFO waveform bitmask. |
0-based |
| LFO to Osc 1 Pitch | 47 | [0–127] |
0-63: Off; 64-127: On
|
LFO target oscillator 1 pitch
Note: Threshold at 64. |
0-based |
| LFO to Osc 2 Pitch | 48 | [0–127] |
0-63: Off; 64-127: On
|
LFO target oscillator 2 pitch
Note: Threshold at 64. |
0-based |
| LFO to Filter | 49 | [0–127] |
0-63: Off; 64-127: On
|
LFO target filter cutoff
Note: Threshold at 64. |
0-based |
| LFO to PW Osc 1 | 50 | [0–127] |
0-63: Off; 64-127: On
|
LFO target oscillator 1 pulse width
Note: Threshold at 64. |
0-based |
| LFO to PW Osc 2 | 51 | [0–127] |
0-63: Off; 64-127: On
|
LFO target oscillator 2 pulse width
Note: Threshold at 64. |
0-based |
| LFO Sync | 112 | [0–127] |
0-63: Off (free); 64-127: On (synced)
|
LFO tempo sync
Note: Threshold at 64. |
0-based |
| Parameter | CC | Range | Usage | Description | Orientation |
|---|---|---|---|---|---|
| Volume Env Velocity | 20 | [0–127] |
0~127: No velocity to full velocity
|
Amp envelope velocity sensitivity
|
0-based |
| Loudness Decay | 36 | [0–127] |
0~127: Near-instant to slowest
|
Amp envelope decay
Note: Logarithmic 4~60000 ms. |
0-based |
| Loudness Sustain | 37 | [0–127] |
0~127: No sustain to full sustain
|
Amp envelope sustain
|
0-based |
| Filter Attack | 38 | [0–127] |
0~127: Near-instant to slowest
|
Filter envelope attack
Note: Logarithmic 4~60000 ms. |
0-based |
| Filter Decay | 39 | [0–127] |
0~127: Near-instant to slowest
|
Filter envelope decay
Note: Logarithmic 4~60000 ms. |
0-based |
| Filter Sustain | 40 | [0–127] |
0~127: No sustain to full sustain
|
Filter envelope sustain
|
0-based |
| Filter Release | 41 | [0–127] |
0~127: Near-instant to slowest
|
Filter envelope release
Note: Logarithmic 8~60000 ms. |
0-based |
| Env to Pitch | 63 | [0–127] |
0~127: No mod to maximum
|
Filter envelope to pitch amount
Note: Maps to 0~36 internally. |
0-based |
| Loudness Release | 72 | [0–127] |
0~127: Near-instant to slowest
|
Amp envelope release
Note: Logarithmic 8~60000 ms. |
0-based |
| Loudness Attack | 73 | [0–127] |
0~127: Near-instant to slowest
|
Amp envelope attack
Note: Logarithmic 4~60000 ms. |
0-based |
| Filter Env Velocity | 76 | [0–127] |
0~127: No velocity to full velocity
|
Filter envelope velocity sensitivity
|
0-based |
| PW Env | 113 | [0–127] |
0~127: No modulation to maximum
|
Pulse width envelope amount
|
0-based |
| PW Env Both | 114 | [0–127] |
0-63: Osc 1 only; 64-127: Both oscillators
|
Apply PW envelope to both oscillators
Note: Threshold at 64. |
0-based |
| Env Pitch Both | 115 | [0–127] |
0-63: Osc 1 only; 64-127: Both oscillators
|
Apply pitch envelope to both oscillators
Note: Threshold at 64. |
0-based |
| Filter Env Invert | 116 | [0–127] |
0-63: Normal; 64-127: Inverted
|
Invert filter envelope
Note: Threshold at 64. |
0-based |
| Loudness Env Shape | 120 | [0–127] |
0~127: Linear to most curved
|
Amp envelope shape
Note: Logarithmic 1.05~10 (asymmetry); shadows MIDI All Sound Off. |
0-based |
| Filter Env Shape | 121 | [0–127] |
0~127: Linear to most curved
|
Filter envelope shape
Note: Logarithmic 1.05~10 (asymmetry); shadows MIDI Reset All Controllers. |
0-based |
| Parameter | CC | Range | Usage | Description | Orientation |
|---|---|---|---|---|---|
| Osc 2 Detune | 43 | [0–127] |
0~127: No detune to maximum
|
Oscillator 2 detune
Note: Logarithmic 0.001~0.6. |
0-based |
| Osc 2 Hard Sync | 52 | [0–127] |
0-63: Off; 64-127: On
|
Oscillator 2 hard sync to osc 1
Note: Threshold at 64. |
0-based |
| Cross Mod | 53 | [0–127] |
0~127: No cross-mod to maximum
|
Osc 2 cross modulation amount
Note: Maps to 0~24 internally. |
0-based |
| Osc 1 Pitch | 54 | [0–127] |
0~127: 0 to +48 semitones
|
Oscillator 1 pitch offset (semitones)
Note: Maps to 0~48 semitones. |
0-based |
| Osc 2 Pitch | 55 | [0–127] |
0~127: 0 to +48 semitones
|
Oscillator 2 pitch offset (semitones)
Note: Maps to 0~48 semitones. |
0-based |
| Pitch Quantize | 56 | [0–127] |
0-63: Off; 64-127: On
|
Quantize osc pitch to semitones
Note: Threshold at 64. |
0-based |
| Osc 1 Saw | 57 | [0–127] |
0-63: Off; 64-127: On
|
Oscillator 1 saw waveform enable
Note: Threshold at 64. |
0-based |
| Osc 1 Pulse | 58 | [0–127] |
0-63: Off; 64-127: On
|
Oscillator 1 pulse waveform enable
Note: Threshold at 64. |
0-based |
| Osc 2 Saw | 59 | [0–127] |
0-63: Off; 64-127: On
|
Oscillator 2 saw waveform enable
Note: Threshold at 64. |
0-based |
| Osc 2 Pulse | 60 | [0–127] |
0-63: Off; 64-127: On
|
Oscillator 2 pulse waveform enable
Note: Threshold at 64. |
0-based |
| Pulse Width | 61 | [0–127] |
0~127: Narrow to wide
|
Oscillator pulse width
|
0-based |
| Brightness | 62 | [0–127] |
0~127: Dark to bright
|
Oscillator brightness
Note: Linear 7000~26000 internally. |
0-based |
| Osc 1 Mix | 77 | [0–127] |
0~127: Silent to full level
|
Oscillator 1 level
|
0-based |
| Osc 2 Mix | 78 | [0–127] |
0~127: Silent to full level
|
Oscillator 2 level
|
0-based |
| Noise Mix | 102 | [0–127] |
0~127: Silent to full noise
|
Noise level
Note: Logarithmic 0~1 (35 internally). |
0-based |
| PW Osc 2 Offset | 117 | [0–127] |
0~127: No offset to maximum offset
|
Pulse width offset for oscillator 2
|
0-based |
| Level Difference | 124 | [0–127] |
0~127: No variation to maximum
|
Loudness detune (per-voice level variation)
|
0-based |
| Parameter | CC | Range | Usage | Description | Orientation |
|---|---|---|---|---|---|
| Pan Voice 1 | 81 | [0–127] |
0~63: Left; 64: Center; 65~127: Right
|
Voice 1 pan position
|
Centered |
| Pan Voice 2 | 82 | [0–127] |
0~63: Left; 64: Center; 65~127: Right
|
Voice 2 pan position
|
Centered |
| Pan Voice 3 | 83 | [0–127] |
0~63: Left; 64: Center; 65~127: Right
|
Voice 3 pan position
|
Centered |
| Pan Voice 4 | 84 | [0–127] |
0~63: Left; 64: Center; 65~127: Right
|
Voice 4 pan position
|
Centered |
| Pan Voice 5 | 85 | [0–127] |
0~63: Left; 64: Center; 65~127: Right
|
Voice 5 pan position
|
Centered |
| Pan Voice 6 | 86 | [0–127] |
0~63: Left; 64: Center; 65~127: Right
|
Voice 6 pan position
|
Centered |
| Pan Voice 7 | 87 | [0–127] |
0~63: Left; 64: Center; 65~127: Right
|
Voice 7 pan position
|
Centered |
| Pan Voice 8 | 88 | [0–127] |
0~63: Left; 64: Center; 65~127: Right
|
Voice 8 pan position
|
Centered |
| Parameter | CC | Range | Usage | Description | Orientation |
|---|---|---|---|---|---|
| Envelope Detune | 108 | [0–127] |
0~127: No variation to maximum
|
Per-voice envelope time variation
|
0-based |
| Filter Detune | 109 | [0–127] |
0~127: No variation to maximum
|
Per-voice filter detune variation
Note: Linear 0~18 internally. |
0-based |
| Portamento Detune | 110 | [0–127] |
0~127: No variation to maximum
|
Per-voice portamento variation
Note: Linear 0~0.75 internally. |
0-based |
This dataset is provided under the Creative Commons Attribution Share Alike 4.0 International license.