Oscillators
MI-Plaits
A browser port of Mutable Instruments Plaits — a macro oscillator that bundles 24 synthesis engines and a built-in low-pass gate into one module.
Try one in your browser →
What is a MI-Plaits?
A macro oscillator is a single module that contains many synthesis methods inside it, each reachable from the same set of three or four knobs. Where a VCO produces analog-style waveforms and a wavetable oscillator scans through stored single-cycle frames, a macro oscillator switches between *entirely different DSP engines* — virtual analog, wavetable, granular, FM, physical modeling, additive, chord, speech — under one set of macro controls. Turn one knob to choose the engine; turn the other three to navigate inside it.
The category as it exists today was largely defined by Mutable Instruments and the Plaits module designed by Émilie Gillet, released in 2018. Plaits crammed 24 synthesis engines, each with three timbral controls (Harmonics, Timbre, Morph) and a built-in low-pass gate (so it could function as a complete voice without an external VCA or envelope), into 12 HP. The same three knobs mean different things in every engine, but the *feel* — turn the knobs, hear the timbre evolve in musically sensible ways — is consistent.
What makes the design work is curation: rather than expose every parameter of every engine, the designer hand-picks the three or four most musically useful controls and maps the macros to them. The Harmonics knob on a virtual-analog engine might sweep filter cutoff; on an FM engine it might change the operator ratio; on a wavetable engine it picks the table. The instrument hides its internals on purpose, so a player can make musical choices without thinking about implementation.
When Mutable Instruments open-sourced their firmware in 2018 under an MIT-licensed release, the module's character became free to live on beyond a single piece of hardware — in software replicas, in third-party Eurorack interpretations, and inside other instruments wherever DSP runs. The original is the canonical reference, and the design is the gold standard the whole macro-oscillator category is measured against.
Our MI-Plaits
Our MI-Plaits is a port of Émilie Gillet's original Plaits, running natively in your browser. The manifest exposes every parameter the hardware does — Engine selector, Frequency, Harmonics, Timbre, Morph, the three modulation attenuverters, Decay, LPG Colour — so the panel maps 1:1 to the original.
Be honest about status: the implementation is still being polished. Parameter routing is in place, but not every engine produces sound yet in our build. We are publishing this concept page now because the *idea* of a macro oscillator and its parameters are useful to anyone learning Plaits, even if our specific instance is not yet finished. Treat this page as a reference for the concept; check the rack for current playable status.
When the port is complete it will be the most expressive single-module voice in the rack — 24 engines, three macros that mean something different in each, and a built-in LPG that lets it function as a complete voice in just 12 HP. Until then the static parameters and panel are still useful for designing patches and learning the architecture.
In a patch
Plaits is designed to be a complete voice on its own. Patch V/Oct from a sequencer, a gate from the same sequencer to Trig, set Decay to taste, and you have a sound — no external envelope, no external VCA, no filter. The internal LPG does the amplitude shaping; the engine produces whatever timbre the macros are pointed at.
If you want more control, ignore the LPG and patch the Out and/or Aux audio outputs into a filter and a VCA driven by an external ADSR. The macro oscillator becomes a particularly versatile sound source in a more conventional voice path. Patch CV into Timbre, Morph, and Harmo for animated, evolving sounds.
Because the Engine parameter has its own input, you can sequence engine changes — patch a quantizer and a random CV into it, and the patch will jump between engines on every clock pulse. That is the kind of thing a macro oscillator makes easy and a single-engine oscillator cannot do at all.
Inputs
- Trig (gate) — Trigger/gate input. Pings the internal low-pass gate for percussive sounds. Each rising edge starts a new note shaped by the Decay knob.
- Level (cv) — Level CV input. Controls the amplitude of the internal LPG. When patched, gives external envelope control over the output level.
- V/Oct (cv) — Pitch CV input (1V per octave). Adds to the Frequency knob for melodic control from a sequencer or keyboard.
- FM (cv) — Frequency modulation input. Amount is scaled by the FM Mod attenuverter. Use for vibrato (slow LFO) or FM synthesis (audio-rate).
- Timbre (cv) — CV modulation of the Timbre parameter. Amount scaled by the Timbre Mod attenuverter.
- Morph (cv) — CV modulation of the Morph parameter. Amount scaled by the Morph Mod attenuverter.
- Harmo (cv) — CV modulation of the Harmonics parameter. Directly adds to the Harmonics knob value.
Outputs
- Out (audio) — Main audio output. The primary sound from the selected engine, shaped by the internal LPG.
- Aux (audio) — Auxiliary output. Provides a complementary signal that varies by engine - often a different waveform, a sub-oscillator, or the raw exciter signal.
Controls
- Frequency — Base pitch as a MIDI note number (24-108, which is C1 to C8). Sets the fundamental frequency of the synthesis engine. 60 = middle C.
- Harmonics — Harmonics control (0 to 1). Meaning varies by engine - typically controls harmonic content, spectral shape, or chord voicing.
- Timbre — Timbre control (0 to 1). The primary timbral shaping parameter. Meaning varies by engine - could be brightness, waveshape, or FM index.
- Morph — Morph control (0 to 1). The secondary timbral parameter. Often morphs between variations of the sound or crossfades between sub-engines.
- Timbre Mod — Timbre CV attenuverter (-1 to +1). Scales the Timbre CV input. Negative values invert the modulation.
- Morph Mod — Morph CV attenuverter (-1 to +1). Scales the Morph CV input.
- FM Mod — FM CV attenuverter (-1 to +1). Scales the FM CV input.
- Engine — Synthesis engine selector (0-23). Switches between 24 completely different synthesis algorithms. Engines include virtual analog, FM, waveshaping, wavetable, string modeling, modal resonator, additive, noise, and more.
- Decay — Internal LPG decay time (0 to 1). Controls how long each triggered note rings out. Short = percussive plucks. Long = sustained tones. At maximum, the LPG stays open (drone mode).
- LPG Colour — Low-pass gate colour (0 to 1). At 0, the LPG acts like a pure VCA (amplitude only). At 1, it acts like a low-pass filter that also dims the tone as it decays, like a real low-pass gate.
Native port of
A port of Emilie Gillet's Plaits, originally released in 2018 under MIT. The C++ source compiles to WebAssembly inside Webrack. The DSP integration is still being wired up, so this page documents the concept and its parameters; not every engine produces sound yet in our build.
- Mutable Instruments Plaits
← Back to all modules