Subsystem Search

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
Mute
track_mute
94 229
MSB 1, LSB 101
0-127
Track level
track_level
95 228
MSB 1, LSB 100
0-127

Trig

Control CC NRPN Values
Note
trig_note
3 384
MSB 3, LSB 0
0-127
Velocity
trig_velocity
4 385
MSB 3, LSB 1
0-127
Length
trig_length
5 386
MSB 3, LSB 2
0-127
Filter Trig
trig_filter_trig
13 0-127
LFO Trig
trig_lfo_trig
14 0-127
Portamento Time
trig_portamento_time
9 391
MSB 3, LSB 7
0-127
Portamento On/Off
trig_portamento_on_off
65 392
MSB 3, LSB 8
0-127

Source

Control CC NRPN Values
Tune
source_tune
16 128
MSB 1, LSB 0
0-127
Play Mode
source_play_mode
17 129
MSB 1, LSB 1
0-127
Sample Bank Select
source_sample_bank_select
24 137
MSB 1, LSB 9
0-127
Sample Slot Select
source_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 Level
source_sample_level
23 135
MSB 1, LSB 7
0-127

Filter

Control CC NRPN Values
Filter Frequency
filter_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. Depth
filter_env_depth
77 151
MSB 1, LSB 23
0-127
Attack Time
filter_attack_time
70 144
MSB 1, LSB 16
0-127
Decay Time
filter_decay_time
71 145
MSB 1, LSB 17
0-127
Sustain Level
filter_sustain_level
72 146
MSB 1, LSB 18
0-127
Release Time
filter_release_time
73 147
MSB 1, LSB 19
0-127
Env. Delay
filter_env_delay
91 151
MSB 1, LSB 23
0-127
Key Tracking
filter_key_tracking
92 197
MSB 1, LSB 69
0-127
Base
filter_base
26 179
MSB 1, LSB 51
0-127
Width
filter_width
27 180
MSB 1, LSB 52
0-127
Env. Reset
filter_env_reset
111 196
MSB 1, LSB 68
0-127

Amp

Control CC NRPN Values
Attack Time
amp_attack_time
79 158
MSB 1, LSB 30
0-127
Hold Time
amp_hold_time
80 159
MSB 1, LSB 31
0-127
Decay Time
amp_decay_time
81 160
MSB 1, LSB 32
0-127
Sustain Level
amp_sustain_level
82 161
MSB 1, LSB 33
0-127
Release Time
amp_release_time
83 162
MSB 1, LSB 34
0-127
Env. Reset
amp_env_reset
88 169
MSB 1, LSB 41
0-127
Mode
amp_mode
87 168
MSB 1, LSB 40
0-127
Pan
amp_pan
90 166
MSB 1, LSB 38
0-127
Volume
amp_volume
89 167
MSB 1, LSB 39
0-127

Euclidean sequencer

Control CC NRPN Values
Pulse Generator 1
euclidean_pulse_generator_1
392
MSB 3, LSB 8
0-127
Pulse Generator 2
euclidean_pulse_generator_2
393
MSB 3, LSB 9
0-127
Euclidean Mode On/Off
euclidean_mode_on_off
398
MSB 3, LSB 14
0-127
Rotation Generator 1
euclidean_rotation_generator_1
395
MSB 3, LSB 11
0-127
Rotation Generator 2
euclidean_rotation_generator_2
396
MSB 3, LSB 12
0-127
Track Rotation
euclidean_track_rotation
397
MSB 3, LSB 13
0-127
Boolean Operator
euclidean_boolean_operator
394
MSB 3, LSB 10
0-127

FX

Control CC NRPN Values
Bit Reduction
track_fx_bit_reduction
54 0-127
Overdrive
track_fx_overdrive
57 0-127
Sample Rate Reduction
track_fx_sample_rate_reduction
55 0-127
SRR Routing
track_fx_srr_routing
56 0-127
Delay Send
track_fx_delay_send
84 164
MSB 1, LSB 36
0-127
Reverb Send
track_fx_reverb_send
85 165
MSB 1, LSB 37
0-127
Chorus Send
track_fx_chorus_send
12 163
MSB 1, LSB 35
0-127

LFO 1

