Skip to content

Yamaha reface DX: MIDI CC, NRPN and OSC map

The Yamaha reface DX as named OSC addresses — 53 CC, 77 SysEx commands — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.

Device Yamaha reface DX
Vendor Yamaha
OSC prefix /reface_dx
Source 🎛️ Derived from an Electra One community preset
Revision per pencilresearch canonical CSV
Upstream electra-preset
Driver file devices/yamaha/reface_dx.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/yamaha/reface_dx.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /reface_dx/general/algorithm 63

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

MIDI CC and NRPN parameters (53)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/reface_dx/general/algorithm 80 0–127 continuous General
/reface_dx/operator_1/op_1_output_level 85 0–127 continuous Operator 1
/reface_dx/operator_1/op_1_feedback_level 86 0–127 continuous Operator 1
/reface_dx/operator_1/op_1_feedback_type 87 0–127 continuous Operator 1
/reface_dx/operator_1/op_1_frequency_mode 88 0–127 continuous Operator 1
/reface_dx/operator_1/op_1_frequency_ratio_freq_coarse 89 0–127 continuous Operator 1
/reface_dx/operator_1/op_1_frequency_ratio_freq_fine 90 0–127 continuous Operator 1
/reface_dx/operator_2/op_2_output_level 102 0–127 continuous Operator 2
/reface_dx/operator_2/op_2_feedback_level 103 0–127 continuous Operator 2
/reface_dx/operator_2/op_2_feedback_type 104 0–127 continuous Operator 2
/reface_dx/operator_2/op_2_frequency_mode 105 0–127 continuous Operator 2
/reface_dx/operator_2/op_2_frequency_ratio_freq_coarse 106 0–127 continuous Operator 2
/reface_dx/operator_2/op_2_frequency_ratio_freq_fine 107 0–127 continuous Operator 2
/reface_dx/operator_3/op_3_output_level 108 0–127 continuous Operator 3
/reface_dx/operator_3/op_3_feedback_level 109 0–127 continuous Operator 3
/reface_dx/operator_3/op_3_feedback_type 110 0–127 continuous Operator 3
/reface_dx/operator_3/op_3_frequency_mode 111 0–127 continuous Operator 3
/reface_dx/operator_3/op_3_frequency_ratio_freq_coarse 112 0–127 continuous Operator 3
/reface_dx/operator_3/op_3_frequency_ratio_freq_fine 113 0–127 continuous Operator 3
/reface_dx/operator_4/op_4_output_level 114 0–127 continuous Operator 4
/reface_dx/operator_4/op_4_feedback_level 115 0–127 continuous Operator 4
/reface_dx/operator_4/op_4_feedback_type 116 0–127 continuous Operator 4
/reface_dx/operator_4/op_4_frequency_mode 117 0–127 continuous Operator 4
/reface_dx/operator_4/op_4_frequency_ratio_freq_coarse 118 0–127 continuous Operator 4
/reface_dx/operator_4/op_4_frequency_ratio_freq_fine 119 0–127 continuous Operator 4
/reface_dx/operator_level/level_1 85 0–127 continuous Operator Level
/reface_dx/operator_level/level_2 102 0–127 continuous Operator Level
/reface_dx/operator_level/level_3 108 0–127 continuous Operator Level
/reface_dx/operator_level/level_4 114 0–127 continuous Operator Level
/reface_dx/algo 80 0–127 continuous
/reface_dx/fixed 88 0–127 continuous
/reface_dx/fixed 105 0–127 continuous
/reface_dx/fixed 111 0–127 continuous
/reface_dx/fixed 117 0–127 continuous
/reface_dx/coase 89 0–31 continuous
/reface_dx/coase 106 0–31 continuous
/reface_dx/coase 112 0–31 continuous
/reface_dx/coase 118 0–31 continuous
/reface_dx/fine 90 0–127 continuous
/reface_dx/fine 107 0–127 continuous
/reface_dx/fine 113 0–127 continuous
/reface_dx/fine 119 0–127 continuous
/reface_dx/feedback_1 86 0–127 continuous
/reface_dx/feedback_2 103 0–127 continuous
/reface_dx/feedback_3 109 0–127 continuous
/reface_dx/feedback_4 115 0–127 continuous
/reface_dx/expression_11 11 0–127 continuous
/reface_dx/fb_saw_sqr 87 0–127 continuous
/reface_dx/fb_saw_sqr 104 0–127 continuous
/reface_dx/fb_saw_sqr 110 0–127 continuous
/reface_dx/fb_saw_sqr 116 0–127 continuous
/reface_dx/modulation_1 1 0–127 continuous
/reface_dx/volume_7 7 0–127 continuous

