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.
Waldorf MicroWave MIDI implementation
The MIDI implementation of the Waldorf MicroWave: what it answers to, and the 10 controls it offers, on firmware 2.0.
At a glance
- Firmware
- This page describes firmware 2.0.
- MIDI channel
- Any one of 1 to 16.
- Modes
- Single mode: the mode it ships in.
Multi mode: the controls on the base MIDI channel do not answer in it. - Parts
- Instrument, 8 of them: each on a MIDI channel of its own, taking notes, controls, and program changes, in Multi mode only.
- Voices
- 8, shared by the parts that play notes.
- Note range
- 0 to 127: C-1 to G9, counting middle C as C4.
- Velocity
- Received. Release velocity is received.
- Aftertouch
- Channel pressure and polyphonic, each answered. It sends none.
- Pitch bend
- How far it bends is not recorded, and the range can be changed.
- Program change
- Received, with 128 presets.
- MIDI clock
- Not recorded.
- Start and stop
- Neither sent nor received.
- Control change
- Assigned by the player, apart from the 10 controls below.
- NRPN
- None.
- 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("waldorf/microwave") has loaded them.
On the base MIDI channel
These answer in Single mode, and not in Multi mode.
| Control | CC | Values |
|---|---|---|
Modulation wheelmodulation |
1 | 0-127 Received, never sent |
Volume controllervolume |
7 | 0-127 Received, never sent |
Panning controllerpanning |
10 | 0-127 Received, never sent |
Sustain pedalsustain |
64 | 0-127 Received, never sent |
Portamentoportamento |
65 | 0-127 Received, never sent |
Instrument
In Multi mode only.
| Control | CC | Values |
|---|---|---|
Modulation wheelinstrument_modulation |
1 | 0-127 Received, never sent |
Volume controllerinstrument_volume |
7 | 0-127 Received, never sent |
Panning controllerinstrument_panning |
10 | 0-127 Received, never sent |
Sustain pedalinstrument_sustain |
64 | 0-127 Received, never sent |
Portamentoinstrument_portamento |
65 | 0-127 Received, never sent |
Where these facts come from
Source documents
- The Micro-Wave Manual. Performance Manual, its user manual, read on 11 October 2026 (the file read).
- The Micro-Wave Manual. Programming Manual, its user manual, read on 11 October 2026 (the file read).
- Micro Wave Software-Update Vers. 2.0, 2.0, dated 1994, its firmware addendum, read on 11 October 2026 (the file read).
- Waldorf Microwave System Exclusive Documentation, System Software Version 2.00 Revision 00, dated 1 March 1994, its MIDI implementation, read on 11 October 2026 (the file read).
- Legacy Microwave – Waldorf Music, its download page, read on 11 October 2026 (the file read).
- Welcome to our legacy!, its download page, read on 11 October 2026 (the file read).
How they were read
WALDORF'S OWN DOCUMENTS, FROM ITS LEGACY PAGE. The page for this instrument lists Documentation, Sounds and Tools under "Microwave Downloads" (legacy_page), and the first is one archive of seven files: the Performance Manual, 122 pages; the Programming Manual, 190; a booklet for the 2.0 software, six sheets; and four text files of system exclusive documentation, for software 1.0, an addendum for 1.25, an addendum for 2.00 and the whole of it for 2.00. Four are cited here: the two manuals, the booklet and the whole text for 2.00. The two manuals and the booklet are scans, each page one image and not a character of text, so no quotation from them can be checked by a machine; a second reader checked every one against the rendered page.
THIS IS THE FIRST MICROWAVE, THE RACK OF 1989. "In 1989 this extraordinary reincarnation of the legendary PPG synthesizers set out to conquer the world." (legacy_page). Waldorf's legacy index lists it under "Microwave & Wave" (legacy_index) as Microwave, beside the Microwave II, the XT and the XTk, which the index links to one other page between them, and nothing here is about them.
THE SOFTWARE IS 2.0, AND THE DOCUMENTS ARE OF THREE DATES. Both manuals end with the same MIDI implementation chart, on a page that prints no number: Date: Feb. 20, 1990 and Version: 1.10 (performance p. 121) and the same again (programming p. 189). The booklet is of 1994 by its spine and describes what 2.0 changed: "This section only describes the changed or new parameters compared to Version 1.25 . See the MicroWave Performance Manual for more information." (update p. 3). The text is dated "March, 1st, 1994" (sysex). So the chart's rows are those of software 1.10, and they are carried where neither the booklet nor the text for 2.00 says otherwise. The booklet numbers no controller and does not mention the clock, and of channels it only repeats an Instrument's, 01 to 16 with 01 the default (update p. 2). The text adds one thing the chart crosses, set out under the clock below, and says otherwise than one of its remarks, set out under the modes. The archive's three other texts, for 1.0, an addendum for 1.25 and an addendum for 2.00, were searched as well: none numbers a controller or speaks of start or stop, and the addendum for 2.00 has the one line about the clock too. No document but the chart names 1.10. What 1.25 added is told for system exclusive alone: its addendum lists seven new messages and two new functions of the dumps, which change the mode, and speaks of an Overflow-Link mode. The channel, Control W to Z and the on/off settings are in it only as the global parameters one of those messages lists and another sets one at a time, and the clock is not in it.
NOTHING IS SENT BUT SYSTEM EXCLUSIVE. The chart's Transmitted column is a dash or a cross on every row but System Exclusive, with an empty cell beside True # (performance p. 121). The instrument has no keyboard: "Since the MicroWave has no keyboard of its own for you to play, you must connect a MIDI-keyboard (or some other type of MIDI controller) in order to trigger a sound." (performance p. 8). So every control below is direction: receives. What it receives, by the same chart, is notes, both velocities, both kinds of aftertouch, pitch bend, control change, program change, system exclusive, and All Notes Off, Active Sense and Reset.
TWO SETTINGS DO PUT RECEIVED MESSAGES ON THE OUTPUT. With MIDI Overflow on, the notes it has no voice for go out again for a second instrument: "On will output any note-on message received while all 8 voices are busy at the MIDI out port." (performance p. 41), and what arrives and the instrument does not itself use is sent on as well (performance p. 42). With Overflow off, a second setting passes everything through: "Midiout = Thru (on/off) will redirect all data present at the MIDI-In port to the MIDI-Out port if desired, thus making it output all MIDI-Thru data in addition to all MIDI-Out data." (performance p. 42), which the page says holds only then. None of that is the instrument sending a note or a controller of its own, and the chart has a dash or a cross for them all the same. What it does send of its own is system exclusive; from 1.25, by that software's addendum, that includes a message for each parameter changed at its panel while Overflow is at a third value, which the text for 2.00 spells Lnk (sysex) and the manual's on and off do not list.
THE CHART NAMES SIX CONTROLLERS AS FIXED, AND FIVE OF THEM ARE GIVEN THE SAME NUMBER AGAIN IN THE MANUALS. Its Control Change row is crossed as transmitted, marked yes as received, and remarked fixed: Ctrl. 1 (Mod), 3 (Breath), 7 (Vol), 10 (Pan), 64 (Sustain), 65 (Porta), then free: "4 assignable Controller, 0..120" (performance p. 121). The Programming Manual's table of modifier modules, the sources a sound's modulation inputs can take, has a list headed Extenal MIDI Modifier modules: with "Modulation wheel (MIDI continuous controller 1)" (programming p. 27), "Sustain pedal (MIDI continuous controller 64)" (programming p. 27), "Volume controller (MIDI continuous controller 7)" (programming p. 27) and "Panning controller (MIDI continuous controller 10)" (programming p. 27). The Performance Manual gives the same four numbers where it describes the setting that lets each in, for the instrument (performance pp. 38-39) and for each Instrument of a Multi-program (performance pp. 67-68). Controller 65 is in the Programming Manual's account of Glide. Those five are the controls below.
WHAT EACH OF THE FIVE DOES. Volume and panning act without being routed: "MIDI Volume Controller (Controller #7) is permanently assigned to adjust the Sound-program's loudness." (programming p. 60) and "MIDI Panning Controller (Controller #10) is permanently assigned to adjust the Sound-program's panning-position." (programming p. 70). The modulation wheel and the sustain pedal are listed as sources, which a sound's modulation inputs may take. No page gives either a fixed destination, and no page says whether the pedal also holds notes: of the pedal the Performance Manual says only that it is "sustain- or hold-pedal data (MIDI continuous-controller #64)" (performance p. 39). A sound begun from the Sound-init program, which the manual suggests recalling "so you can start from scratch." (programming p. 30), has the wheel bringing in LFO 1 on the pitch of both oscillators: Mod1 Source at LFO 1, Mod1 Control at Mod Wheel and Mod1 Amount at +20 for each (programming p. 161). Controller 65 is a condition on a sound's Glide, at two of that parameter's settings: "MPorta is the same as Porta, with the difference being that the portamento effect will only be applied if a MIDI portamento-command (MIDI controller #65) is received." (programming p. 100), and MGliss is the same of the glissando. The page does not say which values of the controller count as received; the manuals' remark on a switch's values, printed three times, is made of a controller assigned to Control W, that such controllers "will output only two values: 0 if they are not active and 127 if they are activated." (performance p. 37), and with not pressed for not active where it is said again (performance p. 57, programming p. 28). The booklet's two settings for 2.0, FGliss and FPorta, glide only while a key is held, and the booklet says nothing of the controller for them (update p. 8).
FOUR OF THE FIVE CAN BE SHUT OUT, AND FROM THE MULTI INIT THEY ARE LET IN. The MIDI parameters have an on/off setting for each of modulation, volume, panning and the sustain pedal, beside those for program change, the pitch wheel, aftertouch and poly pressure: "If it is set to off, the MIDI-source will be filtered and has no effect on the sound whatsoever." (performance p. 38). Each Instrument of a Multi-program has the same eight, and "These parameters will over-ride those set in the Global MIDI parameters." (performance p. 67). The Multi Init patch sets all eight on for an Instrument (performance p. 55), and the booklet's table for 2.0 gives the same (update p. 3). For the instrument's own eight no page prints a factory setting in words; the display pictured beside each reads on (performance pp. 38-39), which is a picture and not a statement. No setting names controller 65 or breath.
BREATH IS 3 IN THE CHART AND 2 IN THE PROGRAMMING MANUAL, SO NEITHER IS CARRIED. The chart's remark has 3 (Breath) (performance p. 121, programming p. 189). The Programming Manual's list has "Breath controller (MIDI continuous controller 2)" (programming p. 27). The system exclusive text lists the same sources by their place in a table, "16= Breath Controller" (sysex), and numbers no controller at all; the listing of the Sound-init program names BreathControl in the same table, again without a number (programming p. 165). Breath control is controller 2 in the MIDI specification, but nothing in Waldorf's documents says which of its two is the slip.
CONTROL W, X, Y AND Z ARE NUMBERS THE OWNER CHOOSES, SO THEY ARE NOT CONTROLS HERE. "Control W (000..120) is one of four programmable free MIDI controllers you can use for modulating sounds." (performance p. 37); X, Y and Z are the same. They are sources like the modulation wheel, "The MIDI Modifier modules Controller W through Z support any MIDI continuous controller between values of 000 and 120." (programming p. 28), and the number each stands for is set once for the instrument and again in each Multi-program, where it "overrides the same parameter of the Global-parameter page!" (performance p. 57). The Multi Init patch sets all four to 000 (performance p. 54). A number an owner assigns is not a property of the model, which is the reading waldorf/blofeld gives its own Control W to Z.
control_change IS learned, FOR THE FOUR NUMBERS THE OWNER SETS, AS waldorf/blofeld, WHICH HAS THE SAME FOUR, SAYS OF ITS OWN. The word says that some of an instrument's controller numbers are its owner's to assign, by MIDI learn or, as here, by setting a number at the panel, and it stands beside the numbers a maker fixes. The five below are not factory defaults an owner can move: they are fixed. waldorf/protein says the same word for numbers that are learned. Until 2026-10-12 all three left the field empty: this file and the Protein's because the word was then read as leaving no room for a number the maker fixes, and the Blofeld's because its chart was read as complete, with nothing learned.
NO NRPN, AND A PARAMETER IS REACHED BY SYSTEM EXCLUSIVE. No page of either manual or of the booklet names a registered or non-registered parameter, and the text has neither term. An editor changes a sound through messages of the instrument's own, "60 RTBP Real Time BPR Edit" (sysex) and its companions for a Multi-program, the global parameters and the tables.
CHANNELS 1 TO 16, AND THE DEFAULT IS TOLD TWO WAYS, SO NO mode IS CARRIED. The channel is one setting with seventeen values: "MIDI Channel (omni..1..16) sets the MIDI channel that the MicroWave will receive on in MIDI poly-mode." (performance p. 37), and "Omni selects MIDI omni-mode. The MicroWave will receive incoming MIDI messages on all 16 MIDI channels." (performance p. 37). The chart gives a default channel of 1 and, two rows down, a default mode of 1, which its own legend reads as "Mode 1: OMNI ON, POLY" (performance p. 121); the setting cannot be both a channel and omni, and the chart's Changed row, 1..16, leaves omni out altogether. The first-steps chapter tells the reader to have the controller and the instrument both on channel 1: "Refer to chapter 4 to find out how to check and set the MicroWave's MIDI receive channel (which should also be 1)." (performance p. 15). The chart's Mode row has more: Omni/Poly/Multi as the messages received, >All notes off in its Altered cell, and the remark "Modes can't be switched via MIDI" (performance p. 121), which later software's dumps are an exception to; see the modes below. Global parameters are kept through power-off (performance p. 35), and the manual calls the channel one of them (performance p. 28); that the channel is kept is a reading of the two pages together.
SINGLE MODE AT POWER-ON, AND A MULTI MODE OF UP TO EIGHT INSTRUMENTS. "In Single mode you can play one Sound-program at a time, using all eight voices of the MicroWave." (performance p. 28) and "The MicroWave defaults to Single mode upon powering up." (performance p. 28). The first-steps chapter allows for the other case all the same: after switching on, "The display should look like this:" (performance p. 14), a Sound program, and for a display showing a Multi program instead it has the reader press the select button labelled MIDI-mode (performance p. 14). In Multi mode a Multi-program holds up to eight Instruments, each a sound with a key window, a velocity window and a channel: "Every Instrument has it's own MIDI channel which may be different from or the same as that of any other Instrument defined in a Multi-program." (performance p. 51). An Instrument's channel is 1 to 16 and never omni: "Sorry, there is no omni-mode available for an Instrument." (performance p. 60). How many of the eight exist is a setting of the Multi-program, "Number of Instruments (1..8) defines how many Instruments are active in a certain Multi-program." (performance p. 59), and the Multi Init patch has one, on channel 01 (performance pp. 54-55).
FROM 1.25 A DUMP CHANGES THE MODE, WHATEVER THE CHART OF 1.10 SAYS. "When recieving a sound-dump, the MicroWave first switches into Poly Mode." (sysex), and "If the MicroWave recieves an ARPD, it first switches to Multi Mode." (sysex), an ARPD being an "Arrangement Program Dump" (sysex), a Multi-program's. Poly is the text's word for the manual's Single mode, "Single (Poly) mode" (sysex). The addendum for 1.25 gives both as new functions of those dumps. So a Sound Dump, the message BPRD, sent to an instrument in Multi mode takes it out of Multi mode; the text names another message, ABPD, for a sender that does not want the switch (sysex).
IN MULTI MODE THE INSTRUMENT'S OWN CHANNEL HEARS ONLY PROGRAM CHANGES. "Besides the Instrument channels you also have a basic MIDI channel. In Multi mode, this is used only to receive program changes for recalling Multi-programs." (performance p. 53), and a later page says the same of everything else: "the MicroWave will not recognize anything but program change commands on it's basic MIDI channel" (performance p. 73). It is the channel of Single mode's setting, "it's the same parameter you set for receiving in Single mode." (performance p. 58). So the five controls are written twice below: once naming no part, for Single mode, and once for an Instrument on its own channel, and Multi mode is unparted: false. An Instrument may sit on that same channel, as the Multi Init patch's one Instrument on 01 does while the instrument's own channel is 1 or omni. The manual warns against it for program changes: "There's no way the MicroWave can determine whether it is meant for the Instrument or the Multi-program" (performance p. 58). That notes and controllers on a shared channel still reach the Instrument is a reading of its channel being the one "the Instrument will receive on" (performance p. 60); no page says it of a channel shared with the instrument's own. For modulation, volume, panning and the sustain pedal the manual says that the Instrument recognises them (performance pp. 67-68), and of volume that "you may individually control the volume of each Instrument as long as the MIDI channels differ" (programming p. 60), with the same sentence for panning (programming p. 70). That controller 65 reaches an Instrument on its channel is a reading: Glide is a setting of the sound the Instrument plays, and no page says on which channel the controller is heard.
PROGRAM CHANGE CHOOSES A SOUND OR A MULTI-PROGRAM, AND THE MANUAL COUNTS IT FROM 1. The chart marks it received over 0..127, with the remark 0...63:internal 64..127:Card and (x2,single/Multi) (performance p. 121): 64 programs inside and 64 on a card, of each kind. presets is the 128 Sound-programs. The Performance Manual counts from 1 and stops one short: "Internal banks A and B refer to MIDI program numbers 1 to 64 respectively, while the card memory is called by program numbers 65 through 127." (performance p. 40), and of a map, "You can select and program all 127 possible program-change values." (performance p. 84), beside a display that begins at PC:000. The first-steps chapter counts as page 40 does (performance p. 15), and the text for 2.00 as the chart does: "Instr. Sound (BPR) (0...127 = Soundprog. A01...D32)" (sysex). Two maps, one for sounds and one for Multi-programs, redirect a program change when PC Maps is on (performance pp. 40, 84). In Multi mode a setting of the Multi-program decides what a program change does: on the basic channel it recalls a Multi-program, on an Instrument's channel it changes that Instrument's sound, or both, and the Multi Init patch has the first (performance pp. 54, 58).
NOTES 0 TO 127, AND A TRUE VOICE OF 0 TO 108. The chart's Note Number row reads 0..127 received and its True Voice row 0..108 (performance p. 121). note_range is what the instrument accepts. roland/juno_106 records its own that way on a sentence saying that notes outside are transposed; here no page says what a note above 108 sounds as. An Instrument's key window runs from C-2 to G8 (performance p. 55), and each oscillator of a sound can be set to ignore the pitch of the note that plays it (programming p. 38).
VELOCITY, RELEASE VELOCITY, BOTH PRESSURES AND BEND ARE SOURCES A SOUND CHOOSES TO USE. The chart marks note-on and note-off velocity, key and channel aftertouch and the pitch bender as received (performance p. 121), and the table of sources lists each: "Release velocity (the velocity sent upon release of a key)" (programming p. 27), "After-touch (monophonic)" (programming p. 27) and "Poly pressure (polyphonic, individual per key)" (programming p. 27). The bend range belongs to each oscillator of a sound: "Bend Range (0..12) sets the pitch bend range for this oscillator in semitones." (programming p. 38), so it is programmable and no single figure is recorded. The Sound-init program has 02 for both oscillators (programming p. 161).
EIGHT VOICES, SHARED BY THE INSTRUMENTS. In Multi mode the Instruments "share the same hardware, and, of course, the eight available voices." (performance p. 51), and "In general all voice allocation is done dynamically, yielding the best results for multi-channel sequencer usage." (performance p. 51). An Instrument sent to one of the four individual outputs (performance p. 30) takes one voice out of the pool and is monophonic (performance p. 52). The booklet adds an Allocation Mode to each Instrument in 2.0, dynamic or one of six monophonic settings (update p. 2), four of which it goes on to describe (update pp. 3-4): dynamic is the manual's behaviour, in which an Instrument "is polyphonic and can hence be played with up to eight voices" (update p. 3).
THE CHART CROSSES CLOCK, AND THE TEXT FOR 2.00 LISTS IT AS A SOURCE, SO clock IS NOT RECORDED. Clock and Commands are crossed in both columns of the chart of 1990 (performance p. 121). The system exclusive text's table of sources ends "23= MIDI Clock Rate" (sysex), on a line marked as one that earlier software had reserved and 2.0 gave a function. The text for 1.0 has no such line, its table stopping at 22. No other line of the text for 2.00 mentions clock and the booklet does not mention it at all, so what a sound does with it is not described anywhere. transport is none by the chart, and nothing later speaks of start or stop.
SYSTEM EXCLUSIVE, UNDER A DEVICE NUMBER. The chart marks it both ways (performance p. 121). The text gives the maker's identifier, "IDW : Waldorf MIDI ID = 3Eh" (sysex), and the device number, "DEV : Device number, 00h to 7Eh, 7Fh = global" (sysex), which the manual sets as "Device Number (0..126)" (performance p. 42) and gives a factory value: "By default the device number is set to 000." (performance p. 43). The Performance Manual lists thirteen dump requests the instrument answers (performance pp. 109-110), and the text documents those and more.
WHERE WALDORF'S DOCUMENTS DISAGREE WITH THEMSELVES. Breath, 3 or 2. The default, channel 1 or omni. Program changes, 0 to 127 on the chart and 1 through 127 in the manual. Each is set out above, and none is settled here.
NOT RECORDED:
modeandclock, for the reasons above;- a number for breath;
- the four controllers an owner assigns;
- a factory setting for the channel, which the chart prints two ways, or for the instrument's own eight on/off settings, which no page prints in words;
- and a single bend range.