Control CC NRPN Values
Speed
lfo_1_speed
102
fine 58
170
MSB 1, LSB 42
0-127
Multiplier
lfo_1_multiplier
103 171
MSB 1, LSB 43
0-127
Fade In/Out
lfo_1_fade_in_out
104 172
MSB 1, LSB 44
0-127
Destination
lfo_1_destination
105 173
MSB 1, LSB 45
0-127
Waveform
lfo_1_waveform
106 174
MSB 1, LSB 46
0-127
Start Phase
lfo_1_start_phase
107 175
MSB 1, LSB 47
0-127
Trig Mode
lfo_1_trig_mode
108 176
MSB 1, LSB 48
0-127
Depth
lfo_1_depth
109
fine 59
177
MSB 1, LSB 49
0-127

LFO 2

Control CC NRPN Values
Speed
lfo_2_speed
112
fine 60
178
MSB 1, LSB 50
0-127
Multiplier
lfo_2_multiplier
113 179
MSB 1, LSB 51
0-127
Fade In/Out
lfo_2_fade_in_out
114 180
MSB 1, LSB 52
0-127
Destination
lfo_2_destination
115 181
MSB 1, LSB 53
0-127
Waveform
lfo_2_waveform
116 182
MSB 1, LSB 54
0-127
Start Phase
lfo_2_start_phase
117 183
MSB 1, LSB 55
0-127
Trig Mode
lfo_2_trig_mode
118 184
MSB 1, LSB 56
0-127
Depth
lfo_2_depth
119
fine 61
185
MSB 1, LSB 57
0-127

LFO 3

Control CC NRPN Values
Speed
lfo_3_speed
78
fine 62
186
MSB 1, LSB 58
0-127
Multiplier
lfo_3_multiplier
52 187
MSB 1, LSB 59
0-127
Fade In/Out
lfo_3_fade_in_out
53 188
MSB 1, LSB 60
0-127
Destination
lfo_3_destination
28 189
MSB 1, LSB 61
0-127
Waveform
lfo_3_waveform
29 190
MSB 1, LSB 62
0-127
Start Phase
lfo_3_start_phase
30 198
MSB 1, LSB 70
0-127
Trig Mode
lfo_3_trig_mode
31 199
MSB 1, LSB 71
0-127
Depth
lfo_3_depth
86
fine 63
200
MSB 1, LSB 72
0-127

CC val

Control CC NRPN Values
VAL1
cc_val_val1
70 144
MSB 1, LSB 16
0-127
VAL2
cc_val_val2
71 145
MSB 1, LSB 17
0-127
VAL3
cc_val_val3
72 146
MSB 1, LSB 18
0-127
VAL4
cc_val_val4
73 147
MSB 1, LSB 19
0-127
VAL5
cc_val_val5
74 148
MSB 1, LSB 20
0-127
VAL6
cc_val_val6
75 149
MSB 1, LSB 21
0-127
VAL7
cc_val_val7
76 150
MSB 1, LSB 22
0-127
VAL8
cc_val_val8
77 151
MSB 1, LSB 23
0-127
VAL9
cc_val_val9
188
MSB 1, LSB 60
0-127
VAL10
cc_val_val10
189
MSB 1, LSB 61
0-127
VAL11
cc_val_val11
190
MSB 1, LSB 62
0-127
VAL12
cc_val_val12
191
MSB 1, LSB 63
0-127
VAL13
cc_val_val13
192
MSB 1, LSB 64
0-127
VAL14
cc_val_val14
193
MSB 1, LSB 65
0-127
VAL15
cc_val_val15
194
MSB 1, LSB 66
0-127
VAL16
cc_val_val16
195
MSB 1, LSB 67
0-127

Misc

Control CC NRPN Values
Pattern Mute
misc_pattern_mute
110 232
MSB 1, LSB 104
0-127
Modulation Wheel
modulation_wheel
1 0-127
Breath Controller
breath_controller
2 0-127

FX and mixer

Misc

Control CC NRPN Values
Master Overdrive
misc_master_overdrive
17 293
MSB 2, LSB 37
0-127

Delay

Control CC NRPN Values
Delay Time
delay_time
21 256
MSB 2, LSB 0
0-127
Pingpong
delay_pingpong
22 257
MSB 2, LSB 1
0-127
Stereo Width
delay_stereo_width
23 258
MSB 2, LSB 2
0-127
Feedback
delay_feedback
24 259
MSB 2, LSB 3
0-127
Highpass Filter
delay_highpass_filter
25 260
MSB 2, LSB 4
0-127
Lowpass Filter
delay_lowpass_filter
26 261
MSB 2, LSB 5
0-127
Reverb Send
delay_reverb_send
27 262
MSB 2, LSB 6
0-127
Mix Volume
delay_mix_volume
28 263
MSB 2, LSB 7
0-127

