Xfer Records presents SHRUB

Operation
Guide

Firmware V1.00 for the M-VAVE FM-1 · the SHRUB editor · the SHRUB VST3

SHRUB

A stripped-down version of Serum for the M-VAVE FM-1.
Firmware for the FM-1, an editor in your browser, and a VST3 for macOS, Windows and Linux.

Firmware V1.00 · Guide version 1.0 · November 2026

Get it, play it, install it: shrub.audio

Made by Steve Duda, with a lot of help from the people who tested it early and told us what was broken. Thank you, all of you.

Questions, bugs, ideas, love letters: steve@xferrecords.com, or the Feedback button in the editor (it fills in the details we need).

SHRUB is copyright 2026 Xfer Inc. All rights reserved.

SHRUB is free. It isn't made, sold or supported by M-VAVE, and installing it is at your own risk (the installer only writes the part of the FM-1 an update is meant to, and you can always go back to M-VAVE's firmware). Serum is a trademark of Xfer Records. M-VAVE and FM-1 are the trademarks of their owners. VST is a trademark of Steinberg Media Technologies GmbH.

This guide is set in Lato and Raleway (SIL Open Font License). SHRUB's own screens are set in Barlow Semi Condensed (SIL Open Font License).

Table of Contents

    Welcome

    SHRUB turns the M-VAVE FM-1 into a little wavetable synth with a lot of Serum inside it: real Serum wavetables and warps, Serum's filters, envelopes and LFOs, a 16-slot mod matrix, the Serum 1 effects rack, an arp, a motion sequencer, and 100 presets to start you off.

    It's free, it's made because we love this stuff, and it should sound good the moment you turn it on. This guide is here for when you want to know what a knob does, find the trick you forgot, or get your Serum presets onto the box.

    What's in the box (so to speak)

    The quick start

    1. Plug your FM-1 into your computer with USB and turn it on.
    2. Open shrub.audio/editor/install in Chrome or Edge, press Use the SHRUB on this site, then Install. It takes about two minutes. (Details in Getting SHRUB on your FM-1.)
    3. When it restarts, play. Turn PRESETS to browse sounds. Press EDIT, ENV, LFO or FX to dig in.
    4. Want to see everything at once? Open shrub.audio/editor and press Connect FM-1.

    Coming from Serum? You already know how most of this works. Skim the SHRUB vs Serum chapter, especially the bit about the filter, and you're set.

    Part 1

    On the FM-1

    Every page, every knob, and all the little moves that aren't printed on the panel.

    Getting SHRUB on your FM-1

    SHRUB installs from a web page, over the same USB cable you use for MIDI. No drivers, no apps. You need Chrome or Edge on a computer (Safari and Firefox don't have the Web MIDI it uses).

    1. Connect the FM-1 to your computer with a USB cable and turn it on.
    2. Close the SHRUB editor, M-VAVE's updater and any music software that's using the FM-1.
    3. Open shrub.audio/editor/install.
    4. Press Use the SHRUB on this site for the latest version, or Choose package (.fwsc)… if you have a file.
    5. Press Install and allow MIDI when the browser asks.
    6. Leave the cable alone until the installer says it's done, about two minutes. The FM-1 shows SHRUB UPDATE while it's working.

    That's it. It restarts into SHRUB, shows the splash and lands on the HOME page.

    The installer

    Updating to a newer SHRUB later is the same thing again. Your user presets and wavetables stay put.

    If something goes wrong

    Going back to M-VAVE's firmware

    Any time you like. Get the official firmware package from M-VAVE and run their updater as you normally would. The FM-1's boot code is never touched by SHRUB's installer, so the way back always works.

    The lay of the land

    Seven endless knobs, one volume knob, fourteen buttons, 27 keys and a little screen. Here's what each of them does in SHRUB.

    The knobs

    ControlWhat it does
    MASTERVolume. The little caret on the meter in the top corner of every page shows where it is.
    PRESETSBrowse presets, from any page. The name shows straight away and the sound loads once you stop turning (so you can spin past twenty presets without loading them all). It always takes you to HOME.
    SELECTTurns the pages of the part you're on (the dots in the header show which page). On SAVE it moves the cursor, on SEQ it picks the lane.
    ALGORITHMThe part's "type" knob: the wavetable on an oscillator, the filter type, an LFO's mode, an effect's mode, the arp's pattern. On HOME it jumps between preset categories.
    KNOB 1–4The four knobs drawn along the bottom of the screen. They change with every page.

    The knobs speed up when you spin them. Turn slowly for fine moves (1% a click), flick for big ones. Values glide smoothly between clicks, like a real pot.

    The buttons

    Each section button opens its section. Press it again to step to the next part of that section. Pills across the top of the screen show that section's parts, with the one you're on lit: always on ENV and LFO, for a moment after each press on EDIT and GLO. You can also hold EDIT, ENV or LFO and turn SELECT to move through the parts either way.

    ButtonOpensPress again for
    EDITOSC AOSC B → SUB → FILTER
    ENVENV 1ENV 2 → ENV 3 → MATRIX
    LFOLFO 1LFO 2 → LFO 3 → LFO 4 → CHAOS → MATRIX
    FXFX RACKeach effect that's in the rack, in rack order
    GLOVOICINGGLOBAL → MACROS
    SCLSCALE—
    HOMEthe preset's home pagehold it to make the preset a favorite
    ARPthe arpturns the arp on and off
    SEQthe sequencer's lanesdoes what POINT says (delete, clear lane, clear all)
    SAVEthe save pagesaves
    PLAYStarts and stops the transport (arp, lanes, click). Its light blinks with the beat.
    RECRecords knob moves and notes into the sequencer's lanes. Starts the transport if it's stopped.
    OCT− / OCT+Shift the keys an octave down or up, three octaves each way. OCT− stays lit while you're below the middle octave, OCT+ while you're above it.

    The keys and their lights

    The 27 keys play at a fixed velocity of 100 (they don't sense how hard you hit them). Their lights show the notes that are sounding, wherever they come from: your fingers, MIDI, or the arp. On the SCALE page they light up the scale instead. If you play in the dark, KEY LIGHT on the GLOBAL page makes the unlit keys glow faintly.

    The screen

    Every page is laid out the same way:

    • The header: the part's name in its Serum colour, dots for its pages, and the output meter (green to yellow to red, with MASTER's caret on it).
    • The display: the part's picture. Wavetables in 3D, envelope and LFO shapes with the playing position moving along them, the filter's curve, the effects doing their thing.
    • The deck: four Serum knobs for KNOB 1–4. A knob that's being modulated wears a blue ring showing the range the modulation moves it through.

    When you change a stepped value (a wavetable, a filter type, a mode) its name shows up big over the display for a moment.

    OSC A: header, display, deck

    HOME and presets

    HOME is where SHRUB starts and where PRESETS always brings you. It shows the preset's number and its name big, its category as the title (in the category's colour), both oscillators with their wavetables' names, and the effects that are on.

    Its four knobs are the ones you'll reach for most: CUTOFF, RES, and both oscillators' wavetable positions, A POS and B POS. The preset's LEVEL is on the GLOBAL page.

    HOME

    The presets

    There are 128 preset slots. Slots 1 to 100 hold the factory presets, sorted into seven categories: BASS, LEAD, MISC, PAD, PLUCK, SEQ and SYNTH. Slots 101 to 128 start out as INIT, ready for yours. You can save over a factory slot too; it shows a U in front of its number (U007) once it's yours.

    Every preset starts clean: when one loads, SHRUB fades out what's playing (in about 3 ms), clears every effect's tail and the filter, and then brings in the new sound. No thumps, no reverb from the last preset bleeding in.

    Favorites

    Hold HOME for a moment (about half a second) to make the preset a favorite. Its title gets a star (PAD *). Hold it again to take it off. Once you have favorites, ALGORITHM on HOME also steps through a FAVORITES group, and PRESETS stays among them while you're in it.

    "EDITED, TURN AGAIN"

    If you've changed the sound and then bump PRESETS, SHRUB doesn't throw your edits away. It says EDITED / TURN AGAIN. Pause a moment and turn again to move on (and lose the edits), or press SAVE to keep them.

    Power off, pick up where you left off

    SHRUB quietly saves the sound you're working on (and its lanes) a couple of seconds after you stop changing things. Turn it off, turn it on, and you're back where you were. This isn't the same as saving a preset, though: it's just your current sound.

    Saving your sounds

    Press SAVE. The save page shows the slot it will save into, the name, and what's in that slot now (REPLACES …).

    KnobsSLOT1–128CURSORor SELECTLETTERor ALGORITHMCATEGORY7 of them

    Pick a slot, spell the name (up to 16 characters: letters, numbers, space and -+./#&![]), pick a category, then press SAVE again. It says SAVED.

    Pressing any other section button leaves without saving.

    SAVE

    Saving a factory preset you've tweaked? SAVE opens on the first free INIT slot, so you don't overwrite the original by accident. Saving your own preset opens on its own slot.

    If the sound has sequencer lanes, the page says SAVE AGAIN: SOUND + LANES, and they're saved with it. The things you might see afterwards:

    MessageWhat it means
    SAVEDAll good.
    SAVED, THINNEDThe lanes were too detailed to fit, so SHRUB smoothed them a little.
    SAVED, NO LANESThe lanes didn't fit at all. The sound is saved without them.
    SAVED, AUX CUT / LFOS CUT / NO LFO 4A very big patch had to lose a little to fit its slot (an aux modulation, or an LFO's drawn shape).
    NOT SAVED: STORAGE FULLThe FM-1's preset memory is full. Free some room in the editor's LIBRARY (or save over an old slot).

    EDIT: the oscillators, sub, noise and filter

    Press EDIT for OSC A, and keep pressing for OSC B, SUB and FILTER. SELECT turns each part's pages.

    OSC A and OSC B

    Two wavetable oscillators, just like Serum's. ALGORITHM picks the wavetable: 64 built in (Serum 2's, a pack from Serum 1, the tables its factory presets use, and a few rule-based ones), the user tables you load from the editor, and ADDITIVE, a table you build from harmonics.

    OSC A
    PageKnob 1Knob 2Knob 3Knob 4
    1WT POSwhich frame playsWARPthe warp modeAMOUNThow much warpLEVEL
    2VOICESunison, 1–8DETUNEBLENDcenter vs. detunedWIDTHstereo spread
    3OCTSEMIFINERANGEunison detune range
    4PANPHASEwhere notes start; MEM at the topRANDrandom start phase

    ALGORITHM: the wavetable. With ADDITIVE chosen, three more pages appear for its harmonics (pick a harmonic and set its level and phase; gain, mode, warp, start, end, curve and frames).

    The warp modes are Serum's own: OFF, SYNC, SYNC WIN, SYNC 1/2 WIN, BEND+, BEND−, BEND+/−, PWM, ASYM+, ASYM−, ASYM+/−, FLIP, MIRROR, REMAP 8SQR, REMAP 16SQR, REMAP FLAT, REMAP BLACK, QUANTIZE, PD (B), FM (B), FM (NOISE), FM (SUB), AM (B), AM (NOISE), AM (SUB), RM (B), RM (NOISE), RM (SUB). On OSC B, the "(B)" ones read "(A)".

    SUB and NOISE

    PageKnob 1Knob 2Knob 3Knob 4
    1SHAPEOCT−4 to +4SUBits levelNOISEits level
    2COLORNOISEPITCH

    ALGORITHM: the sub's shape: SINE, TRIANGLE, SQUARE, SAW, ROUND RECT or PULSE.

    The noise comes in five colours: WHITE, PINK, BROWN, BLUE and CRUSH. PITCH at 50% is the noise as it is. Turn it down and it rumbles, turn it up (to +1 octave) and it hisses brighter.

    FILTER

    Serum's filters, 76 types of them: the SVFs (LP, HP, BP, PEAK, NOTCH in 6, 12 and 24 dB), Serum 1's MG LOWs, the ladders (MG LADDER, MG DIRTY, ACID LADDER), FRENCH LP, BANDREJECT, ALLPASSES, REVERB, all 32 combs, flangers and phasers, and the dual-filter combos (L+H, L/B/H and friends).

    FILTER
    PageKnob 1Knob 2Knob 3Knob 4
    1CUTOFFRESDRIVEMIXdry vs. filtered
    2FATthe type's extra knobKEY TRKENV 2ENV 2 into cutoffSTEREOcutoff spread L/R
    3AOSC A through itBOSC BNnoiseSsub

    ALGORITHM: the filter type. FAT is whatever the type's second knob is in Serum (Smooth, Pain, Width, Damp, Boeuf, and so on).

    One filter for all the voices. SHRUB has a single filter that every note plays through together (a "paraphonic" filter), not one per voice like Serum. One note sounds just like Serum. Chords share the filter and its envelope, and the resonance rings with the loudest note. More about it in The one filter.

    ENV: the envelopes

    Three Serum envelopes. ENV 1 is each note's volume. ENV 2 is wired to the filter's ENV 2 knob and the matrix, ENV 3 to the matrix only.

    PageKnob 1Knob 2Knob 3Knob 4
    1ATTACKDECAYSUSTAINRELEASE
    2HOLDA CURVED CURVER CURVE
    ENV 1

    The display draws the envelope with Serum's curves and a dot riding along it for the newest note.

    ENV 1 is per note. ENV 2 and ENV 3 are shared by all notes: a new note restarts them from where they are, and they let go when the last key is up. Great for filter sweeps on chords; just know that it's one sweep, not one per note.

    LFO: the LFOs, chaos and the matrix

    LFO 1–4

    Four LFOs, drawn as Serum draws them, with the playing position moving along the shape. They're shared by all the notes.

    LFO 2
    PageKnob 1Knob 2Knob 3Knob 4
    1RATEHz, or a note length with BPM onSKEWwhere the peak sitsDESTwhere it goesAMOUNThow much
    2BPMtempo syncMODEPHASEBIPOLAR
    3STARTlevel at the startPEAKlevel at the peakENDlevel at the endRANDOMOFF, S&H, SMOOTH
    4POINT XPOINT Yan extra pointSMOOTHDEPTH

    ALGORITHM: the mode: FREE (keeps running), RETRIG (restarts with each note) or ENVELOPE (runs once per note, like an envelope).

    DEST and AMOUNT are a shortcut into the matrix: they edit the first matrix slot this LFO feeds. Turn DEST on an LFO that goes nowhere yet and SHRUB grabs a free slot for it. With BPM on, RATE steps through 43 note lengths (straight, dotted and triplet).

    The shape is a skewed triangle out of the box: START, PEAK (at SKEW) and END, plus the optional extra POINT. Want a saw? Peak at the start. A ramp up? Peak at the end. Want something wild? Draw it in the editor (up to 17 points with curves) and it plays on the FM-1 too.

    CHAOS

    Two strange attractors from Serum 1: CHAOS 1 is a Lorenz, CHAOS 2 a Rössler. Each gives the matrix two smooth, never-repeating wiggles, X and Y. Lovely for slow movement that never quite loops.

    KnobsRATEchaos 1BPMchaos 1 syncRATEchaos 2BPMchaos 2 sync

    MATRIX

    Sixteen slots, Serum's layout. Each slot takes a source to a destination by an amount. KNOB 1 picks the slot on every page; the other knobs edit it.

    The matrix comes last when you press ENV again and again, and last on LFO too, since both are buttons for modulation sources. It's the same matrix from either one.

    PageKnob 1Knob 2Knob 3Knob 4
    1SLOT1–16SOURCEDESTAMOUNT
    2SLOTBIPOLARCURVE
    3SLOTAUXa second source scaling itMODEaux in or invertedAUX CURVE

    The sources:

    LFO 1LFO 2LFO 3LFO 4ENV 1ENV 2ENV 3CHAOS 1XCHAOS 1YCHAOS 2XCHAOS 2YNOTERANDVELOCITYMOD WHEELAFTERTOUCHBENDMACRO 1MACRO 2MACRO 3MACRO 4

    And the destinations are pretty much every knob in SHRUB that turns smoothly: pitches, levels, WT POS, warp, unison, the filter, envelope times, LFO rates and shapes, every effect's main knobs, and the macros' targets.

    FX: the effects rack

    Serum 1's effects, in a rack of seven slots. The FX RACK page lists the slots; press FX again to step through the effects that are in the rack, in order.

    KnobsSLOT1–7MODULEwhat's in itMOVEup or down the rackONon or off

    The modules: HYPER/DIM, DISTORTION, FLANGER, PHASER, CHORUS, DELAY, COMPRESSOR, REVERB, EQ and FX FILTER. On an effect's own page the rack runs across the top as chips, lit when they're on.

    FX RACK
    EffectKnob 1Knob 2Knob 3Knob 4
    HYPER/DIMUNISONRATEDETUNEMIX
    page 2DIM SIZEDIM MIX
    DISTORTIONDRIVEMIXLEVELFILTEROFF, PRE, POST
    page 2FREQQLP/HP
    FLANGERRATEDEPTHFEEDBACKMIX
    page 2BPMWIDTH
    PHASERRATEFREQDEPTHFEEDBACK
    page 2BPMWIDTHPOLESMIX
    CHORUSRATEDEPTHFEEDBACKMIX
    page 2DELAY 1DELAY 2LPF
    DELAYTIME LTIME RFEEDBACKMIX
    page 2BPMLINKFREQBW
    COMPRESSORDEPTHRATIO in single bandTHRESHUPWARDATTACK in single bandTIMERELEASE in single band
    page 2GAINMIXOTTmultiband on/off
    REVERBSIZEDECAYWIDTHMIX
    page 2LOW CUTHIGH CUTSPIN
    EQFREQ 1Q 1GAIN 1TYPE 1
    page 2FREQ 2Q 2GAIN 2TYPE 2
    FX FILTERCUTOFFRESDRIVEMIX
    page 2FATSTEREO

    ALGORITHM on an effect's page is its mode, or just on and off. The EQ's bands are LO SHELF, PEAK or HP, and HI SHELF, PEAK or LP.

    Distortion
    Chorus
    Delay
    Compressor

    GLO: voicing, global settings and macros

    VOICING

    PageKnob 1Knob 2Knob 3Knob 4
    1MONOLEGATOGLIDEportamento timeALWAYSglide even when detached
    2RAND CUTRAND TUNRAND PANRAND VOL

    SHRUB plays up to four notes at once, each with up to eight unison voices per oscillator, from a pool of 16 voices. A thick unison patch plays fewer notes; one note always plays. MONO keeps the keys you're holding (let go of the top one and it goes back to the one still held). LEGATO doesn't restart the envelopes on a note played over another, and works in poly too.

    Page 2 is per-note random: each new note gets its own little nudge of cutoff, tuning, pan and volume. A touch of RAND TUN and RAND VOL goes a long way toward sounding alive.

    SHRUB watches its own CPU as it plays. If a new note wouldn't fit, it takes over a voice that's already sounding (smoothly, no click) rather than glitching. Heavy patches simply play fewer notes.

    GLOBAL

    PageKnob 1Knob 2Knob 3Knob 4
    1TEMPOBPM, 120 to startLEVELthe preset's volumeCLICKOFF, ON, RECARP+SCALEPRESET, GLOBAL
    2VOICESvoice control steps, OFF–8STEPPANTUNE
    3MIDI CHOMNI or 1–16USB LEVELKEY LIGHTOFF, PNO1–5 (keys), ALL1–5 (keys and buttons)BEND RANGEOFF, 2, 7, 12, 24

    Page 1 also shows a little system status: the CPU load, USB, the second core, the battery (BATTERY nn%) and the firmware version.

    Hold GLOBAL for a moment (about half a second) for the shrub: the splash's tree, a new one each time, its leaves lighting up with the sound. Play the keys, or start a sequence, and watch it. While it's up, the four knobs reshape it as you turn them: knob 1 how many times it branches, knob 2 how tall it grows, knob 3 the lit leaves' colors (six sets), and knob 4 how far its branches spread, from a tight column to a wild tangle. Press any button (except PLAY, REC and the octave buttons) or turn SELECT, PRESETS or ALGORITHM to go back.

    MACROS

    Four macro knobs, MACRO 1–4. On their own they do nothing: they're matrix sources, so route them in the matrix (or drag them onto knobs in the editor) and one knob can move a bunch of things at once. The page lists where each one goes. Factory MIDI CCs 16–19 turn them.

    SCL: scales

    KnobsKEY-- (off), C to BSCALECHORDOFF, or a chord

    Pick a key and one of Serum 2's 51 scales, and every note snaps into it: the keys, MIDI, the sequencer and the arp. SELECT and ALGORITHM, one above the other, turn the key and the scale too. While you're on this page the keys light up the scale. The scale is saved with the preset.

    The scales: Major, Minor and the modes (Dorian, Phrygian, Lydian, Mixolydian, Locrian), the harmonic and melodic minors, pentatonics and blues, a whole world of others (Hirajoshi, Iwato, Klezmer, Persian, Bebop, Whole Tone, Hexatonic…) and Chromatic.

    CHORD turns the keyboard into a chord player. The white keys play the scale's steps, with C playing the key's root, and each plays a chord built from the scale's own notes. The black keys pick the chord, from the lowest F#: ROOT (single notes), 3RD, TRIAD, 7TH, 9TH, SUS2, SUS4, 6TH, POWER, OPEN and OCTAVE. While it's on, every key glows, the white keys brighter than the black, and the keys you hold and the chord's black key light up fully. The arp, the sequencer and MIDI out get the chord's notes. CHORD is saved with the preset; with the KEY off the chords are in C.

    SCALE

    Set KEY to -- to turn the scale off.

    ARP: the arpeggiator

    Serum 2's algorithmic arp. Press ARP to open it and press ARP again to turn it on or off (its light shows which). Hold some notes and go.

    PageKnob 1Knob 2Knob 3Knob 4
    1RATEGATE1–200%OCTAVES1–4CHANCE
    2OFFSETREPEATSRETRIGLATCH
    ARP

    ALGORITHM: the pattern: UP, DOWN, UP/DOWN, DOWN/UP, UP+DOWN, DOWN+UP, THUMB UP, THUMB UD, PINKY UP, PINKY UD, CONVERGE, DIVERGE, CON+DIVERGE, PLAYED, CHORD, RANDOM, RAND NO DUP, RAND DRIFT, RAND ONCE.

    SEQ: the motion sequencer

    Eight lanes of motion. Record a knob moving and it plays back on a loop. Record notes and it plays those too.

    Recording

    1. Press REC. The transport starts if it wasn't already running.
    2. Turn a knob. Its moves go into a lane, looping with the lane's length. Stop turning for a moment and that take is done.
    3. Play keys while recording and they go into a note lane (one note at a time per lane; up to two note lanes).
    4. Press REC again (or PLAY to stop) when you're done.
    SEQ

    Editing on the SEQ page

    KnobsPOINTa point, CLEAR LANE or CLEAR ALLVALUEits valueTIMEits positionTEMPOLENGTH on a note lane

    The SEQ button's light is on whenever there are lanes in the sound. If something's moving and you don't know why, look there.

    MIDI and USB

    SHRUB listens on USB MIDI and the TRS MIDI IN jack, both the same way, on the channel set by MIDI CH (OMNI or 1–16). It understands:

    SHRUB sends the notes you play on its keys, and MIDI clock (with start and stop) while its own transport runs. USB also carries SHRUB's audio to your computer (see USB LEVEL on the GLOBAL page).

    The factory CC map is in Appendix C.

    Appendix A: The moves that aren't on the panel

    The cheat sheet. Everything you can do by holding, pressing twice, or doing at power-on.

    Do thisWhereAnd this happens
    Press a section button againany sectionSteps to the section's next part (OSC A → OSC B → SUB → FILTER, and so on).
    Press FX againFXSteps through the effects in the rack, in their order.
    Hold HOME (½ second)anywhereMakes the preset a favorite, or not.
    Hold GLOBAL (½ second)anywhereThe shrub, its leaves lit by the sound. KNOB 1–4 shape it; any button or SELECT, PRESETS or ALGORITHM goes back.
    ALGORITHMHOMEJumps to the next or previous category (and FAVORITES).
    Turn PRESETS twicean edited soundThe first turn says EDITED / TURN AGAIN. Pause, then turn again to leave it.
    Press ARP againARPTurns the arp on or off.
    Press SAVE againSAVESaves. Any other section button leaves without saving.
    Press SEQSEQDeletes the point POINT shows, clears the lane, or (pressed twice) clears all.
    ALGORITHMSEQHalves or doubles the lane's length.
    DEST on an LFO pageLFO 1–4Routes the LFO in the matrix, grabbing a free slot if it needs one.
    RECanywhereStarts recording, and the transport if it's stopped.
    Any key, button or knobthe splashSkips the splash.
    Hold OCT− and OCT+ while turning onpower-onUSB recovery mode (keep holding a second).
    Hold GLO while turning onpower-onTurns SHRUB's second processor core off (or back on) for troubleshooting.

    Appendix B: Recovery and troubleshooting

    USB recovery mode

    If the FM-1 won't start properly, it can always be rescued. Connect the USB cable, then hold OCT− and OCT+ while you turn it on. It says KEEP HOLDING OCT- AND OCT+ FOR USB RECOVERY; keep holding until it says USB RECOVERY. Now the FM-1's own recovery mode is waiting for the recovery tools (or run the installer again).

    SHRUB looks after itself

    Little things

    Appendix C: The factory MIDI CC map

    Out of the box, these CCs turn these knobs. Change it in the editor (MIDI Learn, or File > Load MIDI Map) and the FM-1 remembers your map.

    CCKnob
    5GLIDE
    7LEVEL (the preset's)
    16–19MACRO 1–4
    20 / 21WT POS, OSC A / B
    22 / 23warp AMOUNT, A / B
    24 / 25LEVEL, A / B
    26SUB level
    27NOISE level
    28 / 29DETUNE, A / B
    30BLEND, A
    31filter MIX
    70filter DRIVE
    71RES
    72ENV 1 RELEASE
    73ENV 1 ATTACK
    74CUTOFF
    75ENV 1 DECAY
    76 / 77LFO 1 / LFO 2 RATE
    78ENV 1 SUSTAIN
    79FAT
    80ENV 2 to cutoff
    CCKnob
    81 / 82ENV 2 ATTACK / DECAY
    83 / 85ENV 2 SUSTAIN / RELEASE
    86 / 87LFO 3 / LFO 4 RATE
    90HYPER MIX
    91REVERB MIX
    92DISTORTION MIX
    93CHORUS MIX
    94DELAY MIX
    95PHASER MIX
    102FLANGER MIX
    103COMPRESSOR MIX
    104DISTORTION DRIVE
    105DELAY FEEDBACK
    106 / 107REVERB SIZE / DECAY
    108 / 109FX FILTER CUTOFF / RES
    110FX FILTER MIX
    111 / 112EQ GAIN 1 / GAIN 2
    113 / 114ARP RATE / GATE
    120, 123all notes off
    121reset controllers
    64sustain
    Part 2

    The editor and the VST3

    How SHRUB works as a synth, what's different from Serum, and how to get sounds, wavetables and banks in and out.

    Meet the editor

    Every knob of SHRUB on one screen, laid out like Serum 1. It plays SHRUB in your browser, edits your FM-1 live when it's plugged in, and lives in your DAW as the VST3.

    The OSC tab

    The header

    The File menu

    File
    Undo / Redo⌘/Ctrl-Z and ⌘/Ctrl-Shift-Z, 100 steps, the sound and its lanes together.
    Init PresetSerum's init: a saw on A, dry, quick attack and release.
    Open Patch or Serum 1 PresetA .shrub patch or Serum 1 .fxp presets. Pick several and ◀ ▶ step through them.
    Open Serum 1 Folder as a BankEvery .fxp in a folder, to step through.
    Browse Serum 1 Factory PresetsSerum 1's factory presets, ready to play (no Serum needed).
    Save to FM-1 User PresetsInto a slot on the FM-1 (when it's connected).
    Save Patch to DiskThe sound as a .shrub file, lanes and all.
    Export to Serum2The sound as a Serum 2 .SerumPreset.
    User WavetablesImport WAVs and send them to the FM-1.
    MIDI MapLoad, save or reset which CC turns which knob (and in the VST3, save it as the default).
    Update FM-1 FirmwareOpens the installer.
    About SHRUBThe splash and the credits.

    The tabs

    Along the bottom: a keyboard to play (your computer keys play it too, with Z and X for octaves) and the performance sources, NOTE, VELO, RAND, WHEEL, AT and BEND, ready to drag onto knobs.

    Connecting to your FM-1

    1. Plug the FM-1 in with USB. It has to be running SHRUB.
    2. In Chrome or Edge, press Connect FM-1 and allow MIDI when the browser asks.
    3. The editor finds the FM-1, says hello, and pulls in the sound it's playing, its lanes, its presets and its MIDI map.

    From then on it all goes both ways. Turn a knob in the editor and the FM-1 follows; turn one on the FM-1 and the editor follows. Change presets on either. Browser sound turns off so you're hearing the FM-1 itself, and the editor's keyboard plays it over USB.

    Only one program at a time can talk to the FM-1 on Windows. Close the other editor tabs and your DAW's hold on the FM-1's MIDI port if it won't connect. If the editor says the firmware doesn't match, update one or the other so they're the same version.

    How SHRUB makes sound

    If you know Serum, this is familiar territory. If you don't, here's the whole trip from a key to your ears.

    Two wavetable oscillators (A and B), a sub and noise go into the filter, then ENV 1 shapes each note's volume, then everything goes through the effects rack and out. LFOs, envelopes, chaos, macros and your hands move the knobs along the way, through the matrix.

    Oscillators and wavetables

    A wavetable is a stack of single-cycle waves (frames). WT POS slides through them, crossfading from one to the next, which is why moving it sounds like a sweep. The OSC tab draws each table in 3D with the playing frame lit up. Then warp bends the wave on the fly (sync, bend, PWM, FM from the other oscillator or the sub, and so on, all Serum's), and unison stacks up to 8 detuned copies, spread by WIDTH and BLEND.

    The ADDITIVE table builds a wavetable from 24 harmonics you set by hand, and the RULE tables (RULE 30, RULE 90 and friends) grow frames from cellular automata. Both are tiny, so they save with the preset.

    The one filter

    This is the big one to know. SHRUB has one filter, shared by every note. Serum gives each voice its own filter; on the FM-1, a filter per voice would eat the CPU we'd rather spend on voices and effects. So the notes are mixed together first, then filtered (that's what "paraphonic" means).

    Because the filter is shared, SHRUB can afford Serum 2's fancy ones: the ladders, MG DIRTY, FRENCH LP, ALLPASSES, the combs and phasers. Mono basses and leads get the full Serum treatment.

    Envelopes, LFOs and chaos

    ENV 1 is every note's own volume envelope. ENV 2 and ENV 3 are shared: a new note restarts them from where they are and they release when the last key is up. The four LFOs and the two chaos sources are shared too. In Serum terms: think "global" LFOs.

    LFOs in the editor are drawn like Serum's:

    The matrix and modulation

    Sixteen slots. The easy way in: drag a source onto a knob. Grab an ENV, LFO, CHAOS or macro tab (or NOTE, VELO, RAND, WHEEL, AT or BEND along the bottom) and drop it on any knob that lights up. It takes the next free slot at +25%. A modulated knob shows a blue ring for its range.

    The macros (MACRO 1–4) are knobs that only exist to modulate. Drag one onto a few knobs and it moves them all. Its label shows what it's routed to.

    Effects

    Seven slots, Serum 1's modules: Hyper/Dimension, Distortion, Flanger, Phaser, Chorus, Delay, Compressor (OTT or single band), Reverb (Plate, Hall), EQ and a Filter. Move a module up or down the rack with ▲ and ▼, and grab a starting point from the rack presets (sorted by effect). The DSP is ported straight from Serum's effects, so they sound the way you expect.

    The FX tab

    Voices, voice control and random

    Up to four notes, each with up to 8 unison voices per oscillator, from a pool of 16. Mono, legato and glide work like Serum's. GLOBAL has Serum 2's voice control (each new note steps to its own pan and tune) and per-note random (a little random cutoff, tune, pan and volume per note).

    The GLOBAL tab

    Arp, scale and lanes

    The arp (19 patterns, Serum 2's) and the scale (51 scales) are on the GLOBAL tab. The SEQ tab shows the eight lanes the FM-1 records: draw automation and notes, set each lane's length, and export a note lane as a MIDI file (EXPORT MIDI on its head).

    The SEQ tab

    SHRUB vs Serum

    SHRUB is Serum's DNA on a box with a fraction of a laptop's power. Most of it is the real thing; some of it had to be trimmed.

    The same

    Different

    Not in SHRUB (yet, or ever)

    New in SHRUB

    Bringing in Serum 1 presets

    SHRUB reads Serum 1 presets (.fxp) and translates them as closely as it can.

    What comes across

    After an import, the editor lists anything it couldn't carry over (a filter type, a table, an aux source). Read the list: it's usually one small thing, and now you know what to tweak.

    Imported sounds play in the browser right away. To keep one, save it: to the FM-1 (File > Save to FM-1 User Presets), into a LIBRARY slot, or to disk as a .shrub. Its wavetables go along with it.

    Exporting to Serum 2

    Made something on the FM-1 you want in your studio? File > Export to Serum2 (.SerumPreset) writes the sound as a Serum 2 preset, as close to how SHRUB plays it as Serum 2 can get. The wavetables go inside the preset.

    1. Load or make the sound (connect the FM-1 to grab the one it's playing).
    2. File > Export to Serum2. Save the file.
    3. In Serum 2, open it from the preset browser (or drop it in your presets folder).

    What doesn't come across, and the editor tells you: the arp, the scale, voice control and per-note random. A few things sound a touch different: Serum 2 filters per voice, so chords through a resonant filter will sound fuller (the opposite of the one filter); some drive and comb filter settings and the noise and sub warps are a little different too.

    Serum 2 presets can't be imported into SHRUB. Serum 1 presets can.

    Your own wavetables

    File > User Wavetables opens the tables dialog. Drop in WAV files and they become wavetables you can pick on either oscillator.

    Not every table needs 64 frames. A table with 8 or 16 frames sounds the same if that's all its sweep needs, and saves a lot of room. When space gets tight, LIBRARY's Tidy Wavetables cleans out tables nothing uses.

    The LIBRARY and banks

    The LIBRARY tab is a map of your FM-1's 128 preset slots, eight rows of sixteen, coloured by category.

    The LIBRARY tab

    Banks

    A bank is all 128 slots plus their wavetables (and the MIDI map) in one .shrubbank file. The Bank menu loads the Default Shrub bank and the other factory banks, loads and saves your own, wipes the INIT slots, tidies the wavetables, and sorts the slots by category.

    1. Start from the Default Shrub bank, or Get from FM-1.
    2. Drag in the sounds you want, rename and categorize them.
    3. Save the bank to disk, and Send to FM-1.

    Share your banks! A .shrubbank has everything a friend needs, wavetables included.

    Files, at a glance

    FileWhat it isWhere
    .shrubOne SHRUB sound, with its lanesFile > Save Patch to Disk / Open Patch
    .shrubbankAll 128 slots, their wavetables and the MIDI mapLIBRARY > Bank
    .shrubmidimapWhich CC turns which knobFile > Load / Save MIDI Map
    .fxpA Serum 1 preset (import only)File > Open, LIBRARY
    .SerumPresetA Serum 2 preset (export only)File > Export to Serum2
    .wavA wavetable (import)File > User Wavetables
    .midA note lane as a MIDI file (export)SEQ tab, a note lane's EXPORT MIDI
    .fwscA firmware packageThe installer

    MIDI mapping

    Right-click any knob for MIDI Learn, then wiggle a controller. File > Save MIDI Map keeps your map as a file, Reset MIDI Map goes back to the factory map (Appendix C). Connected, the map is the FM-1's: it remembers it. In the VST3, Save MIDI Map as Default makes every new SHRUB start with it.

    The VST3

    The same SHRUB in your DAW: the same engine, the same editor, the same presets.

    Installing it

    Download the zip for your computer from shrub.audio, unzip it, and put Shrub.vst3 in your VST3 folder:

    macOS/Library/Audio/Plug-Ins/VST3 (or ~/Library/Audio/Plug-Ins/VST3 for just you)
    WindowsC:\Program Files\Common Files\VST3
    Linux~/.vst3

    Rescan plug-ins in your DAW and load Shrub as an instrument.

    A note on the VST3

    While it works as a free VST3 instrument, it isn't really designed as one, though I did spend some extra time so it would be a decent experience. It's 1:1 in sound with the firmware, and it isn't entirely performant: it may look light in your DAW, but Task Manager will tell another tale, because it runs the device's own code. That's on purpose: it's meant to be sound-compatible, and mostly to be an editor and librarian with the convenience of your DAW instead of a web page.

    What's the same, what's different

    Appendix D: Editor shortcuts

    Do thisAnd
    ⌘/Ctrl-Z, ⌘/Ctrl-Shift-ZUndo, redo (the sound and its lanes)
    Computer keys A, W, S, E, D…Play notes (Z and X shift the octave)
    Drag a source onto a knobModulate it (next free matrix slot, +25%)
    Alt-drag a modulated knobChange the depth from the selected source
    Right-click a knobMIDI Learn
    Alt-drag an LFO pointSnap it to the grid
    Double-click an LFO line / pointAdd / remove a point
    Double-click a curve handleStraighten the segment
    Shift-drag in an LFOPaint flat steps (pencil)
    Alt-drag a LIBRARY slotCopy it

    That's everything. Now go make some noise, and tell us what you make.
    — Steve and everyone who helped make SHRUB