Skip to content

Rhodes Chroma 2: MIDI CC, NRPN and OSC map

The Rhodes Chroma 2 as named OSC addresses — 158 CC — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.

Device Rhodes Chroma 2
Vendor Rhodes
OSC prefix /chroma_2
Source 🎛️ Derived from an Electra One community preset
Revision per Electra preset
Upstream electra-preset
Driver file devices/rhodes/chroma_2.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/rhodes/chroma_2.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /chroma_2/tune 31

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

MIDI CC and NRPN parameters (158)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/chroma_2/tune 30 0–63 continuous
/chroma_2/wave_shape 37 0–127 continuous
/chroma_2/mod_select 39 0–127 continuous
/chroma_2/tune 90 0–63 continuous
/chroma_2/wave_shape 97 0–127 continuous
/chroma_2/mod_select 99 0–127 continuous
/chroma_2/width 38 0–63 continuous
/chroma_2/mod_depth 40 -64–63 continuous
/chroma_2/width 98 0–63 continuous
/chroma_2/mod_depth 100 -64–63 continuous
/chroma_2/mod1_select 31 0–127 continuous
/chroma_2/mod2_select 33 0–127 continuous
/chroma_2/mod3_select 35 0–127 continuous
/chroma_2/mod1_select 91 0–127 continuous
/chroma_2/mod2_select 93 0–127 continuous
/chroma_2/mod3_select 95 0–127 continuous
/chroma_2/mod1_depth 32 -64–63 continuous
/chroma_2/mod2_depth 34 -64–63 continuous
/chroma_2/mod3_depth 36 -64–63 continuous
/chroma_2/mod1_depth 92 -64–63 continuous
/chroma_2/mod2_depth 94 -64–63 continuous
/chroma_2/mod3_depth 96 -64–63 continuous
/chroma_2/rate 10 0–31 continuous
/chroma_2/shape 11 0–127 continuous
/chroma_2/rate 70 0–31 continuous
/chroma_2/shape 71 0–127 continuous
/chroma_2/patch 115 0–127 continuous
/chroma_2/key_algorithm 117 0–127 continuous
/chroma_2/detune 118 0–31 continuous
/chroma_2/footsw_mode 116 0–127 continuous
/chroma_2/output_select 119 0–127 continuous
/chroma_2/type 41 0–127 continuous
/chroma_2/resonance 42 0–7 continuous
/chroma_2/tune 43 0–63 continuous
/chroma_2/type 101 0–127 continuous
/chroma_2/resonance 102 0–7 continuous
/chroma_2/tune 103 0–63 continuous
/chroma_2/mod1_select 44 0–127 continuous
/chroma_2/mod2_select 46 0–127 continuous
/chroma_2/mod3_select 48 0–127 continuous
/chroma_2/mod1_select 104 0–127 continuous
/chroma_2/mod2_select 106 0–127 continuous
/chroma_2/mod3_select 108 0–127 continuous
/chroma_2/mod1_depth 45 -64–63 continuous
/chroma_2/mod2_depth 47 -64–63 continuous
/chroma_2/mod3_depth 49 -64–63 continuous
/chroma_2/mod1_depth 105 -64–63 continuous
/chroma_2/mod2_depth 107 -64–63 continuous
/chroma_2/mod3_depth 109 -64–63 continuous
/chroma_2/mod1_select 50 0–127 continuous
/chroma_2/mod2_select 52 0–127 continuous
/chroma_2/mod3_select 54 0–127 continuous
/chroma_2/mod1_select 110 0–127 continuous
/chroma_2/mod2_select 112 0–127 continuous
/chroma_2/mod3_select 114 0–127 continuous
/chroma_2/mod1_depth 51 0–15 continuous
/chroma_2/mod2_depth 53 0–15 continuous
/chroma_2/mod1_depth 111 0–15 continuous
/chroma_2/mod2_depth 113 0–15 continuous
/chroma_2/attack 18 0–31 continuous
/chroma_2/attack_mod 19 0–127 continuous
/chroma_2/ampl_touch 17 0–127 continuous
/chroma_2/attack 78 0–31 continuous
/chroma_2/attack_mod 79 0–127 continuous
/chroma_2/ampl_touch 77 0–127 continuous
/chroma_2/decay 20 0–31 continuous
/chroma_2/decay_mod 21 0–127 continuous
/chroma_2/release 22 0–31 continuous
/chroma_2/decay 80 0–31 continuous
/chroma_2/decay_mod 81 0–127 continuous
/chroma_2/release 82 0–31 continuous
/chroma_2/delay 23 0–31 continuous
/chroma_2/env_2a 25 0–31 continuous
/chroma_2/env_2a 27 0–31 continuous
/chroma_2/env_2a 29 0–31 continuous
/chroma_2/delay 83 0–31 continuous
/chroma_2/env_2b 85 0–31 continuous
/chroma_2/env_2b 87 0–31 continuous
/chroma_2/env_2b 89 0–31 continuous
/chroma_2/attack_mod 26 0–127 continuous
/chroma_2/ampl_touch 24 0–127 continuous
/chroma_2/attack_mod 86 0–127 continuous
/chroma_2/ampl_touch 84 0–127 continuous
/chroma_2/decay_mod 28 0–127 continuous
/chroma_2/decay_mod 88 0–127 continuous
/chroma_2/mode 12 0–127 continuous
/chroma_2/rate 13 0–63 continuous
/chroma_2/rate_mod 14 0–127 continuous
/chroma_2/mode 72 0–127 continuous
/chroma_2/rate 73 0–63 continuous
/chroma_2/rate_mod 74 0–127 continuous
/chroma_2/wave_shape 15 0–127 continuous
/chroma_2/ampl_mod 16 0–127 continuous
/chroma_2/wave_shape 75 0–127 continuous
/chroma_2/ampl_mod 76 0–127 continuous
/chroma_2/waveshape 37 0–127 continuous
/chroma_2/waveshape 97 0–127 continuous
/chroma_2/mod_select_1 31 0–127 continuous
/chroma_2/mod_select_2 33 0–127 continuous
/chroma_2/mod_select_3 35 0–127 continuous
/chroma_2/mod_select_1 91 0–127 continuous
/chroma_2/mod_select_2 93 0–127 continuous
/chroma_2/mod_select_3 95 0–127 continuous
/chroma_2/mod_depth_1 32 -64–63 continuous
/chroma_2/mod_depth_2 34 -64–63 continuous
/chroma_2/mod_depth_3 36 -64–63 continuous
/chroma_2/mod_depth_1 92 -64–63 continuous
/chroma_2/mod_depth_2 94 -64–63 continuous
/chroma_2/mod_depth_3 96 -64–63 continuous
/chroma_2/glide_shape 11 0–127 continuous
/chroma_2/glide_rate 10 0–31 continuous
/chroma_2/glide_shape 71 0–127 continuous
/chroma_2/glide_rate 70 0–31 continuous
/chroma_2/cutoff 43 0–63 continuous
/chroma_2/filter_type 41 0–127 continuous
/chroma_2/cutoff 103 0–63 continuous
/chroma_2/filter_type 101 0–127 continuous
/chroma_2/mod_select_1 44 0–127 continuous
/chroma_2/mod_select_2 46 0–127 continuous
/chroma_2/mod_select_3 48 0–127 continuous
/chroma_2/mod_select_1 104 0–127 continuous
/chroma_2/mod_select_2 106 0–127 continuous
/chroma_2/mod_select_3 108 0–127 continuous
/chroma_2/mod_depth_1 45 -64–63 continuous
/chroma_2/mod_depth_2 47 -64–63 continuous
/chroma_2/mod_depth_3 49 -64–63 continuous
/chroma_2/mod_depth_1 105 -64–63 continuous
/chroma_2/mod_depth_2 107 -64–63 continuous
/chroma_2/mod_depth_3 109 -64–63 continuous
/chroma_2/mod_select_1 50 0–127 continuous
/chroma_2/mod_select_2 52 0–127 continuous
/chroma_2/mod_select_3 54 0–127 continuous
/chroma_2/mod_select_1 110 0–127 continuous
/chroma_2/mod_select_2 112 0–127 continuous
/chroma_2/mod_select_3 114 0–127 continuous
/chroma_2/mod_depth_1 51 0–15 continuous
/chroma_2/mod_depth_2 53 0–15 continuous
/chroma_2/mod_depth_1 111 0–15 continuous
/chroma_2/mod_depth_2 113 0–15 continuous
/chroma_2/env_1a_attack 18 0–31 continuous
/chroma_2/env_1a_decay 20 0–31 continuous
/chroma_2/env_1a_release 22 0–31 continuous
/chroma_2/env_1b_attack 78 0–31 continuous
/chroma_2/env_1b_decay 80 0–31 continuous
/chroma_2/env_1b_release 82 0–31 continuous
/chroma_2/env_2a_attack 25 0–31 continuous
/chroma_2/env_2a_decay 27 0–31 continuous
/chroma_2/env_2a_release 29 0–31 continuous
/chroma_2/env_2b_attack 85 0–31 continuous
/chroma_2/env_2b_decay 87 0–31 continuous
/chroma_2/env_2b_release 89 0–31 continuous
/chroma_2/sweep_shape 15 0–127 continuous
/chroma_2/sweep_shape 75 0–127 continuous
/chroma_2/sweep_rate_mod_b 74 0–127 continuous
/chroma_2/env_2a_delay 23 0–31 continuous
/chroma_2/env_2b_delay 83 0–31 continuous
/chroma_2/sweep_a_mode 12 0–127 continuous
/chroma_2/sweep_b_mode 72 0–127 continuous

Performance MIDI

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