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.

Korg microKORG MIDI implementation

The MIDI implementation of the Korg microKORG: what it answers to, and the 71 controls it offers.

At a glance

Firmware
Not recorded.
MIDI channel
Any one of 1 to 16.
Voices
4.
Note range
Not recorded.
Velocity
Sent and received. Release velocity is ignored.
Aftertouch
None, sent or answered.
Pitch bend
12 semitones, and the range can be changed.
Program change
Received and sent, with 128 presets.
MIDI clock
Sent and received.
Start and stop
Received.
Control change
Assigned by the player, apart from the 42 controls below.
NRPN
Supported. 29 of the controls below have one.
System exclusive
Supported.

Controls

In the order the definition gives them, by group. Under each control is the name a program calls it by, once pymidiinstrumentdefs.load("korg/microkorg") has loaded them.

Pitch

Control CC NRPN Values
Pitch Modulation Depth
pitch_modulation_depth
1 0-127
Portamento
pitch_portamento
5 0-127
The factory's number, which the player can change

Oscillator 1

Control CC NRPN Values
Wave
osc1_wave
77 0-127
The factory's number, which the player can change
Control1
osc1_control1
14 0-127
The factory's number, which the player can change
Control2
osc1_control2
15 0-127
The factory's number, which the player can change

Oscillator 2 and audio in 1

Control CC NRPN Values
Wave
osc2_wave
78 0-127
The factory's number, which the player can change
OSC Mod
osc2_osc_mod
82 0-127
The factory's number, which the player can change
Semitone
osc2_semitone
18 0-127
The factory's number, which the player can change
Tune
osc2_tune
19 0-127
The factory's number, which the player can change

Mixer

Control CC NRPN Values
OSC 1 Level
mixer_osc_1_level
20 0-127
The factory's number, which the player can change
OSC 2 Level
mixer_osc_2_level
21 0-127
The factory's number, which the player can change
Noise Level
mixer_noise_level
22 0-127
The factory's number, which the player can change

Filter

Control CC NRPN Values
Type
filter_type
83 0-127
The factory's number, which the player can change
Cutoff
filter_cutoff
74 0-127
The factory's number, which the player can change
Resonance
filter_resonance
71 0-127
The factory's number, which the player can change
Filter EG Int
filter_eg_int
79 0-127
The factory's number, which the player can change
KBD Track
filter_kbd_track
85 0-127
The factory's number, which the player can change

Filter envelope

Control CC NRPN Values
Attack
filter_eg_attack
23 0-127
The factory's number, which the player can change
Decay
filter_eg_decay
24 0-127
The factory's number, which the player can change
Sustain
filter_eg_sustain
25 0-127
The factory's number, which the player can change
Release
filter_eg_release
26 0-127
The factory's number, which the player can change

Amp

Control CC NRPN Values
Level
amp_level
7 0-127
The factory's number, which the player can change
Panpot
amp_panpot
10 0-127
The factory's number, which the player can change
Distortion
amp_distortion
92 0-127
The factory's number, which the player can change

Amp envelope

Control CC NRPN Values
Attack
amp_eg_attack
73 0-127
The factory's number, which the player can change
Decay
amp_eg_decay
75 0-127
The factory's number, which the player can change
Sustain
amp_eg_sustain
70 0-127
The factory's number, which the player can change
Release
amp_eg_release
72 0-127
The factory's number, which the player can change

LFO 1

Control CC NRPN Values
Wave
lfo1_wave
87 0-127
The factory's number, which the player can change
Frequency
lfo1_frequency
27 0-127
The factory's number, which the player can change

LFO 2

Control CC NRPN Values
Wave
lfo2_wave
88 0-127
The factory's number, which the player can change
Frequency
lfo2_frequency
76 0-127
The factory's number, which the player can change

Modulation patches

Control CC NRPN Values
Intensity
patch_1_intensity
28 0-127
The factory's number, which the player can change
Intensity
patch_2_intensity
29 0-127
The factory's number, which the player can change
Intensity
patch_3_intensity
30 0-127
The factory's number, which the player can change
Intensity
patch_4_intensity
31 0-127
The factory's number, which the player can change
Patch1 Source
patch1_source
512
MSB 4, LSB 0
0-127
Patch2 Source
patch2_source
513
MSB 4, LSB 1
0-127
Patch3 Source
patch3_source
514
MSB 4, LSB 2
0-127
Patch4 Source
patch4_source
515
MSB 4, LSB 3
0-127
Patch1 Destination
patch1_destination
520
MSB 4, LSB 8
0-127
Patch2 Destination
patch2_destination
521
MSB 4, LSB 9
0-127
Patch3 Destination
patch3_destination
522
MSB 4, LSB 10
0-127
Patch4 Destination
patch4_destination
523
MSB 4, LSB 11
0-127

Modulation effect

Control CC NRPN Values
LFO Speed
mod_fx_lfo_speed
12 0-127
The factory's number, which the player can change
Depth
mod_fx_depth
93 0-127
The factory's number, which the player can change

Delay

Control CC NRPN Values
Delay Time
delay_time
13 0-127
The factory's number, which the player can change
Depth
delay_depth
94 0-127
The factory's number, which the player can change

MIDI

Control CC NRPN Values
Timbre Select
midi_timbre_select
95 0-127
The factory's number, which the player can change
Sync Ctrl
midi_sync_ctrl
90 0-127
The factory's number, which the player can change

Arpeggiator

