Morphor ECHON 6: MIDI CC, NRPN and OSC map¶
The Morphor ECHON 6 as named OSC addresses — 99 CC — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Morphor ECHON 6 |
|---|---|
| Vendor | Morphor |
| OSC prefix | /echon_6 |
| Source | 📦 Derived from MIDI Guide (community CC/NRPN data) |
| Firmware | unknown |
| Revision | per pencilresearch canonical CSV |
| Upstream | pencilresearch |
| Data licence | CC-BY-SA-4.0 — MIDI Guide (https://midi.guide) by Pencil Research and contributors |
| Driver file | devices/morphor/echon_6.pencilresearch.fw-unknown.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/morphor/echon_6.pencilresearch.fw-unknown.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 echon_6: ask “what can the Morphor ECHON 6 do?” and it reads this map with list_routes. See the MCP guide.
MIDI CC and NRPN parameters (99)¶
| OSC address | CC | NRPN (MSB/LSB) | Range | Nature | Section |
|---|---|---|---|---|---|
/echon_6/bank_select/msb |
0 | 0–5 | continuous | Bank select | |
/echon_6/bank_select/lsb |
32 | 0–35 | continuous | Bank select | |
/echon_6/performance/modwheel |
1 | 0–127 | continuous | Performance | |
/echon_6/exciter/external_input |
14 | 0–127 | continuous | Exciter | |
/echon_6/exciter/wave |
15 | 0–127 | continuous | Exciter | |
/echon_6/exciter/keyboard_reset |
16 | 0–127 | continuous | Exciter | |
/echon_6/exciter/coarse_frequency |
17 | 0–127 | continuous | Exciter | |
/echon_6/exciter/fine_frequency |
18 | 0–127 | continuous | Exciter | |
/echon_6/exciter/noise_sample_and_hold_rate |
19 | 0–127 | continuous | Exciter | |
/echon_6/exciter/wave_noise_mix |
20 | 0–127 | continuous | Exciter | |
/echon_6/exciter/level |
21 | 0–127 | continuous | Exciter | |
/echon_6/envelope/onset_delay |
22 | 0–127 | continuous | Envelope | |
/echon_6/envelope/attack |
23 | 0–127 | continuous | Envelope | |
/echon_6/envelope/decay |
24 | 0–127 | continuous | Envelope | |
/echon_6/envelope/sustain |
25 | 0–127 | continuous | Envelope | |
/echon_6/envelope/release |
26 | 0–127 | continuous | Envelope | |
/echon_6/envelope/range |
27 | 0–127 | continuous | Envelope | |
/echon_6/envelope/hold |
28 | 0–127 | continuous | Envelope | |
/echon_6/envelope/legato |
29 | 0–127 | continuous | Envelope | |
/echon_6/envelope/loop |
30 | 0–127 | continuous | Envelope | |
/echon_6/resonator/input_filter |
31 | 0–127 | continuous | Resonator | |
/echon_6/resonator/feedback_filter |
40 | 0–127 | continuous | Resonator | |
/echon_6/resonator/invert |
41 | 0–127 | continuous | Resonator | |
/echon_6/resonator/feedback |
43 | 0–127 | continuous | Resonator | |
/echon_6/resonator/glide |
5 | 0–127 | continuous | Resonator | |
/echon_6/resonator/fine_tune |
46 | 0–127 | continuous | Resonator | |
/echon_6/resonator/note_offset |
47 | 0–127 | continuous | Resonator | |
/echon_6/output/dry_wet |
48 | 0–127 | continuous | Output | |
/echon_6/output/panning |
10 | 0–127 | continuous | Output | |
/echon_6/output/level |
7 | 0–127 | continuous | Output | |
/echon_6/lfo_1/wave |
49 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_1/random_rate |
50 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_1/amplitude |
51 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_1/smooth |
52 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_1/mix |
53 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_1/keyboard_reset |
54 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_1/single_shot |
55 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_1/rate |
56 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_1/polarity |
57 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_1/clock_sync |
58 | 0–127 | continuous | LFO 1 | |
/echon_6/lfo_2/wave |
59 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_2/random_rate |
60 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_2/amplitude |
61 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_2/smooth |
62 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_2/mix |
63 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_2/keyboard_reset |
70 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_2/single_shot |
71 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_2/rate |
72 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_2/polarity |
73 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_2/clock_sync |
74 | 0–127 | continuous | LFO 2 | |
/echon_6/lfo_3/wave |
75 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_3/random_rate |
76 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_3/amplitude |
77 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_3/smooth |
78 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_3/mix |
79 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_3/keyboard_reset |
80 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_3/single_shot |
81 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_3/rate |
82 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_3/polarity |
83 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_3/clock_sync |
85 | 0–127 | continuous | LFO 3 | |
/echon_6/lfo_4/wave |
86 | 0–127 | continuous | LFO 4 | |
/echon_6/lfo_4/random_rate |
87 | 0–127 | continuous | LFO 4 | |
/echon_6/lfo_4/amplitude |
88 | 0–127 | continuous | LFO 4 | |
/echon_6/lfo_4/smooth |
89 | 0–127 | continuous | LFO 4 | |
/echon_6/lfo_4/mix |
90 | 0–127 | continuous | LFO 4 | |
/echon_6/lfo_4/keyboard_reset |
91 | 0–127 | continuous | LFO 4 | |
/echon_6/lfo_4/single_shot |
92 | 0–127 | continuous | LFO 4 | |
/echon_6/lfo_4/rate |
93 | 0–127 | continuous | LFO 4 | |
/echon_6/lfo_4/polarity |
94 | 0–127 | continuous | LFO 4 | |
/echon_6/lfo_4/clock_sync |
95 | 0–127 | continuous | LFO 4 | |
/echon_6/source_attenuverter/detach_attach_source |
9 | 0–127 | continuous | Source attenuverter | |
/echon_6/source_attenuverter/envelope_depth |
102 | 0–127 | continuous | Source attenuverter | |
/echon_6/source_attenuverter/quad_lfo_depth |
103 | 0–127 | continuous | Source attenuverter | |
/echon_6/source_attenuverter/modwheel_depth |
104 | 0–127 | continuous | Source attenuverter | |
/echon_6/source_attenuverter/velocity_depth |
105 | 0–127 | continuous | Source attenuverter | |
/echon_6/source_attenuverter/aftertouch_depth |
106 | 0–127 | continuous | Source attenuverter | |
/echon_6/source_attenuverter/key_follow_depth |
107 | 0–127 | continuous | Source attenuverter | |
/echon_6/source_attenuverter/pitchbend_depth |
108 | 0–127 | continuous | Source attenuverter | |
/echon_6/modulation_path/source_select |
109 | 0–8 | continuous | Modulation path | |
/echon_6/modulation_path/destination_select |
110 | 0–31 | continuous | Modulation path | |
/echon_6/modulation_path/destination_depth |
111 | 0–127 | continuous | Modulation path | |
/echon_6/modulation_path/destination_depth_polarity |
112 | 0–127 | continuous | Modulation path | |
/echon_6/modulation_path/enable |
113 | 0–127 | continuous | Modulation path | |
/echon_6/modulation_path/lfo_select |
115 | 0–127 | continuous | Modulation path | |
/echon_6/number_key/key_select |
11 | 0–127 | continuous | Number key | |
/echon_6/number_key/midi_note_number |
12 | 12–108 | continuous | Number key | |
/echon_6/number_key/velocity |
13 | 0–127 | continuous | Number key | |
/echon_6/number_key/modwheel |
2 | 0–127 | continuous | Number key | |
/echon_6/number_key/aftertouch |
3 | 0–127 | continuous | Number key | |
/echon_6/voice_groups/select_voice_group |
114 | 0–5 | continuous | Voice groups | |
/echon_6/voice_groups/note_priority_mode |
116 | 0–127 | continuous | Voice groups | |
/echon_6/voice_groups/remove_voice |
117 | 0–5 | continuous | Voice groups | |
/echon_6/voice_groups/add_voice |
118 | 0–5 | continuous | Voice groups | |
/echon_6/channel_mode/all_sounds_off |
120 | 0–127 | continuous | Channel mode | |
/echon_6/channel_mode/reset_all_controllers |
121 | 0–127 | continuous | Channel mode | |
/echon_6/channel_mode/local_control |
122 | 0–127 | continuous | Channel mode | |
/echon_6/channel_mode/all_notes_off |
123 | 0–127 | continuous | Channel mode | |
/echon_6/channel_mode/mono_mode_on |
126 | 0–127 | continuous | Channel mode | |
/echon_6/channel_mode/poly_mode_on |
127 | 0–127 | continuous | Channel mode |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /echon_6/note/on <note> <velocity>, /echon_6/cc/<number> <value>, /echon_6/pitchbend <0-16383>, /echon_6/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.