Manage flash loops for the Degenerator Workshop Computer card
WAV, MP3, OGG, or FLAC — mono or stereo, any sample rate
Audio will be resampled to 48 kHz mono and u-law companded
A layered audio looper for the Music Thing Modular Workshop Computer. Record a loop, then shape it by adding and removing material like clay on a spinning wheel. Nothing is ever the same twice. Inspired by William Basinski's The Disintegration Loops.
Uploading loops: Use the Manager tab to add audio files. Each file is resampled to 48 kHz mono and u-law companded (1 byte per sample). You can add up to 4 loops, each up to 5.0 seconds (240,000 samples). Drag to reorder. Click a loop name to rename it. Use the trim handles on the waveform to set start and end points.
Connecting your card: For all flash operations, the card must be in BOOTSEL (flash) mode. You can enter BOOTSEL mode in three ways:
Browsers: Chrome or Edge required (WebUSB + WebSerial support). Firefox and Safari do not support these APIs.
Sync from Device: Click "Sync from Device" to read loop data back from a connected card. This reads the flash header and all loop data, populating the editor.
The module stores and recalls up to 4 fixed flash slots (0-3) in SLOT mode (Z held down at boot). In SLOT mode: enter STORE_SLOT by moving Z down while Big Knob is near zero in MIX or DEGRADE. Turn Big Knob to choose a slot, then press Z down to write. In SELECT_SLOT, hold Z down and turn Big Knob to choose a slot, then release Z to load it.
| Control | Function |
|---|---|
| Big Knob | Mix level (MIX) / Rate of change (DEGRADE). Full left freezes state |
| Knob X | Harmonic effects: Saturation → Filter Drift → Tape Hiss |
| Knob Y | Destructive effects: Oxide Shedding → Bit Crush → Bit Rot |
| Z Switch | Down = RECORD (YOLO) or slot modes (SLOT), Middle = MIX, Up = DEGRADE |
| Boot (Z Down) | Held at boot → SLOT mode (flash features enabled) |
| Boot (Z not Down) | Not held at boot → YOLO mode (instant-on, no flash features) |
| Position | Mode | Big Knob | X | Y |
|---|---|---|---|---|
| Down (YOLO) | RECORD | Not used | — | — |
| Down (SLOT) | SELECT_SLOT / STORE_SLOT | Select slot 0-3 | — | — |
| Middle | MIX | Mix level (quadratic) | Shapes input | Shapes input |
| Up | DEGRADE | Commit rate (quadratic) | Harmonic FX | Destructive FX |
The module has two operating modes, chosen at boot:
SELECT_SLOT: Hold Z down at boot, or trigger Pulse In 2 while Z is down. Big Knob selects slot 0-3. Release Z to load the selected slot and return to MIX/DEGRADE. If a slot is empty, the module enters RECORD.
STORE_SLOT: From MIX or DEGRADE, move Z down with Big Knob near zero. Big Knob selects slot 0-3. Press Z down to save. Move Z up to cancel back to DEGRADE. During save, audio is muted briefly while flash is written.
When entering MIX or DEGRADE, the module records the Big Knob's current position. The effect only engages once you turn past this reference, preventing accidental changes if the knob is in a sensitive position.
For example: if Big Knob is at 75% when you flip to MIX, the mix level stays at zero until you turn past 75%. The reference updates whenever you cross it in either direction.
Audio input writes directly into the buffer, overwriting whatever was there. Recording runs until the buffer is full (~5.0s) or you flip Z away. When full, auto-switches to MIX. Big Knob has no effect during recording.
The loop plays back while audio input is mixed in on top. Big Knob controls input level using quadratic scaling (knob² >> 16) so the knob must be turned further before overdub becomes audible: full left = nothing added, full right = full level. X and Y knobs shape the incoming audio before mixing. MIX is additive: building up.
The loop plays back while effects eat into the buffer: readSample → X effects → Y effects → blend with original → write back. Big Knob controls commit rate using quadratic scaling (knob² >> 15): below ~1.2% (knob < 50) = bypass/no change, full right = near-instant transformation. DEGRADE is subtractive: carving away. It never grows back.
| Range | Effect | Description |
|---|---|---|
| 0–33% | Saturation | Even-harmonic warmth and soft compression |
| 33–67% | Filter Drift | Lowpass drifts down each pass, accumulating |
| 67–100% | Tape Hiss | White/pink noise shaped by envelope follower |
| Range | Effect | Description |
|---|---|---|
| 0–33% | Oxide Shedding | Dropouts that persist across passes |
| 33–67% | Bit Crush | Bit depth and sample rate reduction |
| 67–100% | Bit Rot | Random single-bit flips, unpredictable glitches |
| Port | Function |
|---|---|
| Audio In 1 | Primary audio input (loop source in RECORD, overdub in MIX) |
| Audio In 2 | Secondary audio, mixes with Audio In 1 when connected |
| CV In 1 | Adds to Big Knob (bipolar) |
| CV In 2 | Adds to Y knob (bipolar) |
| Pulse In 1 | Record trigger (rising edge starts recording) |
| Pulse In 2 | Loop reset (YOLO) / enter SELECT_SLOT (SLOT, Z Down) |
| Audio Out 1 | Processed loop output |
| Audio Out 2 | Dry Audio In 1 monitor |
| CV Out 1 | Loop position (0V to ~+2V) |
| CV Out 2 | Output envelope |
| Pulse Out 1 | Loop boundary clock |
| Pulse Out 2 | Record complete pulse |