Control CC NRPN Values
Arpeggio On/Off
arpeggio_on_off
2
MSB 0, LSB 2
0-127
Arpeggio Octaves
arpeggio_octaves
3
MSB 0, LSB 3
0-127
Arpeggio Latch On/Off
arpeggio_latch_on_off
4
MSB 0, LSB 4
0-127
Arpeggio Type
arpeggio_type
7
MSB 0, LSB 7
0-127
Arpeggio Gate
arpeggio_gate
10
MSB 0, LSB 10
0-127

Vocoder

Control CC NRPN Values
Band 1 Level
vocoder_band1_level
528
MSB 4, LSB 16
0-127
Band 2 Level
vocoder_band2_level
530
MSB 4, LSB 18
0-127
Band 3 Level
vocoder_band3_level
532
MSB 4, LSB 20
0-127
Band 4 Level
vocoder_band4_level
534
MSB 4, LSB 22
0-127
Band 5 Level
vocoder_band5_level
536
MSB 4, LSB 24
0-127
Band 6 Level
vocoder_band6_level
538
MSB 4, LSB 26
0-127
Band 7 Level
vocoder_band7_level
540
MSB 4, LSB 28
0-127
Band 8 Level
vocoder_band8_level
542
MSB 4, LSB 30
0-127
Band 1 Pan
vocoder_band1_pan
544
MSB 4, LSB 32
0-127
Band 2 Pan
vocoder_band2_pan
546
MSB 4, LSB 34
0-127
Band 3 Pan
vocoder_band3_pan
548
MSB 4, LSB 36
0-127
Band 4 Pan
vocoder_band4_pan
550
MSB 4, LSB 38
0-127
Band 5 Pan
vocoder_band5_pan
552
MSB 4, LSB 40
0-127
Band 6 Pan
vocoder_band6_pan
554
MSB 4, LSB 42
0-127
Band 7 Pan
vocoder_band7_pan
556
MSB 4, LSB 44
0-127
Band 8 Pan
vocoder_band8_pan
558
MSB 4, LSB 46
0-127

Where these facts come from

Source documents

How they were read

Two documents, because this instrument's control map is split across both and neither half is in the other. The MIDI Implementation, revision 1.4, is a plain text file with no pages, cited by its own section numbers; the Owner's Manual E 2 has 80 pages and is cited by page.

THE IMPLEMENTATION GIVES NO CONTROLLER NUMBER FOR ANY PANEL PARAMETER, which is this instrument's first surprise. Its channel message rows say only "Control Change cc=00~95" (implementation), and its panel table is headed "Panel Knob & Switch Control (assignable)" (implementation) - forty-odd parameters in two columns and not one number against them. That is not an omission. The numbers are the player's to set, and Korg prints the factory assignment in the manual instead, in a table whose column is headed "Initial" (p. 56). Both facts are at the head of this file because that is where somebody about to rely on a number is looking.

THE IMPLEMENTATION GIVES THE NRPNS, all 29, and prints them twice over - once for what the instrument transmits and once for what it recognises. The two copies are identical, which was checked rather than assumed. They address what the panel does not: the arpeggiator, the four modulation patches, and the vocoder's eight bands.

ONE CONTROL CHANGE IS NOT ASSIGNABLE and so is in neither table: CC 1, which the implementation's receive table fixes as pitch modulation depth and its transmit table names as the modulation wheel.

ONE CHANNEL, STATED AS A LIMIT RATHER THAN INFERRED: "The microKORG uses only one MIDI channel to transmit and receive. You cannot use two MIDI channels to play the two timbres independently" (p. 66). So there are no parts here, although the instrument is two timbres deep when layered. Which timbre a control change reaches is CC 95 below, a setting rather than a channel.

THE TWO DOCUMENTS DO NOT NAME THE SAME 41 CONTROLS, which is worth knowing before anybody tries to reconcile them. The implementation's map of assignable slots includes an "EG2/Gate Sw" (implementation) and a "SEQ Off/On Sw" (implementation) that the manual's table has no row for, while the manual's table has Timbre Select and Sync Ctrl, which the implementation keeps as two global bytes of their own rather than as slots in that map. The numbers below are the manual's, because the implementation gives none; the overlap is recorded rather than resolved.

NO BANK SELECT, said outright: "The microKORG does not transmit or receive bank select messages" (p. 52). That is the difference the microKORG S's own implementation adds, and it is why one definition cannot cover both.

NO USB. The specifications list the connectors and name only MIDI in, out and thru, and the word USB appears twice in 80 pages, both times about somebody else's interface box: "Some USB-MIDI interface devices may not be able to transmit/receive the microKORG's MIDI exclusive messages" (p. 49). Every byte this instrument sends or receives goes down a DIN cable.

WHAT IT WILL NOT ANSWER TO, established from the table that enumerates what it does. The recognised channel messages are note off, note on, CC 1, data entry, the NRPN pair, the channel mode messages, generic control data, program change and pitch bend - and nothing else.

AFTERTOUCH IS ABSENT FROM THAT LIST in both forms, which agrees with the keyboard the specifications describe: "37 notes (mini keyboard, velocity sensitive, no aftertouch)" (p. 67). So aftertouch is a checked absence rather than an unread page.

NOT RECORDED: the note range, which neither document states for what the instrument receives - the implementation gives kk = 0 ~ 127 for what the 37-key keyboard transmits with octave and transpose applied, and that is the panel rather than the span it answers to.

THE SIBLING MODELS WERE SETTLED, NOT ASSUMED. The microKORG Crystal's download page offers the same MIDI Implementation under the same manual id, resolving to the same file, so this definition describes the Crystal by construction. The microKORG S's own implementation was fetched and compared: it is a different document, revision 1.01 (2026.06.22), and it adds Bank Select MSB and LSB that this instrument has not got. It is held in the library beside this one and is not described here.