Reverb

Control CC NRPN Values
Predelay
reverb_predelay
29 264
MSB 2, LSB 8
0-127
Decay Time
reverb_decay_time
30 265
MSB 2, LSB 9
0-127
Shelving Freq
reverb_shelving_freq
31 266
MSB 2, LSB 10
0-127
Shelving Gain
reverb_shelving_gain
89 267
MSB 2, LSB 11
0-127
Highpass Filter
reverb_highpass_filter
90 268
MSB 2, LSB 12
0-127
Lowpass Filter
reverb_lowpass_filter
91 269
MSB 2, LSB 13
0-127
Mix Volume
reverb_mix_volume
92 271
MSB 2, LSB 15
0-127

Chorus

Control CC NRPN Values
Depth
chorus_depth
16 297
MSB 2, LSB 41
0-127
Speed
chorus_speed
9 298
MSB 2, LSB 42
0-127
High Pass Filter
chorus_high_pass_filter
70 299
MSB 2, LSB 43
0-127
Width
chorus_width
71 300
MSB 2, LSB 44
0-127
Delay Send
chorus_delay_send
12 301
MSB 2, LSB 45
0-127
Reverb Send
chorus_reverb_send
13 302
MSB 2, LSB 46
0-127
Mix Volume
chorus_mix_volume
14 303
MSB 2, LSB 47
0-127

Compressor

Control CC NRPN Values
Threshold
compressor_threshold
111 272
MSB 2, LSB 16
0-127
Attack Time
compressor_attack_time
112 273
MSB 2, LSB 17
0-127
Release Time
compressor_release_time
113 274
MSB 2, LSB 18
0-127
Makeup Gain
compressor_makeup_gain
114 275
MSB 2, LSB 19
0-127
Pattern Volume
compressor_pattern_volume
119 280
MSB 2, LSB 24
0-127
Ratio
compressor_ratio
115 276
MSB 2, LSB 20
0-127
Sidechain Source
compressor_sidechain_source
116 277
MSB 2, LSB 21
0-127
Sidechain Filter
compressor_sidechain_filter
117 278
MSB 2, LSB 22
0-127
Dry/Wet Mix
compressor_dry_wet_mix
118 279
MSB 2, LSB 23
0-127

External in mixer

Control CC NRPN Values
Dual Mono
external_in_dual_mono
82 296
MSB 2, LSB 40
0-127
Input L Level
external_in_input_l_level
72 286
MSB 2, LSB 30
0-127
Input L Pan
external_in_input_l_pan
74 288
MSB 2, LSB 32
0-127
Input R Level
external_in_input_r_level
73 287
MSB 2, LSB 31
0-127
Input R Pan
external_in_input_r_pan
75 289
MSB 2, LSB 33
0-127
Input L Delay Send
external_in_input_l_delay_send
78 292
MSB 2, LSB 36
0-127
Input R Delay Send
external_in_input_r_delay_send
79 291
MSB 2, LSB 35
0-127
Input L Reverb Send
external_in_input_l_reverb_send
80 294
MSB 2, LSB 38
0-127
Input R Reverb Send
external_in_input_r_reverb_send
81 295
MSB 2, LSB 39
0-127
Input L Chorus Send
external_in_input_l_chorus_send
76 290
MSB 2, LSB 34
0-127
Input R Chorus Send
external_in_input_r_chorus_send
77 291
MSB 2, LSB 35
0-127
Input L R Level
external_in_input_l_r_level
72 286
MSB 2, LSB 30
0-127
Input L R Balance
external_in_input_l_r_balance
74 288
MSB 2, LSB 32
0-127
Input L R Delay Send
external_in_input_l_r_delay_send
78 292
MSB 2, LSB 36
0-127
Input L R Reverb Send
external_in_input_l_r_reverb_send
80 294
MSB 2, LSB 38
0-127
Input L R Chorus Send
external_in_input_l_r_chorus_send
76 290
MSB 2, LSB 34
0-127

Where these facts come from

Source documents

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: