This page is read from MIDI Instrument Definitions, a Python library used in the author's other projects, in which every number is traced to a document its maker published. Its source is on GitHub.
Elektron Digitakt II MIDI implementation
The MIDI implementation of the Elektron Digitakt II: what it answers to, and the 144 controls it offers, on firmware 1.17.
At a glance
- Firmware
- This page describes firmware 1.17.
- MIDI channel
- Any one of 1 to 16.
- Parts
- Track, 16 of them: each on a MIDI channel of its own, taking notes and controls, with 1 voice each.
FX and Mixer: on a MIDI channel of its own, taking controls. - Voices
- Each part's own, under Parts.
- Note range
- 0 to 84: C-1 to C6, counting middle C as C4.
- Velocity
- Sent and received.
- Aftertouch
- Answered, of a kind its documents do not say. It sends aftertouch too.
- Pitch bend
- Not recorded.
- Program change
- Received and sent, with 128 presets.
- MIDI clock
- Sent and received.
- Start and stop
- Sent and received.
- Control change
- 129 controls, in the tables below, 6 of them with a fine half on a second controller number.
- NRPN
- Supported. 136 of the controls below have one.
- System exclusive
- Supported.
Controls
In the order the definition gives them, by part and group. Under each control is the name a program calls it by, once pymidiinstrumentdefs.load("elektron/digitakt_ii") has loaded them.
Track
Track
| Control | CC | NRPN | Values |
|---|---|---|---|
Mutetrack_mute |
94 | 229 MSB 1, LSB 101 |
0-127 |
Track leveltrack_level |
95 | 228 MSB 1, LSB 100 |
0-127 |
Trig
| Control | CC | NRPN | Values |
|---|---|---|---|
Notetrig_note |
3 | 384 MSB 3, LSB 0 |
0-127 |
Velocitytrig_velocity |
4 | 385 MSB 3, LSB 1 |
0-127 |
Lengthtrig_length |
5 | 386 MSB 3, LSB 2 |
0-127 |
Filter Trigtrig_filter_trig |
13 | 0-127 | |
LFO Trigtrig_lfo_trig |
14 | 0-127 | |
Portamento Timetrig_portamento_time |
9 | 391 MSB 3, LSB 7 |
0-127 |
Portamento On/Offtrig_portamento_on_off |
65 | 392 MSB 3, LSB 8 |
0-127 |
Source
| Control | CC | NRPN | Values |
|---|---|---|---|
Tunesource_tune |
16 | 128 MSB 1, LSB 0 |
0-127 |
Play Modesource_play_mode |
17 | 129 MSB 1, LSB 1 |
0-127 |
Sample Bank Selectsource_sample_bank_select |
24 | 137 MSB 1, LSB 9 |
0-127 |
Sample Slot Selectsource_sample_slot_select |
19 | 136 MSB 1, LSB 8 |
0-127 |
Data entry knob E (machine dependent)source_data_entry_knob_e |
20 | 132 MSB 1, LSB 4 |
0-127 |
Data entry knob F (machine dependent)source_data_entry_knob_f |
21 | 133 MSB 1, LSB 5 |
0-127 |
Data entry knob G (machine dependent)source_data_entry_knob_g |
22 | 134 MSB 1, LSB 6 |
0-127 |
Sample Levelsource_sample_level |
23 | 135 MSB 1, LSB 7 |
0-127 |
Filter
| Control | CC | NRPN | Values |
|---|---|---|---|
Filter Frequencyfilter_frequency |
74 | 148 MSB 1, LSB 20 |
0-127 |
Data entry knob F (machine dependent)filter_data_entry_knob_f |
75 | 149 MSB 1, LSB 21 |
0-127 |
Data entry knob G (machine dependent)filter_data_entry_knob_g |
76 | 150 MSB 1, LSB 22 |
0-127 |
Env. Depthfilter_env_depth |
77 | 151 MSB 1, LSB 23 |
0-127 |
Attack Timefilter_attack_time |
70 | 144 MSB 1, LSB 16 |
0-127 |
Decay Timefilter_decay_time |
71 | 145 MSB 1, LSB 17 |
0-127 |
Sustain Levelfilter_sustain_level |
72 | 146 MSB 1, LSB 18 |
0-127 |
Release Timefilter_release_time |
73 | 147 MSB 1, LSB 19 |
0-127 |
Env. Delayfilter_env_delay |
91 | 151 MSB 1, LSB 23 |
0-127 |
Key Trackingfilter_key_tracking |
92 | 197 MSB 1, LSB 69 |
0-127 |
Basefilter_base |
26 | 179 MSB 1, LSB 51 |
0-127 |
Widthfilter_width |
27 | 180 MSB 1, LSB 52 |
0-127 |
Env. Resetfilter_env_reset |
111 | 196 MSB 1, LSB 68 |
0-127 |
Amp
| Control | CC | NRPN | Values |
|---|---|---|---|
Attack Timeamp_attack_time |
79 | 158 MSB 1, LSB 30 |
0-127 |
Hold Timeamp_hold_time |
80 | 159 MSB 1, LSB 31 |
0-127 |
Decay Timeamp_decay_time |
81 | 160 MSB 1, LSB 32 |
0-127 |
Sustain Levelamp_sustain_level |
82 | 161 MSB 1, LSB 33 |
0-127 |
Release Timeamp_release_time |
83 | 162 MSB 1, LSB 34 |
0-127 |
Env. Resetamp_env_reset |
88 | 169 MSB 1, LSB 41 |
0-127 |
Modeamp_mode |
87 | 168 MSB 1, LSB 40 |
0-127 |
Panamp_pan |
90 | 166 MSB 1, LSB 38 |
0-127 |
Volumeamp_volume |
89 | 167 MSB 1, LSB 39 |
0-127 |
Euclidean sequencer
| Control | CC | NRPN | Values |
|---|---|---|---|
Pulse Generator 1euclidean_pulse_generator_1 |
392 MSB 3, LSB 8 |
0-127 | |
Pulse Generator 2euclidean_pulse_generator_2 |
393 MSB 3, LSB 9 |
0-127 | |
Euclidean Mode On/Offeuclidean_mode_on_off |
398 MSB 3, LSB 14 |
0-127 | |
Rotation Generator 1euclidean_rotation_generator_1 |
395 MSB 3, LSB 11 |
0-127 | |
Rotation Generator 2euclidean_rotation_generator_2 |
396 MSB 3, LSB 12 |
0-127 | |
Track Rotationeuclidean_track_rotation |
397 MSB 3, LSB 13 |
0-127 | |
Boolean Operatoreuclidean_boolean_operator |
394 MSB 3, LSB 10 |
0-127 |
FX
| Control | CC | NRPN | Values |
|---|---|---|---|
Bit Reductiontrack_fx_bit_reduction |
54 | 0-127 | |
Overdrivetrack_fx_overdrive |
57 | 0-127 | |
Sample Rate Reductiontrack_fx_sample_rate_reduction |
55 | 0-127 | |
SRR Routingtrack_fx_srr_routing |
56 | 0-127 | |
Delay Sendtrack_fx_delay_send |
84 | 164 MSB 1, LSB 36 |
0-127 |
Reverb Sendtrack_fx_reverb_send |
85 | 165 MSB 1, LSB 37 |
0-127 |
Chorus Sendtrack_fx_chorus_send |
12 | 163 MSB 1, LSB 35 |
0-127 |
LFO 1
| Control | CC | NRPN | Values |
|---|---|---|---|
Speedlfo_1_speed |
102 fine 58 |
170 MSB 1, LSB 42 |
0-127 |
Multiplierlfo_1_multiplier |
103 | 171 MSB 1, LSB 43 |
0-127 |
Fade In/Outlfo_1_fade_in_out |
104 | 172 MSB 1, LSB 44 |
0-127 |
Destinationlfo_1_destination |
105 | 173 MSB 1, LSB 45 |
0-127 |
Waveformlfo_1_waveform |
106 | 174 MSB 1, LSB 46 |
0-127 |
Start Phaselfo_1_start_phase |
107 | 175 MSB 1, LSB 47 |
0-127 |
Trig Modelfo_1_trig_mode |
108 | 176 MSB 1, LSB 48 |
0-127 |
Depthlfo_1_depth |
109 fine 59 |
177 MSB 1, LSB 49 |
0-127 |
LFO 2
| Control | CC | NRPN | Values |
|---|---|---|---|
Speedlfo_2_speed |
112 fine 60 |
178 MSB 1, LSB 50 |
0-127 |
Multiplierlfo_2_multiplier |
113 | 179 MSB 1, LSB 51 |
0-127 |
Fade In/Outlfo_2_fade_in_out |
114 | 180 MSB 1, LSB 52 |
0-127 |
Destinationlfo_2_destination |
115 | 181 MSB 1, LSB 53 |
0-127 |
Waveformlfo_2_waveform |
116 | 182 MSB 1, LSB 54 |
0-127 |
Start Phaselfo_2_start_phase |
117 | 183 MSB 1, LSB 55 |
0-127 |
Trig Modelfo_2_trig_mode |
118 | 184 MSB 1, LSB 56 |
0-127 |
Depthlfo_2_depth |
119 fine 61 |
185 MSB 1, LSB 57 |
0-127 |
LFO 3
| Control | CC | NRPN | Values |
|---|---|---|---|
Speedlfo_3_speed |
78 fine 62 |
186 MSB 1, LSB 58 |
0-127 |
Multiplierlfo_3_multiplier |
52 | 187 MSB 1, LSB 59 |
0-127 |
Fade In/Outlfo_3_fade_in_out |
53 | 188 MSB 1, LSB 60 |
0-127 |
Destinationlfo_3_destination |
28 | 189 MSB 1, LSB 61 |
0-127 |
Waveformlfo_3_waveform |
29 | 190 MSB 1, LSB 62 |
0-127 |
Start Phaselfo_3_start_phase |
30 | 198 MSB 1, LSB 70 |
0-127 |
Trig Modelfo_3_trig_mode |
31 | 199 MSB 1, LSB 71 |
0-127 |
Depthlfo_3_depth |
86 fine 63 |
200 MSB 1, LSB 72 |
0-127 |
CC val
| Control | CC | NRPN | Values |
|---|---|---|---|
VAL1cc_val_val1 |
70 | 144 MSB 1, LSB 16 |
0-127 |
VAL2cc_val_val2 |
71 | 145 MSB 1, LSB 17 |
0-127 |
VAL3cc_val_val3 |
72 | 146 MSB 1, LSB 18 |
0-127 |
VAL4cc_val_val4 |
73 | 147 MSB 1, LSB 19 |
0-127 |
VAL5cc_val_val5 |
74 | 148 MSB 1, LSB 20 |
0-127 |
VAL6cc_val_val6 |
75 | 149 MSB 1, LSB 21 |
0-127 |
VAL7cc_val_val7 |
76 | 150 MSB 1, LSB 22 |
0-127 |
VAL8cc_val_val8 |
77 | 151 MSB 1, LSB 23 |
0-127 |
VAL9cc_val_val9 |
188 MSB 1, LSB 60 |
0-127 | |
VAL10cc_val_val10 |
189 MSB 1, LSB 61 |
0-127 | |
VAL11cc_val_val11 |
190 MSB 1, LSB 62 |
0-127 | |
VAL12cc_val_val12 |
191 MSB 1, LSB 63 |
0-127 | |
VAL13cc_val_val13 |
192 MSB 1, LSB 64 |
0-127 | |
VAL14cc_val_val14 |
193 MSB 1, LSB 65 |
0-127 | |
VAL15cc_val_val15 |
194 MSB 1, LSB 66 |
0-127 | |
VAL16cc_val_val16 |
195 MSB 1, LSB 67 |
0-127 |
Misc
| Control | CC | NRPN | Values |
|---|---|---|---|
Pattern Mutemisc_pattern_mute |
110 | 232 MSB 1, LSB 104 |
0-127 |
Modulation Wheelmodulation_wheel |
1 | 0-127 | |
Breath Controllerbreath_controller |
2 | 0-127 |
FX and mixer
Misc
| Control | CC | NRPN | Values |
|---|---|---|---|
Master Overdrivemisc_master_overdrive |
17 | 293 MSB 2, LSB 37 |
0-127 |
Delay
| Control | CC | NRPN | Values |
|---|---|---|---|
Delay Timedelay_time |
21 | 256 MSB 2, LSB 0 |
0-127 |
Pingpongdelay_pingpong |
22 | 257 MSB 2, LSB 1 |
0-127 |
Stereo Widthdelay_stereo_width |
23 | 258 MSB 2, LSB 2 |
0-127 |
Feedbackdelay_feedback |
24 | 259 MSB 2, LSB 3 |
0-127 |
Highpass Filterdelay_highpass_filter |
25 | 260 MSB 2, LSB 4 |
0-127 |
Lowpass Filterdelay_lowpass_filter |
26 | 261 MSB 2, LSB 5 |
0-127 |
Reverb Senddelay_reverb_send |
27 | 262 MSB 2, LSB 6 |
0-127 |
Mix Volumedelay_mix_volume |
28 | 263 MSB 2, LSB 7 |
0-127 |
Reverb
| Control | CC | NRPN | Values |
|---|---|---|---|
Predelayreverb_predelay |
29 | 264 MSB 2, LSB 8 |
0-127 |
Decay Timereverb_decay_time |
30 | 265 MSB 2, LSB 9 |
0-127 |
Shelving Freqreverb_shelving_freq |
31 | 266 MSB 2, LSB 10 |
0-127 |
Shelving Gainreverb_shelving_gain |
89 | 267 MSB 2, LSB 11 |
0-127 |
Highpass Filterreverb_highpass_filter |
90 | 268 MSB 2, LSB 12 |
0-127 |
Lowpass Filterreverb_lowpass_filter |
91 | 269 MSB 2, LSB 13 |
0-127 |
Mix Volumereverb_mix_volume |
92 | 271 MSB 2, LSB 15 |
0-127 |
Chorus
| Control | CC | NRPN | Values |
|---|---|---|---|
Depthchorus_depth |
16 | 297 MSB 2, LSB 41 |
0-127 |
Speedchorus_speed |
9 | 298 MSB 2, LSB 42 |
0-127 |
High Pass Filterchorus_high_pass_filter |
70 | 299 MSB 2, LSB 43 |
0-127 |
Widthchorus_width |
71 | 300 MSB 2, LSB 44 |
0-127 |
Delay Sendchorus_delay_send |
12 | 301 MSB 2, LSB 45 |
0-127 |
Reverb Sendchorus_reverb_send |
13 | 302 MSB 2, LSB 46 |
0-127 |
Mix Volumechorus_mix_volume |
14 | 303 MSB 2, LSB 47 |
0-127 |
Compressor
| Control | CC | NRPN | Values |
|---|---|---|---|
Thresholdcompressor_threshold |
111 | 272 MSB 2, LSB 16 |
0-127 |
Attack Timecompressor_attack_time |
112 | 273 MSB 2, LSB 17 |
0-127 |
Release Timecompressor_release_time |
113 | 274 MSB 2, LSB 18 |
0-127 |
Makeup Gaincompressor_makeup_gain |
114 | 275 MSB 2, LSB 19 |
0-127 |
Pattern Volumecompressor_pattern_volume |
119 | 280 MSB 2, LSB 24 |
0-127 |
Ratiocompressor_ratio |
115 | 276 MSB 2, LSB 20 |
0-127 |
Sidechain Sourcecompressor_sidechain_source |
116 | 277 MSB 2, LSB 21 |
0-127 |
Sidechain Filtercompressor_sidechain_filter |
117 | 278 MSB 2, LSB 22 |
0-127 |
Dry/Wet Mixcompressor_dry_wet_mix |
118 | 279 MSB 2, LSB 23 |
0-127 |
External in mixer
| Control | CC | NRPN | Values |
|---|---|---|---|
Dual Monoexternal_in_dual_mono |
82 | 296 MSB 2, LSB 40 |
0-127 |
Input L Levelexternal_in_input_l_level |
72 | 286 MSB 2, LSB 30 |
0-127 |
Input L Panexternal_in_input_l_pan |
74 | 288 MSB 2, LSB 32 |
0-127 |
Input R Levelexternal_in_input_r_level |
73 | 287 MSB 2, LSB 31 |
0-127 |
Input R Panexternal_in_input_r_pan |
75 | 289 MSB 2, LSB 33 |
0-127 |
Input L Delay Sendexternal_in_input_l_delay_send |
78 | 292 MSB 2, LSB 36 |
0-127 |
Input R Delay Sendexternal_in_input_r_delay_send |
79 | 291 MSB 2, LSB 35 |
0-127 |
Input L Reverb Sendexternal_in_input_l_reverb_send |
80 | 294 MSB 2, LSB 38 |
0-127 |
Input R Reverb Sendexternal_in_input_r_reverb_send |
81 | 295 MSB 2, LSB 39 |
0-127 |
Input L Chorus Sendexternal_in_input_l_chorus_send |
76 | 290 MSB 2, LSB 34 |
0-127 |
Input R Chorus Sendexternal_in_input_r_chorus_send |
77 | 291 MSB 2, LSB 35 |
0-127 |
Input L R Levelexternal_in_input_l_r_level |
72 | 286 MSB 2, LSB 30 |
0-127 |
Input L R Balanceexternal_in_input_l_r_balance |
74 | 288 MSB 2, LSB 32 |
0-127 |
Input L R Delay Sendexternal_in_input_l_r_delay_send |
78 | 292 MSB 2, LSB 36 |
0-127 |
Input L R Reverb Sendexternal_in_input_l_r_reverb_send |
80 | 294 MSB 2, LSB 38 |
0-127 |
Input L R Chorus Sendexternal_in_input_l_r_chorus_send |
76 | 290 MSB 2, LSB 34 |
0-127 |
Where these facts come from
Source documents
- Digitakt II User Manual, OS 1.17, dated 24 September 2026, its user manual, read on 2 October 2026 (the file read).
- Digitakt II OS Release Notes - Elektron, OS 1.17, its release notes, read on 2 October 2026 (the file read).
- Digitakt II - Elektron, its download page, read on 2 October 2026 (the file read).
How they were read
User Manual, 118 pages, the edition Elektron names OS 1.17: APPENDIX B: MIDI, printed pp. 109-113, which is the whole of the control map; and from the body, pp. 11, 15, 17, 25, 38, 39, 77, 78, 79, 91 and 103.
THE APPENDIX HOLDS 144 ROWS AND 142 OF THEM ARE BELOW. The two that are not are MISC's Sample Slot and Sample Bank, which SOURCE has already given as Sample Slot Select on CC 19 and Sample Bank Select on CC 24, with the same NRPNs: the same two controls printed twice under shorter names, not two more. Two further controls are here that the appendix never lists, and the body names both with their numbers - the modulation wheel on CC 1 and the breath controller on CC 2, each assignable to up to four of a track's parameters (p. 39). A reader with only the appendix would take 1 and 2 for unassigned.
SIXTEEN TRACKS ARE ONE PART AND NOT TWO. Any track is an audio track or a MIDI track according to the machine assigned to it, so the sixteen CC VAL controls and the audio-track parameters below are two maps reached on the same sixteen channels, never both at once. That is why CC 70 is here twice, as the filter's Attack Time and as VAL1, and why eight of the CC VAL rows repeat the filter's NRPNs exactly.
THE APPENDIX GIVES TWO PARAMETERS THE SAME NRPN FOUR TIMES OVER, within one track, and this file carries all four as printed. NRPN 1:23 is both the filter's Env. Depth and its Env. Delay; 1:51 is the filter's Base and LFO 2's Multiplier; 1:52 is the filter's Width and LFO 2's Fade In/Out; and 3:8 is the trig page's Portamento On/Off and the Euclidean sequencer's Pulse Generator 1. A fifth is in the external input mixer, where 2:35 is both Input R Delay Send and Input R Chorus Send while the rows around them run in regular pairs that would put the delay send at 2:37.
THEY ARE RECORDED RATHER THAN CORRECTED, and the reason is this maker's own history. Its release notes for this instrument say "Some of the CC and NPRN values were the same for several parameters" (release_notes) against OS 1.01 and "Several of the chorus and delay parameters shared the same NRPN values" (release_notes) against 1.02, so Elektron has twice shipped a release to stop two parameters sharing a number. A pair that still shares one at 1.17 is therefore a fact about the document and possibly about the instrument, and not obviously a misprint. The CC numbers do not collide anywhere.
FIVE MORE PAIRS SHARE A NUMBER ON PURPOSE. The external input mixer is printed twice over, once for two mono inputs and once for a stereo pair, and DUAL MONO on CC 82 is the switch between them: CC 72 is Input L Level or Input L R Level, CC 74 is Input L Pan or Input L R Balance, and so on for the three sends. Both namings are below because both are what the instrument does; which one a number means is a setting, and the format has no field for that.
THE MIDI TRACKS' OWN PARAMETERS ARE NOT CONTROLS AND ARE NOT BELOW. A MIDI track sends bank select on CC 0 and CC 32, program change, pitch bend, aftertouch, modulation and breath (p. 103); those are messages it emits on a channel of the player's choosing, not numbers it answers to. Aftertouch among them is why aftertouch_transmits is true.
AFTERTOUCH AND PITCH BEND ARE BOTH RECEIVED AND NEITHER IS CHARACTERISED. The AFTERTOUCH menu "[o]pens a menu where you can assign up to four PARAMETER page parameters to the MIDI aftertouch command" (p. 39), and PITCH BEND the same, where "[t]he pitch bend from incoming MIDI sent to the Digitakt II from external devices affects the assigned parameters" (p. 39). The manual never says whether the aftertouch is channel pressure or polyphonic key pressure, so voice.aftertouch says received and no more; and the bend reaches assigned parameters by a depth setting rather than a range in semitones, so there is no pitch_bend block to put a number in.
SIX CONTROLS ARE 14-BIT AND NOT ONE OF THE SIX PAIRS IS THE STANDARD ONE. "Note that the LFO 1/2/3 speed and depth are high-resolution parameters, with CC LSB values" (p. 110), and the appendix gives those LSBs as 58 to 63. The specification makes CC n+32 the LSB of CC n for n of 0 to 31, so 58 to 63 are the LSBs of 26 to 31 - and this instrument uses CC 26, 27, 28, 29, 30 and 31 as six independent parameters of its own, the filter's Base and Width and four of LFO 3's. The pairs below are the maker's, and a consumer that applies the specification's rule instead will move the wrong thing. They are the only six controls here with an lsb.
THE APPENDIX SKIPS ONE NRPN AND NOTHING SAYS WHY. The reverb runs 2:8 to 2:13 and then puts Mix Volume at 2:15, with nothing on 2:14. Read twice, the second time at 600 dpi.
NOT RECORDED:
- a pitch bend range in semitones;
- which kind of aftertouch;
- and any mode, because Elektron publishes no MIDI implementation chart for this instrument and the appendix is a parameter table rather than a chart.