VERSION 1 ########################################################## # __ __ __ __ __ # # .--------|__|--| |__| .-----.--.--|__|--| |-----. # # | | | _ | |__| _ | | | | _ | -__| # # |__|__|__|__|_____|__|__|___ |_____|__|_____|_____| # # |_____| # # # ########################################################## # Generated on 2026-05-05 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] 87 Amplifier envelope velocity amount 106 Amplifier envelope hold 104 Amplifier envelope delay 83 Amplifier envelope reset 113 Amplifier envelope multi trigger 80 Amplifier envelope keyboard amount 69 Arpeggiator latch 73 Arpeggiator on 109 Filter slope 86 Filter envelope velocity amount 79 Filter envelope keyboard tracking 112 Filter envelope multi trigger 82 Filter envelope reset 105 Filter envelope hold 103 Filter envelope delay 65 Glide on 85 Glide type 94 Glide legato 102 Glide destination oscillator 119 Keyboard transpose 123 All notes off 32 Bank select LSB 89 Keyboard octave 122 Local control 3 LFO 1 clock divider 76 LFO 1 range 93 LFO 1 keyboard reset 78 LFO 2 range 95 LFO 2 keyboard reset 8 LFO 2 clock divider 115 Sub oscillator level 118 Feedback external level 117 Noise level 116 Oscillator 2 level 114 Oscillator 1 level 91 Modulation 1 destination 71 Modulation 1 source 70 Modulation 1 pitch destination 72 Modulation 2 source 92 Modulation 2 destination 88 Modulation 2 pitch destination 74 Oscillator 1 octave 75 Oscillator 2 octave 77 Oscillator 2 hard sync 111 Oscillator 2 keyboard control 110 Duo mode 81 Oscillator keyboard reset 107 Pitch bend up amount 108 Pitch bend down amount 64 Hold pedal sustain 99 NRPN MSB 100 RPN LSB 101 RPN MSB 84 Portamento control 96 Data increment 97 Data decrement 98 NRPN LSB [/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 28:60 Amplifier envelope attack 29:61 Amplifier envelope decay 21:53 Filter resonance 22:54 Filter keyboard amount 27:59 Filter envelope amount 18:50 Filter multidrive 19:51 Filter cutoff 23:55 Filter envelope attack 24:56 Filter envelope decay 26:58 Filter envelope release 25:57 Filter envelope sustain 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 14:46 Oscillator 2 wave 12:44 Oscillator 2 frequency 13:45 Oscillator 2 beat frequency 1:33 Mod wheel 2:34 MIDI breath control 6:38 Data entry 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:25:14 Arpeggiator pattern 3:24:14 Arpeggiator invert 3:23:14 Arpeggiator back forth mode 3:21:14 Arpeggiator range 3:22:14 Arpeggiator back forth 3:20:14 Arpeggiator sync 3:19:14 Arpeggiator rate 3:27:14 Arpeggiator latch NRPN 3:26:14 Arpeggiator run 3:32:14 Arpeggiator step 1 reset 3:28:14 Arpeggiator gate length 3:29:14 Arpeggiator clock divider 3:116:14 Filter resonance 3:120:14 Filter keyboard amount 3:119:14 Filter envelope amount 3:118:14 Filter slope NRPN 3:117:14 Filter multidrive 3:115:14 Filter cutoff 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 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:126:14 Filter envelope hold 3:125:14 Filter envelope delay 3:124:14 Filter envelope release 3:123:14 Filter envelope sustain 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:44:14 LFO 1 clock source 3:39:14 LFO 1 rate 3:43:14 LFO 1 clock divider NRPN 3:40:14 LFO 1 range NRPN 3:41:14 LFO 1 sync 3:42:14 LFO 1 keyboard reset NRPN 3:46:14 LFO 1 keyboard tracking 3:64:14 LFO 2 rate 3:71:14 LFO 2 keyboard tracking 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:69:14 LFO 2 clock source 3:106:14 Oscillator 1 on 3:107:14 Sub oscillator on 3:108:14 Sub oscillator level 3:113:14 Feedback external level 3:114:14 Feedback external on 3:112:14 Noise level 3:111:14 Noise on 3:109:14 Oscillator 2 level 3:110:14 Oscillator 2 on 3:105:14 Oscillator 1 level 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: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:85:14 Modulation 2 programmable destination amount 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:81:14 Modulation 2 source NRPN 3:83:14 Modulation 2 destination NRPN 3:86:14 Modulation 2 pitch amount 3:87:14 Modulation 2 filter amount 3:82:14 Modulation 2 programmable source 3:88:14 Modulation 2 pitch destination NRPN 3:96:14 Oscillator 1 wave 3:95:14 Oscillator 1 octave NRPN 3:104:14 Oscillator 2 beat mode 3:99:14 Oscillator 2 octave NRPN 3:100:14 Oscillator 2 wave 3:103:14 Oscillator 2 frequency mode 3:97:14 Oscillator 2 hard sync NRPN 3:101:14 Oscillator 2 keyboard control NRPN 3:98:14 Oscillator keyboard reset NRPN 3:102:14 Duo mode 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]