Skip to content

Waves Codex MIDI CC chart, NRPN and OSC map

The Waves Codex MIDI implementation: 116 CC, each named, for Claude (MCP), SuperCollider or any OSC app.

Device Waves Codex
Vendor Waves
OSC prefix /waves_codex
Source πŸŽ›οΈ Derived from an Electra One community preset
Revision per Electra preset
Upstream electra-preset
Driver file devices/waves/waves_codex.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/waves/waves_codex.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /waves_codex/octave 63

From Claude or any MCP client, the osc-bridge mcp server exposes this driver as waves_codex: ask β€œwhat can the Waves Codex do?” and it reads this map with list_routes. See the MCP guide.

MIDI CC and NRPN parameters (116)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/waves_codex/octave 1 0–127 continuous
/waves_codex/tune 2 0–127 continuous
/waves_codex/fine 3 0–127 continuous
/waves_codex/start 4 0–127 continuous
/waves_codex/mid 5 0–127 continuous
/waves_codex/end 6 0–127 continuous
/waves_codex/osc_speed 10 0–127 continuous
/waves_codex/sync 8 0–127 continuous
/waves_codex/loop 9 0–127 continuous
/waves_codex/formant 11 0–127 continuous
/waves_codex/resolution 12 0–127 continuous
/waves_codex/sync_osc_2 35 0–127 continuous
/waves_codex/octave 13 0–127 continuous
/waves_codex/tune 14 0–127 continuous
/waves_codex/fine 15 0–127 continuous
/waves_codex/start 16 0–127 continuous
/waves_codex/mid 17 0–127 continuous
/waves_codex/end 18 0–127 continuous
/waves_codex/osc_speed 21 0–127 continuous
/waves_codex/sync 19 0–127 continuous
/waves_codex/loop 20 0–127 continuous
/waves_codex/formant 22 0–127 continuous
/waves_codex/resolution 23 0–127 continuous
/waves_codex/fm 36 0–127 continuous
/waves_codex/sub 24 0–127 continuous
/waves_codex/noise 25 0–127 continuous
/waves_codex/ring 26 0–127 continuous
/waves_codex/mono 30 0–127 continuous
/waves_codex/retrig 31 0–127 continuous
/waves_codex/port 34 0–127 continuous
/waves_codex/osc_1 27 0–127 continuous
/waves_codex/osc_2 28 0–127 continuous
/waves_codex/osc_mix 29 0–127 continuous
/waves_codex/unison 32 0–127 continuous
/waves_codex/always 33 0–127 continuous
/waves_codex/gain 7 0–127 continuous
/waves_codex/cutoff 37 0–127 continuous
/waves_codex/resonance 38 0–127 continuous
/waves_codex/env 39 0–127 continuous
/waves_codex/keyb 40 0–127 continuous
/waves_codex/fm 41 0–127 continuous
/waves_codex/slope 42 0–127 continuous
/waves_codex/attack 44 0–127 continuous
/waves_codex/attack 45 0–127 continuous
/waves_codex/attack 46 0–127 continuous
/waves_codex/attack 47 0–127 continuous
/waves_codex/shape 48 0–127 continuous
/waves_codex/type 43 0–127 continuous
/waves_codex/attack 49 0–127 continuous
/waves_codex/attack 50 0–127 continuous
/waves_codex/attack 51 0–127 continuous
/waves_codex/attack 52 0–127 continuous
/waves_codex/shape 53 0–127 continuous
/waves_codex/punch 54 0–127 continuous
/waves_codex/attack 55 0–127 continuous
/waves_codex/attack 56 0–127 continuous
/waves_codex/attack 57 0–127 continuous
/waves_codex/attack 58 0–127 continuous
/waves_codex/shape 59 0–127 continuous
/waves_codex/vcf 60 0–127 continuous
/waves_codex/vca 61 0–127 continuous
/waves_codex/env_3 62 0–127 continuous
/waves_codex/100 63 0–127 continuous
/waves_codex/600 64 0–127 continuous
/waves_codex/1500 65 0–127 continuous
/waves_codex/3000 66 0–127 continuous
/waves_codex/lowpass 67 0–127 continuous
/waves_codex/highpass 68 0–127 continuous
/waves_codex/type 70 0–127 continuous
/waves_codex/rate 71 0–127 continuous
/waves_codex/type 76 0–127 continuous
/waves_codex/time 77 0–127 continuous
/waves_codex/type 73 0–127 continuous
/waves_codex/rate 74 0–127 continuous
/waves_codex/type 79 0–127 continuous
/waves_codex/time 80 0–127 continuous
/waves_codex/mod_1_att 107 0–127 continuous
/waves_codex/mod_3_att 111 0–127 continuous
/waves_codex/mod_5_att 115 0–127 continuous
/waves_codex/mod_2_att 109 0–127 continuous
/waves_codex/mod_4_att 113 0–127 continuous
/waves_codex/mod_6_att 117 0–127 continuous
/waves_codex/crusher 118 0–127 continuous
/waves_codex/distortion 119 0–127 continuous
/waves_codex/rate_left 106 0–127 continuous
/waves_codex/rate_right 72 0–127 continuous
/waves_codex/reverb 108 0–127 continuous
/waves_codex/chorus 110 0–127 continuous
/waves_codex/pre_vcf 69 0–127 continuous
/waves_codex/mix 75 0–127 continuous
/waves_codex/feedback 78 0–127 continuous
/waves_codex/mode 81 0–127 continuous
/waves_codex/rate 82 0–127 continuous
/waves_codex/rate 83 0–127 continuous
/waves_codex/gate 87 0–127 continuous
/waves_codex/step 88 0–127 continuous
/waves_codex/oct 84 0–127 continuous
/waves_codex/hold 85 0–127 continuous
/waves_codex/retrig 86 0–127 continuous
/waves_codex/swing 89 0–127 continuous
/waves_codex/1 90 0–127 continuous
/waves_codex/2 91 0–127 continuous
/waves_codex/3 92 0–127 continuous
/waves_codex/4 93 0–127 continuous
/waves_codex/5 94 0–127 continuous
/waves_codex/6 95 0–127 continuous
/waves_codex/7 96 0–127 continuous
/waves_codex/8 97 0–127 continuous
/waves_codex/9 98 0–127 continuous
/waves_codex/10 99 0–127 continuous
/waves_codex/11 100 0–127 continuous
/waves_codex/12 101 0–127 continuous
/waves_codex/13 102 0–127 continuous
/waves_codex/14 103 0–127 continuous
/waves_codex/15 104 0–127 continuous
/waves_codex/16 105 0–127 continuous

Performance MIDI

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

Frequently asked questions

Which MIDI CC controls the filter cutoff on the Waves Codex?

CC 37 (0–127), named /waves_codex/cutoff in SynthHub's map.

How many parameters of the Waves Codex can be controlled over MIDI?

SynthHub's map of the Waves Codex lists 116 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 Waves Codex?

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