Skip to content

MIDI Association Generic MIDI 1.0 MIDI CC chart, NRPN and OSC map

The MIDI Association Generic MIDI 1.0 MIDI implementation: 55 CC, 47 drum sounds, each named, for Claude (MCP), SuperCollider or any OSC app.

Device MIDI Association Generic MIDI 1.0
Vendor MIDI Association
OSC prefix /generic_midi_1_0
Source πŸ“¦ Derived from MIDI Guide (community CC/NRPN data)
Firmware unknown
Revision per pencilresearch canonical CSV
Upstream pencilresearch
Data licence CC-BY-SA-4.0 β€” MIDI Guide (https://midi.guide) by Pencil Research and contributors
Driver file devices/midi-association/generic_midi_1_0.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/midi-association/generic_midi_1_0.json --out-port <N> --in-port <M>

Then send OSC to 127.0.0.1:7777, for example:

osc-bridge osc-send /generic_midi_1_0/control_change_messages/bank_select 8191

From Claude or any MCP client, the osc-bridge mcp server exposes this driver as generic_midi_1_0: ask β€œwhat can the MIDI Association Generic MIDI 1.0 do?” and it reads this map with list_routes. See the MCP guide.

MIDI CC and NRPN parameters (55)

OSC address CC NRPN (MSB/LSB) Range Nature Section
/generic_midi_1_0/control_change_messages/bank_select 0 / 32 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/modulation_wheel 1 / 33 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/breath_controller 2 / 34 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/foot_controller 4 / 36 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/portamento_time 5 / 37 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/data_entry 6 / 38 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/channel_volume 7 / 39 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/balance 8 / 40 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/pan 10 / 42 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/expression_controller 11 / 43 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/effect_control_1 12 / 44 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/effect_control_2 13 / 45 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/general_purpose_controller_1 16 / 48 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/general_purpose_controller_2 17 / 49 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/general_purpose_controller_3 18 / 50 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/general_purpose_controller_4 19 / 51 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/damper_pedal 64 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/portamento_switch 65 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sostenuto_switch 66 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/soft_pedal_switch 67 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/legato_switch 68 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/hold_2 69 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_1 70 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_2 71 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_3 72 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_4 73 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_5 74 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_6 75 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_7 76 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_8 77 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_9 78 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/sound_controller_10 79 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/general_purpose_controller_5 80 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/general_purpose_controller_6 81 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/general_purpose_controller_7 82 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/general_purpose_controller_8 83 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/portamento_control 84 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/high_resolution_velocity_prefix 88 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/effects_1_depth 91 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/effects_2_depth 92 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/effects_3_depth 93 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/effects_4_depth 94 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/effects_5_depth 95 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/data_increment 96 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/data_decrement 97 0–127 continuous Control Change messages
/generic_midi_1_0/control_change_messages/non_registered_parameter_number 99 / 98 0–16383 continuous Control Change messages
/generic_midi_1_0/control_change_messages/registered_parameter_number 101 / 100 0–16383 continuous Control Change messages
/generic_midi_1_0/channel_mode_messages/all_sound_off 120 0–0 continuous Channel Mode messages
/generic_midi_1_0/channel_mode_messages/reset_all_controllers 121 0–0 continuous Channel Mode messages
/generic_midi_1_0/channel_mode_messages/local_control 122 0–127 continuous Channel Mode messages
/generic_midi_1_0/channel_mode_messages/all_notes_off 123 0–0 continuous Channel Mode messages
/generic_midi_1_0/channel_mode_messages/omni_mode_off 124 0–0 continuous Channel Mode messages
/generic_midi_1_0/channel_mode_messages/omni_mode_on 125 0–0 continuous Channel Mode messages
/generic_midi_1_0/channel_mode_messages/mono_mode_on 126 0–127 continuous Channel Mode messages
/generic_midi_1_0/channel_mode_messages/poly_mode_on 127 0–0 continuous Channel Mode messages

Drum sounds (47)

Send <address> [velocity] [note] [channel] to fire the sound (Note On).

OSC address Sound Note(s) Channel Velocity
/generic_midi_1_0/drum/acoustic_bass_drum Acoustic bass drum 35 10
/generic_midi_1_0/drum/bass_drum_1 Bass drum 1 36 10
/generic_midi_1_0/drum/side_stick Side stick 37 10
/generic_midi_1_0/drum/acoustic_snare Acoustic snare 38 10
/generic_midi_1_0/drum/hand_clap Hand clap 39 10
/generic_midi_1_0/drum/electric_snare Electric snare 40 10
/generic_midi_1_0/drum/low_floor_tom Low floor tom 41 10
/generic_midi_1_0/drum/closed_hi_hat Closed hi-hat 42 10
/generic_midi_1_0/drum/high_floor_tom High floor tom 43 10
/generic_midi_1_0/drum/pedal_hi_hat Pedal hi-hat 44 10
/generic_midi_1_0/drum/low_tom Low tom 45 10
/generic_midi_1_0/drum/open_hi_hat Open hi-hat 46 10
/generic_midi_1_0/drum/low_mid_tom Low-mid tom 47 10
/generic_midi_1_0/drum/hi_mid_tom Hi-mid tom 48 10
/generic_midi_1_0/drum/crash_cymbal_1 Crash cymbal 1 49 10
/generic_midi_1_0/drum/high_tom High tom 50 10
/generic_midi_1_0/drum/ride_cymbal_1 Ride cymbal 1 51 10
/generic_midi_1_0/drum/chinese_cymbal Chinese cymbal 52 10
/generic_midi_1_0/drum/ride_bell Ride bell 53 10
/generic_midi_1_0/drum/tambourine Tambourine 54 10
/generic_midi_1_0/drum/splash_cymbal Splash cymbal 55 10
/generic_midi_1_0/drum/cowbell Cowbell 56 10
/generic_midi_1_0/drum/crash_cymbal_2 Crash cymbal 2 57 10
/generic_midi_1_0/drum/vibraslap Vibraslap 58 10
/generic_midi_1_0/drum/ride_cymbal_2 Ride cymbal 2 59 10
/generic_midi_1_0/drum/hi_bongo Hi bongo 60 10
/generic_midi_1_0/drum/low_bongo Low bongo 61 10
/generic_midi_1_0/drum/mute_hi_conga Mute hi conga 62 10
/generic_midi_1_0/drum/open_hi_conga Open hi conga 63 10
/generic_midi_1_0/drum/low_conga Low conga 64 10
/generic_midi_1_0/drum/high_timbale High timbale 65 10
/generic_midi_1_0/drum/low_timbale Low timbale 66 10
/generic_midi_1_0/drum/high_agogo High agogo 67 10
/generic_midi_1_0/drum/low_agogo Low agogo 68 10
/generic_midi_1_0/drum/cabasa Cabasa 69 10
/generic_midi_1_0/drum/maracas Maracas 70 10
/generic_midi_1_0/drum/short_whistle Short whistle 71 10
/generic_midi_1_0/drum/long_whistle Long whistle 72 10
/generic_midi_1_0/drum/short_guiro Short guiro 73 10
/generic_midi_1_0/drum/long_guiro Long guiro 74 10
/generic_midi_1_0/drum/claves Claves 75 10
/generic_midi_1_0/drum/hi_wood_block Hi wood block 76 10
/generic_midi_1_0/drum/low_wood_block Low wood block 77 10
/generic_midi_1_0/drum/mute_cuica Mute cuica 78 10
/generic_midi_1_0/drum/open_cuica Open cuica 79 10
/generic_midi_1_0/drum/mute_triangle Mute triangle 80 10
/generic_midi_1_0/drum/open_triangle Open triangle 81 10

Performance MIDI

Notes, pitch bend and any CC are also available: /generic_midi_1_0/note/on <note> <velocity>, /generic_midi_1_0/cc/<number> <value>, /generic_midi_1_0/pitchbend <0-16383>, /generic_midi_1_0/program_change <n>.

Limitations

CC/NRPN only. SysEx (preset management, display control, bulk dump/load, vendor-proprietary opcodes) is NOT covered by pencilresearch. To extend this device with SysEx, sniff the vendor editor, add `sysex.header/footer` + `commands` blocks, and use `update_device.md` PR template.

Frequently asked questions

How many parameters of the MIDI Association Generic MIDI 1.0 can be controlled over MIDI?

SynthHub's map of the MIDI Association Generic MIDI 1.0 lists 55 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 MIDI Association Generic MIDI 1.0?

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