Lexicon PCM 96: MIDI CC, NRPN and OSC map¶
The Lexicon PCM 96 as named OSC addresses — 37 CC — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Lexicon PCM 96 |
|---|---|
| Vendor | Lexicon |
| OSC prefix | /lexicon_pcm_96 |
| Source | 🎛️ Derived from an Electra One community preset |
| Revision | per Electra preset |
| Upstream | electra-preset |
| Driver file | devices/lexicon/lexicon_pcm_96.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/lexicon/lexicon_pcm_96.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 lexicon_pcm_96: ask “what can the Lexicon PCM 96 do?” and it reads this map with list_routes. See the MCP guide.
MIDI CC and NRPN parameters (37)¶
| OSC address | CC | NRPN (MSB/LSB) | Range | Nature | Section |
|---|---|---|---|---|---|
/lexicon_pcm_96/machine_1/dial |
48 | 0–100 | continuous | Machine 1 | |
/lexicon_pcm_96/machine_1/dial |
49 | 0–100 | continuous | Machine 1 | |
/lexicon_pcm_96/machine_1/dial |
50 | 0–100 | continuous | Machine 1 | |
/lexicon_pcm_96/machine_1/dial |
51 | 0–100 | continuous | Machine 1 | |
/lexicon_pcm_96/machine_1/dial |
52 | 0–100 | continuous | Machine 1 | |
/lexicon_pcm_96/machine_1/dial |
53 | 0–100 | continuous | Machine 1 | |
/lexicon_pcm_96/machine_1/dial |
54 | 0–100 | continuous | Machine 1 | |
/lexicon_pcm_96/machine_1/dial |
55 | 0–100 | continuous | Machine 1 | |
/lexicon_pcm_96/machine_2/dial |
48 | 0–100 | continuous | Machine 2 | |
/lexicon_pcm_96/machine_2/dial |
49 | 0–100 | continuous | Machine 2 | |
/lexicon_pcm_96/machine_2/dial |
50 | 0–100 | continuous | Machine 2 | |
/lexicon_pcm_96/machine_2/dial |
51 | 0–100 | continuous | Machine 2 | |
/lexicon_pcm_96/machine_2/dial |
52 | 0–100 | continuous | Machine 2 | |
/lexicon_pcm_96/machine_2/dial |
53 | 0–100 | continuous | Machine 2 | |
/lexicon_pcm_96/machine_2/dial |
54 | 0–100 | continuous | Machine 2 | |
/lexicon_pcm_96/machine_2/dial |
55 | 0–100 | continuous | Machine 2 | |
/lexicon_pcm_96/bank |
32 | 0–127 | continuous | ||
/lexicon_pcm_96/bank |
32 | 0–127 | continuous | ||
/lexicon_pcm_96/bank |
32 | 0–127 | continuous | ||
/lexicon_pcm_96/machine_3/dial |
48 | 0–100 | continuous | Machine 3 | |
/lexicon_pcm_96/machine_3/dial |
49 | 0–100 | continuous | Machine 3 | |
/lexicon_pcm_96/machine_3/dial |
50 | 0–100 | continuous | Machine 3 | |
/lexicon_pcm_96/machine_3/dial |
51 | 0–100 | continuous | Machine 3 | |
/lexicon_pcm_96/machine_3/dial |
52 | 0–100 | continuous | Machine 3 | |
/lexicon_pcm_96/machine_3/dial |
53 | 0–100 | continuous | Machine 3 | |
/lexicon_pcm_96/machine_3/dial |
54 | 0–100 | continuous | Machine 3 | |
/lexicon_pcm_96/machine_3/dial |
55 | 0–100 | continuous | Machine 3 | |
/lexicon_pcm_96/machine_4/dial |
48 | 0–100 | continuous | Machine 4 | |
/lexicon_pcm_96/machine_4/dial |
49 | 0–100 | continuous | Machine 4 | |
/lexicon_pcm_96/machine_4/dial |
50 | 0–100 | continuous | Machine 4 | |
/lexicon_pcm_96/machine_4/dial |
51 | 0–100 | continuous | Machine 4 | |
/lexicon_pcm_96/machine_4/dial |
52 | 0–100 | continuous | Machine 4 | |
/lexicon_pcm_96/machine_4/dial |
53 | 0–100 | continuous | Machine 4 | |
/lexicon_pcm_96/machine_4/dial |
54 | 0–100 | continuous | Machine 4 | |
/lexicon_pcm_96/machine_4/dial |
55 | 0–100 | continuous | Machine 4 | |
/lexicon_pcm_96/bank |
32 | 0–127 | continuous | ||
/lexicon_pcm_96/bank |
32 | 0–127 | continuous |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /lexicon_pcm_96/note/on <note> <velocity>, /lexicon_pcm_96/cc/<number> <value>, /lexicon_pcm_96/pitchbend <0-16383>, /lexicon_pcm_96/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.