Skip to content

Dmitry Sches DS Thorn MIDI CC chart, NRPN and OSC map

The Dmitry Sches DS Thorn MIDI implementation: 114 CC, each named, for Claude (MCP), SuperCollider or any OSC app.

Device Dmitry Sches DS Thorn
Vendor Dmitry Sches
OSC prefix /ds_thorn
Source πŸŽ›οΈ Derived from an Electra One community preset
Revision per Electra preset
Upstream electra-preset
Driver file devices/dmitry-sches/ds_thorn.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/dmitry-sches/ds_thorn.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /ds_thorn/osc_1 63

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

MIDI CC and NRPN parameters (114)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/ds_thorn/osc_1 1 0–127 continuous
/ds_thorn/subosc 2 0–127 continuous
/ds_thorn/fx 3 0–127 continuous
/ds_thorn/pan 4 -127–127 continuous
/ds_thorn/volume 5 0–127 continuous
/ds_thorn/to_filter_1 6 0–127 continuous
/ds_thorn/position 8 0–127 continuous
/ds_thorn/subosc_type 9 0–127 continuous
/ds_thorn/fx_type 10 0–127 continuous
/ds_thorn/vibrato 11 0–127 continuous
/ds_thorn/to_filter_2 12 0–127 continuous
/ds_thorn/osc_2 13 0–127 continuous
/ds_thorn/subosc 14 0–127 continuous
/ds_thorn/fx 15 0–127 continuous
/ds_thorn/pan 16 -127–127 continuous
/ds_thorn/volume 17 0–127 continuous
/ds_thorn/to_filter_1 18 0–127 continuous
/ds_thorn/position 19 0–127 continuous
/ds_thorn/subosc_type 20 0–127 continuous
/ds_thorn/fx_type 21 0–127 continuous
/ds_thorn/vibrato 22 0–127 continuous
/ds_thorn/to_filter_2 23 0–127 continuous
/ds_thorn/osc_3 24 0–127 continuous
/ds_thorn/subosc 25 0–127 continuous
/ds_thorn/fx 26 0–127 continuous
/ds_thorn/pan 27 -127–127 continuous
/ds_thorn/volume 28 0–127 continuous
/ds_thorn/to_filter_1 29 0–127 continuous
/ds_thorn/position 30 0–127 continuous
/ds_thorn/subosc_type 31 0–127 continuous
/ds_thorn/fx_type 32 0–127 continuous
/ds_thorn/vibrato 33 0–127 continuous
/ds_thorn/to_filter_2 34 0–127 continuous
/ds_thorn/noise 35 0–127 continuous
/ds_thorn/loop 36 0–127 continuous
/ds_thorn/pitch 37 -127–127 continuous
/ds_thorn/offset 38 0–127 continuous
/ds_thorn/to_filter_1 39 0–127 continuous
/ds_thorn/key 40 0–127 continuous
/ds_thorn/pan 41 -127–127 continuous
/ds_thorn/volume 42 0–127 continuous
/ds_thorn/to_filter_2 43 0–127 continuous
/ds_thorn/rate 44 0–127 continuous
/ds_thorn/fade_in 45 0–127 continuous
/ds_thorn/vel 46 0–127 continuous
/ds_thorn/amt_ctrl 47 0–127 continuous
/ds_thorn/osc_1_vibrato 48 0–127 continuous
/ds_thorn/osc_2_vibrato 49 0–127 continuous
/ds_thorn/osc_3_vibrato 50 0–127 continuous
/ds_thorn/cutoff 51 0–127 continuous
/ds_thorn/resonance 52 0–127 continuous
/ds_thorn/mod 53 0–127 continuous
/ds_thorn/mod_source 54 0–127 continuous
/ds_thorn/vol 55 0–127 continuous
/ds_thorn/type 56 0–127 continuous
/ds_thorn/cutoff 57 0–127 continuous
/ds_thorn/resonance 58 0–127 continuous
/ds_thorn/mod 59 0–127 continuous
/ds_thorn/mod_source 60 0–127 continuous
/ds_thorn/vol 61 0–127 continuous
/ds_thorn/type 62 0–127 continuous
/ds_thorn/link 63 0–127 continuous
/ds_thorn/drive 65 0–127 continuous
/ds_thorn/keytrack 66 0–127 continuous
/ds_thorn/veltrack 67 0–127 continuous
/ds_thorn/f2_osc_bypass 68 0–127 continuous
/ds_thorn/f1_f2 69 0–127 continuous
/ds_thorn/harmonic_filtr 70 0–127 continuous
/ds_thorn/shape 71 0–127 continuous
/ds_thorn/balance 72 0–127 continuous
/ds_thorn/glitch_seq 73 0–127 continuous
/ds_thorn/arpeggio 74 0–127 continuous
/ds_thorn/fx 75 0–127 continuous
/ds_thorn/mod_matrix 76 0–127 continuous
/ds_thorn/rp_repeater 77 0–127 continuous
/ds_thorn/lp_lowpass 78 0–127 continuous
/ds_thorn/hp_highpass 97 0–127 continuous
/ds_thorn/bit_crusher 98 0–127 continuous
/ds_thorn/sample_rate 99 0–127 continuous
/ds_thorn/gate 100 0–127 continuous
/ds_thorn/attack 79 0–127 continuous
/ds_thorn/attack 80 0–127 continuous
/ds_thorn/attack 81 0–127 continuous
/ds_thorn/attack 82 0–127 continuous
/ds_thorn/key 91 0–127 continuous
/ds_thorn/vel 92 0–127 continuous
/ds_thorn/attack 83 0–127 continuous
/ds_thorn/attack 84 0–127 continuous
/ds_thorn/attack 85 0–127 continuous
/ds_thorn/attack 86 0–127 continuous
/ds_thorn/key 93 0–127 continuous
/ds_thorn/vel 94 0–127 continuous
/ds_thorn/attack 87 0–127 continuous
/ds_thorn/attack 88 0–127 continuous
/ds_thorn/attack 89 0–127 continuous
/ds_thorn/attack 90 0–127 continuous
/ds_thorn/key 95 0–127 continuous
/ds_thorn/vel 96 0–127 continuous
/ds_thorn/sync 101 0–127 continuous
/ds_thorn/speed_sync_d 102 0–127 continuous
/ds_thorn/speed_unsync_d 103 0–127 continuous
/ds_thorn/sync 109 0–127 continuous
/ds_thorn/speed_sync_d 110 0–127 continuous
/ds_thorn/speed_unsync_d 111 0–127 continuous
/ds_thorn/shape 104 0–127 continuous
/ds_thorn/phase 105 0–127 continuous
/ds_thorn/shape 112 0–127 continuous
/ds_thorn/phase 113 0–127 continuous
/ds_thorn/fade_in 106 0–127 continuous
/ds_thorn/amt_ctrl 107 0–127 continuous
/ds_thorn/bipolar 108 0–127 continuous
/ds_thorn/fade_in 114 0–127 continuous
/ds_thorn/amt_ctrl 115 0–127 continuous
/ds_thorn/bipolar 116 0–127 continuous

Performance MIDI

Notes, pitch bend and any CC are also available: /ds_thorn/note/on <note> <velocity>, /ds_thorn/cc/<number> <value>, /ds_thorn/pitchbend <0-16383>, /ds_thorn/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 Dmitry Sches DS Thorn?

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

How many parameters of the Dmitry Sches DS Thorn can be controlled over MIDI?

SynthHub's map of the Dmitry Sches DS Thorn lists 114 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 Dmitry Sches DS Thorn?

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