Skip to content

Yamaha reface DX MIDI CC chart, NRPN and OSC map

The Yamaha reface DX MIDI implementation: 53 CC, 77 SysEx commands, each named, for Claude (MCP), SuperCollider or any OSC app.

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.

Frequently asked questions

How many parameters of the Yamaha reface DX can be controlled over MIDI?

SynthHub's map of the Yamaha reface DX lists 53 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 Yamaha reface DX?

Yes: SynthHub's hosted MCP server knows the Yamaha reface DX's MIDI map, and its browser relay lets the agent send it parameter changes or load a sound, each sound change confirmed by you.