VERSION 1 ########################################################## # __ __ __ __ __ # # .--------|__|--| |__| .-----.--.--|__|--| |-----. # # | | | _ | |__| _ | | | | _ | -__| # # |__|__|__|__|_____|__|__|___ |_____|__|_____|_____| # # |_____| # # # ########################################################## # Generated on 2026-04-08 by https://midi.guide , the open, # 'comprehensive' dataset of all MIDI CCs and NRPNs. # Contributions welcome! # Supports all alphanumeric ASCII, and ' ', '_', '-', '+' - can also be NULL TRACKNAME Subsequent 37 # Can be POLY, DRUM, MPE, or NULL TYPE NULL # Can be A, B, C, D, USBD, USBH, CVGx (x between 1&4), CVx, Gx, or NULL OUTPORT NULL # Can be x (between 1-16), or NULL -- this is ignored if output port is not MIDI OUTCHAN NULL # Can be NONE, ALLACTIVE, A, B, USBH, USBD, CVG, or NULL INPORT NULL # Can be x (between 1-16), ALL, or NULL. This definition will be ignored if INPORT is NONE, ALLACTIVE or CVG INCHAN NULL # This defines the default 'MAX RATE' for automation lanes. # Can be NULL, 192, 96, 64, 48, 32, 24, 16, 12, 8, 6, 4, 3, 2, 1 MAXRATE NULL # DRUMLANES # Syntax: ROW:TRIG:CHAN:NOTENUMBER NAME # ROW must be between 1 and 8 # TRIG can be between 0 and 127, or NULL # CHAN can be a number between 1 and 16, Gx, CVx, CVGx (x between 1 and 4), or NULL # NOTENUMBER can be between 0 and 127, or NULL # NAME supports all alphanumeric ASCII, and ' ', '_', '-', '+' - can also be NULL # Please note this section will be discarded for tracks which are not DRUM tracks [DRUMLANES] [/DRUMLANES] # PC # Syntax: NUMBER NAME # number must be either: # - A number (for simple PC) # - Three numbers, delimited by ':', which represent PC:MSB:LSB. You can put 'NULL' to not set the MSB/LSB. # PC must be between 1...128 # MSB/LSB must be between 0...127 [PC] [/PC] # CC # Syntax: CC_NUMBER NAME or CC_NUMBER:DEFAULT=xx NAME # DEFAULT_VALUE must be a valid number between 0 and 127 [CC] 83 Amplifier envelope reset 113 Amplifier envelope multi trigger 80 Amplifier envelope keyboard amount 87 Amplifier envelope velocity amount 106 Amplifier envelope hold 104 Amplifier envelope delay 69 Arpeggiator latch 73 Arpeggiator on 109 Filter slope 103 Filter envelope delay 105 Filter envelope hold 86 Filter envelope velocity amount 79 Filter envelope keyboard tracking 112 Filter envelope multi trigger 82 Filter envelope reset 65 Glide on 94 Glide legato 102 Glide destination oscillator 85 Glide type 89 Keyboard octave 122 Local control 123 All notes off 32 Bank select LSB 119 Keyboard transpose 3 LFO 1 clock divider 76 LFO 1 range 93 LFO 1 keyboard reset 8 LFO 2 clock divider 78 LFO 2 range 95 LFO 2 keyboard reset 116 Oscillator 2 level 115 Sub oscillator level 114 Oscillator 1 level 118 Feedback external level 117 Noise level 70 Modulation 1 pitch destination 71 Modulation 1 source 91 Modulation 1 destination 72 Modulation 2 source 92 Modulation 2 destination 88 Modulation 2 pitch destination 74 Oscillator 1 octave 77 Oscillator 2 hard sync 75 Oscillator 2 octave 111 Oscillator 2 keyboard control 81 Oscillator keyboard reset 110 Duo mode 107 Pitch bend up amount 64 Hold pedal sustain 108 Pitch bend down amount 100 RPN LSB 99 NRPN MSB 98 NRPN LSB 97 Data decrement 96 Data increment 84 Portamento control 101 RPN MSB [/CC] # CC Pair # Syntax: CC_MSB:CC_LSB NAME or CC_MSB:CC_LSB:DEFAULT=xx NAME # DEFAULT_VALUE must be a valid number between 0 and 16383 [CC_PAIR] 31:63 Amplifier envelope release 30:62 Amplifier envelope sustain 29:61 Amplifier envelope decay 28:60 Amplifier envelope attack 19:51 Filter cutoff 21:53 Filter resonance 18:50 Filter multidrive 27:59 Filter envelope amount 22:54 Filter keyboard amount 23:55 Filter envelope attack 24:56 Filter envelope decay 25:57 Filter envelope sustain 26:58 Filter envelope release 5:37 Glide time 7:39 Master volume 3:35 LFO 1 rate 8:40 LFO 2 rate 20:52 Modulation 1 programmable destination amount 11:43 Modulation 1 filter amount 4:36 Modulation 1 pitch amount 17:49 Modulation 2 programmable destination amount 15:47 Modulation 2 pitch amount 16:48 Modulation 2 filter amount 9:41 Oscillator 1 wave 13:45 Oscillator 2 beat frequency 12:44 Oscillator 2 frequency 14:46 Oscillator 2 wave 1:33 Mod wheel 6:38 Data entry 2:34 MIDI breath control 10:42 MIDI pan [/CC_PAIR] # NRPN # Syntax: "MSB:LSB:DEPTH NAME" or "MSB:LSB:DEPTH:DEFAULT=xx NAME" # Lsb & msb should be between 0 and 127 # Note: LSB can be over 127 ONLY if MSB is 0 or omitted # e.g. '0:1026:7 FOO', or ':2000:7 BAR' # the examples above would be equivalent to '8:2:7 FOO' and '15:80:7 BAR' respectively # DEPTH can be 7 or 14 # For NRPN: DEFAULT_VALUE must be a valid number, either between 0 and 127 (for 7 bit NRPNs) or between 0 and 16383 (for 14bit NRPNs) [NRPN] 3:28:14 Arpeggiator gate length 3:25:14 Arpeggiator pattern 3:24:14 Arpeggiator invert 3:22:14 Arpeggiator back forth 3:23:14 Arpeggiator back forth mode 3:26:14 Arpeggiator run 3:27:14 Arpeggiator latch NRPN 3:19:14 Arpeggiator rate 3:20:14 Arpeggiator sync 3:21:14 Arpeggiator range 3:32:14 Arpeggiator step 1 reset 3:29:14 Arpeggiator clock divider 3:118:14 Filter slope NRPN 3:115:14 Filter cutoff 3:116:14 Filter resonance 3:117:14 Filter multidrive 3:119:14 Filter envelope amount 3:120:14 Filter keyboard amount 4:4:14 Filter envelope loop 4:5:14 Filter envelope latch 4:6:14 Filter envelope clock divider 4:8:14 Filter envelope attack exponential 3:121:14 Filter envelope attack 3:122:14 Filter envelope decay 3:123:14 Filter envelope sustain 3:124:14 Filter envelope release 3:125:14 Filter envelope delay 3:126:14 Filter envelope hold 3:127:14 Filter envelope velocity amount 4:0:7 Filter envelope keyboard tracking 4:1:14 Filter envelope multi trigger NRPN 4:2:14 Filter envelope reset 4:3:14 Filter envelope sync 3:36:14 Glide gate 3:38:14 Glide on NRPN 3:33:14 Glide time 3:35:14 Glide type NRPN 3:37:14 Glide legato NRPN 3:34:14 Glide destination oscillator NRPN 3:41:14 LFO 1 sync 3:39:14 LFO 1 rate 3:43:14 LFO 1 clock divider NRPN 3:40:14 LFO 1 range NRPN 3:42:14 LFO 1 keyboard reset NRPN 3:44:14 LFO 1 clock source 3:46:14 LFO 1 keyboard tracking 3:69:14 LFO 2 clock source 3:71:14 LFO 2 keyboard tracking 3:64:14 LFO 2 rate 3:68:14 LFO 2 clock divider NRPN 3:65:14 LFO 2 range NRPN 3:66:14 LFO 2 sync 3:67:14 LFO 2 keyboard reset NRPN 3:109:14 Oscillator 2 level 3:110:14 Oscillator 2 on 3:108:14 Sub oscillator level 3:107:14 Sub oscillator on 3:105:14 Oscillator 1 level 3:106:14 Oscillator 1 on 3:113:14 Feedback external level 3:114:14 Feedback external on 3:112:14 Noise level 3:111:14 Noise on 3:57:14 Modulation 1 programmable source 3:60:14 Modulation 1 programmable destination amount 3:62:14 Modulation 1 filter amount 3:61:14 Modulation 1 pitch amount 3:63:14 Modulation 1 pitch destination NRPN 3:58:14 Modulation 1 destination NRPN 3:56:14 Modulation 1 source NRPN 3:54:14 Modulation 1 controller 4 amount 3:53:14 Modulation 1 pressure amount 3:52:14 Modulation 1 velocity amount 3:51:14 Modulation 1 mod wheel amount 3:59:14 Modulation 1 programmable destination 3:85:14 Modulation 2 programmable destination amount 3:81:14 Modulation 2 source NRPN 3:83:14 Modulation 2 destination NRPN 3:88:14 Modulation 2 pitch destination NRPN 3:86:14 Modulation 2 pitch amount 3:87:14 Modulation 2 filter amount 3:82:14 Modulation 2 programmable source 3:84:14 Modulation 2 programmable destination 3:76:14 Modulation 2 mod wheel amount 3:77:14 Modulation 2 velocity amount 3:78:14 Modulation 2 pressure amount 3:79:14 Modulation 2 controller 4 amount 3:95:14 Oscillator 1 octave NRPN 3:96:14 Oscillator 1 wave 3:97:14 Oscillator 2 hard sync NRPN 3:104:14 Oscillator 2 beat mode 3:103:14 Oscillator 2 frequency mode 3:100:14 Oscillator 2 wave 3:99:14 Oscillator 2 octave NRPN 3:101:14 Oscillator 2 keyboard control NRPN 3:102:14 Duo mode NRPN 3:98:14 Oscillator keyboard reset NRPN 3:18:14 Mod wheel [/NRPN] # ASSIGN # Syntax: POT_NUMBER TYPE:VALUE or POT_NUMBER TYPE:VALUE DEFAULT=DEFAULT_VALUE # POT_NUMBER must be between 1 and 8 # TYPE can be "CC", "PB" (pitchbend), "AT" (aftertouch), "CV", "NRPN", or "NULL" (this won't assign the pot). # Non explicitly-defined pots will be considered "NULL" # VALUE VALIDATION #### For CC: Value must be a valid number between 0 and 119 #### For PB and AT, any text after the TYPE will be ignored #### For CV, value must be between 1 and 4 #### For NRPN, value must be MSB:LSB:DEPTH, with both lsb & msb bebtween 0 and 127, and DEPTH being either 7 or 14 # DEFAULT VALUE #### For CC: DEFAULT_VALUE must be a valid number between 0 and 127 #### For PB: DEFAULT_VALUE must be a valid number between 0 and 16383 #### For NRPN: DEFAULT_VALUE must be a valid number, either between 0 and 127 (for 7 bit NRPNs) or between 0 and 16383 (for 14bit NRPNs) #### For CV: DEFAULT_VALUE must be either a valid number between 0 and 65535, or a voltage between -5V and 5V, e.g. "-4.25V" or "1.7V" #### Please note default value will be ignored for PB and AT messages. [ASSIGN] [/ASSIGN] # AUTOMATION # Syntax: TYPE:VALUE # TYPE can be "CC", "PB" (pitchbend), "AT" (aftertouch), "CV", or "NRPN" # VALUE VALIDATION #### For CC: Value must be a valid number between 0 and 119 #### For PB and AT, any text after the TYPE will be ignored #### For CV, value must be between 1 and 4 #### For NRPN, value must be MSB:LSB:DEPTH, with both lsb & msb bebtween 0 and 127, and DEPTH being either 7 or 14 # NOTE: You are limited to 64 automation lanes [AUTOMATION] [/AUTOMATION] # This section will be readable from Hapax. [COMMENT] [/COMMENT]