Beetlecrab.audio Tempera: MIDI CC, NRPN and OSC map¶
The Beetlecrab.audio Tempera as named OSC addresses — 117 CC — ready to use from Claude (MCP), SuperCollider, Sonic Pi, TouchDesigner or any OSC app via osc-bridge.
| Device | Beetlecrab.audio Tempera |
|---|---|
| Vendor | Beetlecrab.audio |
| OSC prefix | /tempera_busa_2025 |
| Source | 🎛️ Derived from an Electra One community preset |
| Firmware | unknown |
| Revision | Electra community preset (firmware unknown) |
| Upstream | electra-preset |
| Driver file | devices/beetlecrab-audio/tempera.electra-community.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.
Other variants of this device: tempera.pencilresearch.fw-unknown, tempera.vendor.fw-2.2.
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/beetlecrab-audio/tempera.electra-community.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 tempera_busa_2025: ask “what can the Beetlecrab.audio Tempera 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 |
|---|---|---|---|---|---|
/tempera_busa_2025/fader |
40 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
41 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
42 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
43 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
44 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
45 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
46 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
47 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
48 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
49 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
50 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
51 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
52 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
53 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
54 | 0–127 | continuous | ||
/tempera_busa_2025/attack |
13 | 0–127 | continuous | ||
/tempera_busa_2025/decay |
14 | 0–127 | continuous | ||
/tempera_busa_2025/sustain |
15 | 0–127 | continuous | ||
/tempera_busa_2025/release |
16 | 0–127 | continuous | ||
/tempera_busa_2025/size |
17 | 0–127 | continuous | ||
/tempera_busa_2025/color |
18 | 0–127 | continuous | ||
/tempera_busa_2025/mix |
19 | 0–127 | continuous | ||
/tempera_busa_2025/cutoff |
24 | 0–127 | continuous | ||
/tempera_busa_2025/resonance |
25 | 0–127 | continuous | ||
/tempera_busa_2025/feedback |
20 | 0–127 | continuous | ||
/tempera_busa_2025/time |
21 | 0–127 | continuous | ||
/tempera_busa_2025/color |
22 | 0–127 | continuous | ||
/tempera_busa_2025/mix |
23 | 0–127 | continuous | ||
/tempera_busa_2025/depth |
26 | 0–127 | continuous | ||
/tempera_busa_2025/speed |
27 | 0–127 | continuous | ||
/tempera_busa_2025/flange |
28 | 0–127 | continuous | ||
/tempera_busa_2025/mix |
29 | 0–127 | continuous | ||
/tempera_busa_2025/track_1 |
30 | 0–127 | continuous | ||
/tempera_busa_2025/track_2 |
31 | 0–127 | continuous | ||
/tempera_busa_2025/track_3 |
33 | 0–127 | continuous | ||
/tempera_busa_2025/track_4 |
34 | 0–127 | continuous | ||
/tempera_busa_2025/track_5 |
35 | 0–127 | continuous | ||
/tempera_busa_2025/track_6 |
36 | 0–127 | continuous | ||
/tempera_busa_2025/track_7 |
37 | 0–127 | continuous | ||
/tempera_busa_2025/track_8 |
39 | 0–127 | continuous | ||
/tempera_busa_2025/mod1amnt |
110 | 0–127 | continuous | ||
/tempera_busa_2025/mod2amnt |
111 | 0–127 | continuous | ||
/tempera_busa_2025/mod3amnt |
112 | 0–127 | continuous | ||
/tempera_busa_2025/mod4amnt |
113 | 0–127 | continuous | ||
/tempera_busa_2025/mod5amnt |
114 | 0–127 | continuous | ||
/tempera_busa_2025/mod6amnt |
115 | 0–127 | continuous | ||
/tempera_busa_2025/mod7amnt |
116 | 0–127 | continuous | ||
/tempera_busa_2025/mod8amnt |
117 | 0–127 | continuous | ||
/tempera_busa_2025/mod9amnt |
118 | 0–127 | continuous | ||
/tempera_busa_2025/mod10amnt |
119 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
59 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
60 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
61 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
62 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
63 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
64 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
65 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
66 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
67 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
68 | 0–127 | continuous | ||
/tempera_busa_2025/volume |
40 | 0–127 | continuous | ||
/tempera_busa_2025/grainsize |
41 | 0–127 | continuous | ||
/tempera_busa_2025/grainsizetime |
42 | 0–127 | continuous | ||
/tempera_busa_2025/graindensity |
43 | 0–127 | continuous | ||
/tempera_busa_2025/grainshape |
44 | 0–127 | continuous | ||
/tempera_busa_2025/fader |
46 | 0–127 | continuous | ||
/tempera_busa_2025/tunespread |
47 | 0–127 | continuous | ||
/tempera_busa_2025/octave |
48 | 0–127 | continuous | ||
/tempera_busa_2025/relativex |
49 | 0–127 | continuous | ||
/tempera_busa_2025/relativey |
50 | 0–127 | continuous | ||
/tempera_busa_2025/sprayx |
51 | 0–127 | continuous | ||
/tempera_busa_2025/sprayy |
52 | 0–127 | continuous | ||
/tempera_busa_2025/tonefiltwid |
53 | 0–127 | continuous | ||
/tempera_busa_2025/tonefiltcent |
54 | 0–127 | continuous | ||
/tempera_busa_2025/effectssend |
55 | 0–127 | continuous | ||
/tempera_busa_2025/grainsize |
57 | 0–127 | continuous | ||
/tempera_busa_2025/grainsizetime |
58 | 0–127 | continuous | ||
/tempera_busa_2025/graindensity |
59 | 0–127 | continuous | ||
/tempera_busa_2025/grainshape |
60 | 0–127 | continuous | ||
/tempera_busa_2025/grainpan |
62 | 0–127 | continuous | ||
/tempera_busa_2025/tunespread |
63 | 0–127 | continuous | ||
/tempera_busa_2025/octave |
65 | 0–127 | continuous | ||
/tempera_busa_2025/relativex |
67 | 0–127 | continuous | ||
/tempera_busa_2025/relativey |
68 | 0–127 | continuous | ||
/tempera_busa_2025/sprayx |
69 | 0–127 | continuous | ||
/tempera_busa_2025/sprayy |
70 | 0–127 | continuous | ||
/tempera_busa_2025/tonefiltwid |
72 | 0–127 | continuous | ||
/tempera_busa_2025/tonefiltcent |
73 | 0–127 | continuous | ||
/tempera_busa_2025/effectssend |
75 | 0–127 | continuous | ||
/tempera_busa_2025/grainsize |
77 | 0–127 | continuous | ||
/tempera_busa_2025/grainsizetime |
78 | 0–127 | continuous | ||
/tempera_busa_2025/graindensity |
79 | 0–127 | continuous | ||
/tempera_busa_2025/grainshape |
80 | 0–127 | continuous | ||
/tempera_busa_2025/grainpan |
82 | 0–127 | continuous | ||
/tempera_busa_2025/tunespread |
83 | 0–127 | continuous | ||
/tempera_busa_2025/octave |
84 | 0–127 | continuous | ||
/tempera_busa_2025/relativex |
85 | 0–127 | continuous | ||
/tempera_busa_2025/relativey |
86 | 0–127 | continuous | ||
/tempera_busa_2025/sprayx |
87 | 0–127 | continuous | ||
/tempera_busa_2025/sprayy |
88 | 0–127 | continuous | ||
/tempera_busa_2025/tonefiltwid |
89 | 0–127 | continuous | ||
/tempera_busa_2025/tonefiltcent |
90 | 0–127 | continuous | ||
/tempera_busa_2025/effectssend |
91 | 0–127 | continuous | ||
/tempera_busa_2025/grainsize |
93 | 0–127 | continuous | ||
/tempera_busa_2025/grainsizetime |
94 | 0–127 | continuous | ||
/tempera_busa_2025/graindensity |
95 | 0–127 | continuous | ||
/tempera_busa_2025/grainshape |
96 | 0–127 | continuous | ||
/tempera_busa_2025/grainpan |
98 | 0–127 | continuous | ||
/tempera_busa_2025/tunespread |
99 | 0–127 | continuous | ||
/tempera_busa_2025/octave |
102 | 0–127 | continuous | ||
/tempera_busa_2025/relativex |
103 | 0–127 | continuous | ||
/tempera_busa_2025/relativey |
104 | 0–127 | continuous | ||
/tempera_busa_2025/sprayx |
105 | 0–127 | continuous | ||
/tempera_busa_2025/sprayy |
106 | 0–127 | continuous | ||
/tempera_busa_2025/tonefiltwid |
107 | 0–127 | continuous | ||
/tempera_busa_2025/tonefiltcent |
108 | 0–127 | continuous | ||
/tempera_busa_2025/effectssend |
109 | 0–127 | continuous |
Performance MIDI¶
Notes, pitch bend and any CC are also available: /tempera_busa_2025/note/on <note> <velocity>, /tempera_busa_2025/cc/<number> <value>, /tempera_busa_2025/pitchbend <0-16383>, /tempera_busa_2025/program_change <n>.
Limitations¶
Community Electra One preset by Gabriel Alcantara. Firmware version is not recorded in the preset; the mapping may diverge from the current vendor-doc (firmware 2.2) — in particular, CC ranges and emitter numbering could match an older firmware. For authoritative mapping prefer devices/beetlecrab-audio/tempera.vendor.fw-2.2.json. Untested on hardware in this repo.