Expert Sleepers Disting EX Algos: MIDI CC, NRPN and OSC map¶
The Expert Sleepers Disting EX Algos as named OSC addresses — 61 CC — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Expert Sleepers Disting EX Algos |
|---|---|
| Vendor | Expert Sleepers |
| OSC prefix | /disting_ex_algos |
| Source | 🎛️ Derived from an Electra One community preset |
| Revision | per Electra preset |
| Upstream | electra-preset |
| Driver file | devices/expert-sleepers/disting_ex_algos.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/expert-sleepers/disting_ex_algos.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 disting_ex_algos: ask “what can the Expert Sleepers Disting EX Algos do?” and it reads this map with list_routes. See the MCP guide.
MIDI CC and NRPN parameters (61)¶
| OSC address | CC | NRPN (MSB/LSB) | Range | Nature | Section |
|---|---|---|---|---|---|
/disting_ex_algos/load_spectral |
127 | 0–127 | continuous | ||
/disting_ex_algos/live_process |
54 | 0–127 | continuous | ||
/disting_ex_algos/freeze |
7 | 0–127 | continuous | ||
/disting_ex_algos/frz_gate |
8 | 0–127 | continuous | ||
/disting_ex_algos/freeze_target |
9 | 0–127 | continuous | ||
/disting_ex_algos/movement |
14 | 0–127 | continuous | ||
/disting_ex_algos/1 |
10 | 0–127 | continuous | ||
/disting_ex_algos/2 |
11 | 0–127 | continuous | ||
/disting_ex_algos/3 |
12 | 0–127 | continuous | ||
/disting_ex_algos/4 |
13 | 0–127 | continuous | ||
/disting_ex_algos/etherization |
18 | 0–127 | continuous | ||
/disting_ex_algos/rate |
15 | 0–100 | continuous | ||
/disting_ex_algos/voice_1 |
23 | -40–6 | continuous | ||
/disting_ex_algos/voice_2 |
24 | -40–6 | continuous | ||
/disting_ex_algos/voice_3 |
25 | -40–6 | continuous | ||
/disting_ex_algos/voice_4 |
26 | -40–6 | continuous | ||
/disting_ex_algos/offset |
17 | 0–1023 | continuous | ||
/disting_ex_algos/depth |
16 | 0–127 | continuous | ||
/disting_ex_algos/pan |
27 | -100–100 | continuous | ||
/disting_ex_algos/pan |
28 | -100–100 | continuous | ||
/disting_ex_algos/pan |
29 | -100–100 | continuous | ||
/disting_ex_algos/pan |
30 | -100–100 | continuous | ||
/disting_ex_algos/freeze_gain |
22 | -40–6 | continuous | ||
/disting_ex_algos/dry_gain |
21 | -40–6 | continuous | ||
/disting_ex_algos/course |
33 | -48–24 | continuous | ||
/disting_ex_algos/course |
34 | -48–24 | continuous | ||
/disting_ex_algos/course |
35 | -48–24 | continuous | ||
/disting_ex_algos/course |
36 | -48–24 | continuous | ||
/disting_ex_algos/course |
31 | -48–24 | continuous | ||
/disting_ex_algos/attack |
70 | 0–127 | continuous | ||
/disting_ex_algos/fine |
37 | -100–100 | continuous | ||
/disting_ex_algos/fine |
38 | -100–100 | continuous | ||
/disting_ex_algos/fine |
39 | -100–100 | continuous | ||
/disting_ex_algos/fine |
40 | -100–100 | continuous | ||
/disting_ex_algos/fine |
32 | -100–100 | continuous | ||
/disting_ex_algos/release |
20 | 0–127 | continuous | ||
/disting_ex_algos/routing |
67 | 0–127 | continuous | ||
/disting_ex_algos/mode |
41 | 0–127 | continuous | ||
/disting_ex_algos/gain |
42 | -40–0 | continuous | ||
/disting_ex_algos/time |
43 | 0–127 | continuous | ||
/disting_ex_algos/feedback |
44 | 0–100 | continuous | ||
/disting_ex_algos/saturation |
69 | 0–127 | continuous | ||
/disting_ex_algos/routing |
68 | 0–127 | continuous | ||
/disting_ex_algos/model |
47 | 0–127 | continuous | ||
/disting_ex_algos/size |
48 | 1–100 | continuous | ||
/disting_ex_algos/high_damping |
49 | 0–100 | continuous | ||
/disting_ex_algos/mod_speed |
50 | 1–500 | continuous | ||
/disting_ex_algos/mod_depth |
51 | 0–100 | continuous | ||
/disting_ex_algos/early_gain |
52 | -40–6 | continuous | ||
/disting_ex_algos/diff_gain |
53 | -40–6 | continuous | ||
/disting_ex_algos/mix |
45 | 0–100 | continuous | ||
/disting_ex_algos/time |
46 | 0–127 | continuous | ||
/disting_ex_algos/input |
65 | 0–127 | continuous | ||
/disting_ex_algos/fund_gate |
19 | 0–127 | continuous | ||
/disting_ex_algos/1 |
1 | -200–200 | continuous | ||
/disting_ex_algos/2 |
2 | -200–200 | continuous | ||
/disting_ex_algos/3 |
3 | -200–200 | continuous | ||
/disting_ex_algos/4 |
4 | -200–200 | continuous | ||
/disting_ex_algos/5 |
5 | -200–200 | continuous | ||
/disting_ex_algos/6 |
6 | -200–200 | continuous | ||
/disting_ex_algos/tap_tempo |
107 | 0–127 | continuous |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /disting_ex_algos/note/on <note> <velocity>, /disting_ex_algos/cc/<number> <value>, /disting_ex_algos/pitchbend <0-16383>, /disting_ex_algos/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.