SysEx commands (77)

OSC address Arguments
/reface_dx/pitch_eg/level_1 val: u7
/reface_dx/pitch_eg/level_2 val: u7
/reface_dx/pitch_eg/level_3 val: u7
/reface_dx/pitch_eg/level_4 val: u7
/reface_dx/op_1_eg val: u7
/reface_dx/pitch_eg/rate_1 val: u7
/reface_dx/pitch_eg/rate_2 val: u7
/reface_dx/pitch_eg/rate_3 val: u7
/reface_dx/pitch_eg/rate_4 val: u7
/reface_dx/pitch_lfo/waveform val: u7
/reface_dx/pitch_lfo/speed val: u7
/reface_dx/op_1/lfo_pmd val: u7
/reface_dx/pitch_lfo/delay val: u7
/reface_dx/pitch_lfo/pitch_mod val: u7
/reface_dx/op_1/lfo_depth_op1 val: u7
/reface_dx/op_1/lfo_depth_op2 val: u7
/reface_dx/op_1/lfo_depth_op3 val: u7
/reface_dx/op_1/lfo_depth_op4 val: u7
/reface_dx/effect_1/eff_type val: u7
/reface_dx/effect_2/eff_type val: u7
/reface_dx/effect_1/para_1 val: u7
/reface_dx/effect_1/para_2 val: u7
/reface_dx/effect_2/para_1 val: u7
/reface_dx/effect_2/para_2 val: u7
/reface_dx/char1 val: u7
/reface_dx/char2 val: u7
/reface_dx/char3 val: u7
/reface_dx/char4 val: u7
/reface_dx/char5 val: u7
/reface_dx/char6 val: u7
/reface_dx/char7 val: u7
/reface_dx/char8 val: u7
/reface_dx/char9 val: u7
/reface_dx/char10 val: u7
/reface_dx/local_transpos val: u7
/reface_dx/effect_1/part_mode val: u7
/reface_dx/portamento val: u7
/reface_dx/p_bend_range val: u7
/reface_dx/algo val: u7
/reface_dx/speaker_output val: u7
/reface_dx/lcd_contrast val: u7
/reface_dx/master_transp val: u7
/reface_dx/op1_on val: u7
/reface_dx/fb_saw_sqr val: u7
/reface_dx/mode val: u7
/reface_dx/op_1/detune val: u7
/reface_dx/op_1/lfo_depth val: u7
/reface_dx/op_1/output val: u7
/reface_dx/op_1/fb_amount val: u7
/reface_dx/op_1/coarse val: u7
/reface_dx/op_1/fine val: u7
/reface_dx/lfo_peg val: u7
/reface_dx/op_1/level_1 val: u7
/reface_dx/op_1/level_2 val: u7
/reface_dx/op_1/level_3 val: u7
/reface_dx/op_1/level_4 val: u7
/reface_dx/op_1/rate_1 val: u7
/reface_dx/op_1/rate_2 val: u7
/reface_dx/op_1/rate_3 val: u7
/reface_dx/op_1/rate_4 val: u7
/reface_dx/op_1/rate_scale val: u7
/reface_dx/op_1/level_l_depth val: u7
/reface_dx/op_1/level_r_depth val: u7
/reface_dx/op_1/vel_sense val: u7
/reface_dx/op_1/l_scale_typ val: u7
/reface_dx/op_1/r_scale_typ val: u7
/reface_dx/op2_on val: u7
/reface_dx/op_2/output val: u7
/reface_dx/op_2/level_1 val: u7
/reface_dx/op_2/level_2 val: u7
/reface_dx/op_2/level_3 val: u7
/reface_dx/op_2/level_4 val: u7
/reface_dx/op_2/rate_1 val: u7
/reface_dx/op_2/rate_2 val: u7
/reface_dx/op3_on val: u7
/reface_dx/lfo_pitch_eg val: u7
/reface_dx/op4_on val: u7

Performance MIDI

Notes, pitch bend and any CC are also available: /reface_dx/note/on <note> <velocity>, /reface_dx/cc/<number> <value>, /reface_dx/pitchbend <0-16383>, /reface_dx/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.