Waldorf WAVE 1.5: MIDI CC, NRPN and OSC map¶
The Waldorf WAVE 1.5 as named OSC addresses — 68 SysEx commands — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Waldorf WAVE 1.5 |
|---|---|
| Vendor | Waldorf |
| OSC prefix | /wave_1_5 |
| Source | 🎛️ Derived from an Electra One community preset |
| Revision | per Electra preset |
| Upstream | electra-preset |
| Driver file | devices/waldorf/wave_1_5.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/waldorf/wave_1_5.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 wave_1_5: ask “what can the Waldorf WAVE 1.5 do?” and it reads this map with list_routes. See the MCP guide.
SysEx commands (68)¶
| OSC address | Arguments |
|---|---|
/wave_1_5/cutoff |
val: u7 |
/wave_1_5/q |
val: u7 |
/wave_1_5/osc_1_oct |
val: u7 |
/wave_1_5/osc_1_semitone |
val: u7 |
/wave_1_5/osc_1_detune |
val: u7 |
/wave_1_5/bend_range |
val: u7 |
/wave_1_5/wavetable |
val: u7 |
/wave_1_5/osc1_startwave |
val: u7 |
/wave_1_5/osc2_startwave |
val: u7 |
/wave_1_5/osc_2_detune |
val: u7 |
/wave_1_5/osc_2_oct |
val: u7 |
/wave_1_5/osc_2_semitone |
val: u7 |
/wave_1_5/panning |
val: u7 |
/wave_1_5/vol_env_amount |
val: u7 |
/wave_1_5/adsr |
val: u7 |
/wave_1_5/env_delay |
val: u7 |
/wave_1_5/keytrack |
val: u7 |
/wave_1_5/wavelink_2_1 |
val: u7 |
/wave_1_5/fc_velocity |
val: u7 |
/wave_1_5/env_velocity |
val: u7 |
/wave_1_5/fc_env_amount |
val: u7 |
/wave_1_5/fc_mod1_amount |
val: u7 |
/wave_1_5/mod_1_source |
val: u7 |
/wave_1_5/mod_1_control |
val: u7 |
/wave_1_5/fc_mod2_amount |
val: u7 |
/wave_1_5/q_mod_1_amount |
val: u7 |
/wave_1_5/fc_adsr_mod |
val: u7 |
/wave_1_5/atk_mod_source |
val: u7 |
/wave_1_5/dky_mod_source |
val: u7 |
/wave_1_5/sus_mod_source |
val: u7 |
/wave_1_5/rel_mod_source |
val: u7 |
/wave_1_5/env_delay_mod |
val: u7 |
/wave_1_5/vol_adsr_mod |
val: u7 |
/wave_1_5/pitch_mode |
val: u7 |
/wave_1_5/osc_1_amount |
val: u7 |
/wave_1_5/osc_1_source |
val: u7 |
/wave_1_5/mod_2_source |
val: u7 |
/wave_1_5/osc_1_control |
val: u7 |
/wave_1_5/mod2_quantize |
val: u7 |
/wave_1_5/wave_1_mode |
val: u7 |
/wave_1_5/wave_2_mode |
val: u7 |
/wave_1_5/pan_mod_amount |
val: u7 |
/wave_1_5/pan_mod_source |
val: u7 |
/wave_1_5/glide |
val: u7 |
/wave_1_5/time |
val: u7 |
/wave_1_5/lfos_speed_sym |
val: u7 |
/wave_1_5/lfo_shape |
val: u7 |
/wave_1_5/humanize |
val: u7 |
/wave_1_5/lfo_1_attack |
val: u7 |
/wave_1_5/sync_mode |
val: u7 |
/wave_1_5/lfo_1_delay |
val: u7 |
/wave_1_5/lfo_1_decay |
val: u7 |
/wave_1_5/lfo_2_phase |
val: u7 |
/wave_1_5/lfo_1_rate_mod |
val: u7 |
/wave_1_5/mod_source |
val: u7 |
/wave_1_5/t1_l1_t2_l2 |
val: u7 |
/wave_1_5/t3_l3_t4_l4 |
val: u7 |
/wave_1_5/t5_l5_t6_l6 |
val: u7 |
/wave_1_5/t7_l7_t8_l8 |
val: u7 |
/wave_1_5/time_mod |
val: u7 |
/wave_1_5/level_mod |
val: u7 |
/wave_1_5/key_off_point |
val: u7 |
/wave_1_5/loop_start |
val: u7 |
/wave_1_5/loop_on_off |
val: u7 |
/wave_1_5/w1_w2_no_pgm |
val: u7 |
/wave_1_5/ss_env_vel_kt |
val: u7 |
/wave_1_5/mod1_2_mod1_2 |
val: u7 |
/wave_1_5/wavelink_1_2 |
val: u7 |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /wave_1_5/note/on <note> <velocity>, /wave_1_5/cc/<number> <value>, /wave_1_5/pitchbend <0-16383>, /wave_1_5/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.