Teenage Engineering OpZilla (v01) MIDI CC chart, NRPN and OSC map¶
The Teenage Engineering OpZilla (v01) MIDI implementation: 117 CC, each named, for Claude (MCP), SuperCollider or any OSC app.
| Device | Teenage Engineering OpZilla (v01) |
|---|---|
| Vendor | Teenage Engineering |
| OSC prefix | /opzilla_v01 |
| Source | ποΈ Derived from an Electra One community preset |
| Revision | per Electra preset |
| Upstream | electra-preset |
| Driver file | devices/teenage-engineering/opzilla_v01.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/teenage-engineering/opzilla_v01.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 opzilla_v01: ask βwhat can the Teenage Engineering OpZilla (v01) do?β and it reads this map with list_routes. See the MCP guide.
MIDI CC and NRPN parameters (117)¶
| OSC address | CC | NRPN (MSB/LSB) | Range | Nature | Section |
|---|---|---|---|---|---|
/opzilla_v01/shape |
3 | 0β127 | continuous | ||
/opzilla_v01/amp_envelope |
9 | 0β127 | continuous | ||
/opzilla_v01/coarse |
14 | -64β64 | continuous | ||
/opzilla_v01/fine |
15 | -50β50 | continuous | ||
/opzilla_v01/ratio_fixed |
20 | 0β127 | continuous | ||
/opzilla_v01/adsr |
47 | 0β127 | continuous | ||
/opzilla_v01/adsr |
52 | 0β127 | continuous | ||
/opzilla_v01/adsr |
53 | 0β127 | continuous | ||
/opzilla_v01/adsr |
54 | 0β127 | continuous | ||
/opzilla_v01/keyb_level |
31 | 0β127 | continuous | ||
/opzilla_v01/keyb_decay |
35 | 0β127 | continuous | ||
/opzilla_v01/vel_level |
41 | 0β127 | continuous | ||
/opzilla_v01/vel_attack |
46 | 0β127 | continuous | ||
/opzilla_v01/tone |
55 | 0β127 | continuous | ||
/opzilla_v01/level |
56 | 0β127 | continuous | ||
/opzilla_v01/a |
89 | 0β127 | continuous | ||
/opzilla_v01/d |
90 | 0β127 | continuous | ||
/opzilla_v01/s |
102 | 0β127 | continuous | ||
/opzilla_v01/r |
103 | 0β127 | continuous | ||
/opzilla_v01/shape |
57 | 0β127 | continuous | ||
/opzilla_v01/amp_envelope |
58 | 0β127 | continuous | ||
/opzilla_v01/coarse |
59 | -64β64 | continuous | ||
/opzilla_v01/fine |
60 | -50β50 | continuous | ||
/opzilla_v01/ratio_fixed |
61 | 0β127 | continuous | ||
/opzilla_v01/keyb_level |
62 | 0β127 | continuous | ||
/opzilla_v01/keyb_decay |
63 | 0β127 | continuous | ||
/opzilla_v01/vel_level |
85 | 0β127 | continuous | ||
/opzilla_v01/vel_attack |
86 | 0β127 | continuous | ||
/opzilla_v01/tone |
87 | 0β127 | continuous | ||
/opzilla_v01/level |
88 | 0β127 | continuous | ||
/opzilla_v01/shape |
104 | 0β127 | continuous | ||
/opzilla_v01/amp_envelope |
105 | 0β127 | continuous | ||
/opzilla_v01/coarse |
106 | -64β64 | continuous | ||
/opzilla_v01/fine |
107 | -50β50 | continuous | ||
/opzilla_v01/ratio_fixed |
108 | 0β127 | continuous | ||
/opzilla_v01/adsr |
109 | 0β127 | continuous | ||
/opzilla_v01/keyb_level |
110 | 0β127 | continuous | ||
/opzilla_v01/keyb_decay |
111 | 0β127 | continuous | ||
/opzilla_v01/vel_level |
112 | 0β127 | continuous | ||
/opzilla_v01/vel_attack |
113 | 0β127 | continuous | ||
/opzilla_v01/tone |
114 | 0β127 | continuous | ||
/opzilla_v01/level |
115 | 0β127 | continuous | ||
/opzilla_v01/a |
116 | 0β127 | continuous | ||
/opzilla_v01/d |
117 | 0β127 | continuous | ||
/opzilla_v01/s |
118 | 0β127 | continuous | ||
/opzilla_v01/r |
119 | 0β127 | continuous | ||
/opzilla_v01/a |
3 | 0β127 | continuous | ||
/opzilla_v01/d |
9 | 0β127 | continuous | ||
/opzilla_v01/s |
14 | 0β127 | continuous | ||
/opzilla_v01/r |
15 | 0β127 | continuous | ||
/opzilla_v01/shape |
20 | 0β127 | continuous | ||
/opzilla_v01/amp_envelope |
31 | 0β127 | continuous | ||
/opzilla_v01/coarse |
35 | -64β64 | continuous | ||
/opzilla_v01/fine |
41 | -50β50 | continuous | ||
/opzilla_v01/ratio_fixed |
46 | 0β127 | continuous | ||
/opzilla_v01/keyb_level |
47 | 0β127 | continuous | ||
/opzilla_v01/keyb_decay |
52 | 0β127 | continuous | ||
/opzilla_v01/vel_level |
53 | 0β127 | continuous | ||
/opzilla_v01/vel_attack |
54 | 0β127 | continuous | ||
/opzilla_v01/tone |
55 | 0β127 | continuous | ||
/opzilla_v01/level |
56 | 0β127 | continuous | ||
/opzilla_v01/shape |
57 | 0β127 | continuous | ||
/opzilla_v01/rate |
58 | 0β127 | continuous | ||
/opzilla_v01/fade_in |
59 | 0β127 | continuous | ||
/opzilla_v01/amount |
60 | 0β127 | continuous | ||
/opzilla_v01/pitch |
61 | 0β127 | continuous | ||
/opzilla_v01/fm |
62 | 0β127 | continuous | ||
/opzilla_v01/retrigger |
63 | 0β127 | continuous | ||
/opzilla_v01/sync |
85 | 0β127 | continuous | ||
/opzilla_v01/1_shot |
86 | 0β127 | continuous | ||
/opzilla_v01/shape |
87 | 0β127 | continuous | ||
/opzilla_v01/rate |
88 | 0β127 | continuous | ||
/opzilla_v01/fade_in |
89 | 0β127 | continuous | ||
/opzilla_v01/amount |
90 | 0β127 | continuous | ||
/opzilla_v01/op_1 |
102 | 0β127 | continuous | ||
/opzilla_v01/op_2 |
103 | 0β127 | continuous | ||
/opzilla_v01/retrigger |
106 | 0β127 | continuous | ||
/opzilla_v01/sync |
107 | 0β127 | continuous | ||
/opzilla_v01/1_shot |
108 | 0β127 | continuous | ||
/opzilla_v01/op_3 |
104 | 0β127 | continuous | ||
/opzilla_v01/op_4 |
105 | 0β127 | continuous | ||
/opzilla_v01/portamento |
109 | 0β127 | continuous | ||
/opzilla_v01/punch |
110 | 0β127 | continuous | ||
/opzilla_v01/volume |
111 | 0β127 | continuous | ||
/opzilla_v01/high_pass |
112 | 0β127 | continuous | ||
/opzilla_v01/algorithm |
118 | 0β127 | continuous | ||
/opzilla_v01/feedback |
119 | -100β100 | continuous | ||
/opzilla_v01/fm_amount |
120 | 0β127 | continuous | ||
/opzilla_v01/distortion |
3 | 0β127 | continuous | ||
/opzilla_v01/dry_wet |
9 | 0β127 | continuous | ||
/opzilla_v01/drive |
14 | 0β127 | continuous | ||
/opzilla_v01/lo_fi |
15 | 0β127 | continuous | ||
/opzilla_v01/tone |
20 | 0β127 | continuous | ||
/opzilla_v01/chorus |
31 | 0β127 | continuous | ||
/opzilla_v01/dry_wet |
35 | 0β127 | continuous | ||
/opzilla_v01/speed |
41 | 0β127 | continuous | ||
/opzilla_v01/intensity |
46 | 0β127 | continuous | ||
/opzilla_v01/depth |
47 | 0β127 | continuous | ||
/opzilla_v01/delay |
86 | 0β127 | continuous | ||
/opzilla_v01/dry_wet |
52 | 0β127 | continuous | ||
/opzilla_v01/feedback |
53 | 0β127 | continuous | ||
/opzilla_v01/left |
54 | 0β127 | continuous | ||
/opzilla_v01/right |
55 | 0β127 | continuous | ||
/opzilla_v01/reverb |
87 | 0β127 | continuous | ||
/opzilla_v01/dry_wet |
56 | 0β127 | continuous | ||
/opzilla_v01/pre_delay |
57 | 0β127 | continuous | ||
/opzilla_v01/damp |
58 | 0β127 | continuous | ||
/opzilla_v01/decay |
59 | 0β127 | continuous | ||
/opzilla_v01/level |
114 | 0β127 | continuous | ||
/opzilla_v01/velocity |
115 | 0β127 | continuous | ||
/opzilla_v01/pitch |
116 | 0β127 | continuous | ||
/opzilla_v01/keytrack |
117 | 0β127 | continuous | ||
/opzilla_v01/fm |
60 | 0β127 | continuous | ||
/opzilla_v01/lfo_1_speed |
61 | 0β127 | continuous | ||
/opzilla_v01/lfo_2_speed |
62 | 0β127 | continuous | ||
/opzilla_v01/lfo_1_amount |
63 | 0β127 | continuous | ||
/opzilla_v01/lfo_2_amount |
85 | 0β127 | continuous |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /opzilla_v01/note/on <note> <velocity>, /opzilla_v01/cc/<number> <value>, /opzilla_v01/pitchbend <0-16383>, /opzilla_v01/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¶
How many parameters of the Teenage Engineering OpZilla (v01) can be controlled over MIDI?
SynthHub's map of the Teenage Engineering OpZilla (v01) lists 117 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 Teenage Engineering OpZilla (v01)?
Yes: SynthHub's hosted MCP server knows the Teenage Engineering OpZilla (v01)'s MIDI map, and its browser relay lets the agent send it parameter changes or load a sound, each sound change confirmed by you.