The manual.
Everything WBTRK does, in the order you will meet it — a five-minute quick start, then every page, every engine and every effect. If you have never used a tracker before, start at the top.
The idea
A tracker writes music downwards. Time runs from the top of the screen to the bottom, one row per step, and you type what happens on each step instead of drawing it on a timeline. It is fast, it is exact, and it fits a phone.
WBTRK has three levels, and everything else hangs off them:
- PHRASE — the notes. A short pattern, 16 steps by default. This is where you write music.
- CHAIN — a list of phrases, played in order. This is how a one-bar idea becomes a verse.
- SONG — six channels of chains, side by side. This is the arrangement.
The other pages serve those three: INS is the sound a note plays with, FX the effects a row can fire, TB little programs that run under a note, MX the channel levels, PRJ files and song settings, and OPT everything about the app itself.
Every page has a ? button that explains that page, in the app, at the moment you need it.
Quick start
Five minutes, from an empty app to a loop you wrote.
- Open the app on the PHR page. The grid is empty: 16 rows, four note columns (N1–N4), an instrument column (INS) and two effect columns (FX1, FX2).
- Long-press the N1 cell on row 00. The radial wheel opens — rotate until you hear the note you want, then let go.
- Double-tap N1 on row 04: that places the same note again and plays it. Do the same on rows 08 and 0C.
- Press ▶ in the top bar. The phrase loops while you edit — keep adding notes with it running.
- Change the sound: on INS, use ◀ ▶ beside ENGINE to pick an engine, and PRESET to load a ready-made patch. Back on PHR, your notes play with it.
- Make it a part: on CHA, long-press row 00 and choose your phrase. Add it again on rows 01–03 for a four-bar loop.
- Arrange it: on SNG, long-press row 00 of channel 1 and pick your chain. Press ▶ — that is a song.
- Keep it: PRJ → save now. (The app also autosaves on its own, seconds after every edit.)
The four gestures
The same four gestures work on every grid — phrase, chain, song and table. Learn them once.
| gesture | what it does |
|---|---|
| tap | selects the cell |
| double-tap | places the last value you used — the whole chord, if a chord was last — or clears the cell if it is already filled. Either way it auditions. |
| long-press | opens a picker: the radial wheel for notes, a list for instruments, effects, chains and markers |
| swipe ← → | moves between pages, from anywhere |
The radial wheel
Long-press a note cell and the wheel appears under your finger. Rotate to scroll through notes — it previews each one as you pass, so you can hunt by ear. Dwell on the CHORDS tab to place whole chords instead of single notes. If the instrument has SCALE turned on, the wheel only offers notes that are in key.
Undo
↶ ↷ in the top bar undo and redo any edit, on every page. They are always there.
PHR · phrase
Where the music is written. Each row is one step in time and holds up to four notes (a chord), an instrument, and two effects.
04G-4 A#4 --- --- 01 ARP DELY
- N1–N4 — the notes. Four columns means four-note chords; most of the time you will use N1 alone.
- INS — which instrument plays this row. Leave it empty and the channel keeps the instrument it was already using.
- FX1 / FX2 — up to two effect slots fired on this row.
The header has ◀ ▶ to move between phrases and rec to record from a MIDI keyboard. Below the grid, SELECT marks a range, copy / paste move it (the whole phrase if nothing is selected), and tr +1 / tr −1 shift every note a semitone.
Phrase length is 16 steps by default; PRJ can make it 32 or 64.
CHA · chain
A chain plays phrases in order, one per row — how a one-bar phrase becomes a longer part.
- PHRASE — which phrase this row plays
- TRSP — transposes that row in semitones. +12 is the same phrase an octave up; +5 moves it to the fourth. One phrase, four chain rows, four keys — a chord progression without writing anything twice.
SNG · song
The top level: six channels side by side, each row one song step. Every cell points at a chain. The song is 64 rows long; the page buttons below the grid move through it.
Channels are independent
All six channels share one clock, but each advances to its next row as soon as it finishes its own chain. A channel with a short chain moves on while a longer one is still playing. Nothing drifts, and you never have to pad parts out to equal lengths. An empty cell is simply silent and the channel moves straight past it.
STP and JMP
Two markers, picked from the long-press list past the chains, loop a single channel on its own:
- STP — a silent loop-start. The channel resumes on the row after it.
- JMP — sends that channel back to the row after its nearest STP above (or row 0) and keeps looping.
A drum channel can loop four bars forever while everything else moves through the arrangement.
▶ plays the song from the selected row. On iPad the song page shows a full 32-row page at once.
MX · mixer
Per-channel levels for the six channels, side by side. Each strip has a volume fader, mute / solo buttons and a pan control — press, hold and slide any of them.
- Volume runs 0–150%; the line two-thirds up the fader is 100%, unity
- M mutes, S solos — solo wins, so only solo'd channels are heard
- Double-tap a pan control to re-centre it
- These settings are part of the song and save with it
The mixer also controls AUv3 plug-in channels and what goes out over MIDI, not just the built-in voices.
INS · instrument
The sound a note plays with. Instruments are numbered, and a phrase row's INS column points at one of them.
- ENGINE — ◀ ▶ pick the synthesis engine. Everything below changes with it.
- PRESET — ready-made sounds for the current engine, ten each. The fastest way to hear what an engine can do.
- test — press and hold to audition.
- − + nudge any value; press and hold to sweep.
Sections every engine shares
| AMP ENVELOPE | attack, decay, sustain, release — plus hold. With hold on, sustain stays at its level and the note fades over the release time when it ends: a real ADSR. With it off, sustain slides down on its own, which is how the app has always behaved and what existing songs are written against. |
| FILTER | low-pass, with cutoff and resonance |
| LFO | a modulation source for the built-in voice |
| GROOVE | per-instrument swing: on, plus an amount. Only the instruments you turn it on for are swung. |
| SCALE | locks this instrument to a key — pick a root and a scale, and the note picker only offers notes and chords in it |
| TABLE | attaches a TB-page table; tbl speed sets how many phrase steps each table row lasts |
The 18 engines
The classics
| PULSE | square / pulse with adjustable width — the chip lead |
| SAW | bright and buzzy; the workhorse bass and lead |
| TRI | soft, hollow, gentle |
| FM | two-operator frequency modulation: bells, basses, clangs |
| NOISE | percussion and effects |
| PAD | supersaw stack — wide and warm |
| SUB | deep sine-ish bottom |
| PLUCK | short plucked string |
| WTABLE | wavetable — drag in the editor to draw your own single cycle, then sweep through it |
| MODX | dual-oscillator synth with a four-LFO modulation matrix — the deepest of the classic set |
SAMPLE
A recorded or loaded sound. ● rec records from the mic with a 3-2-1 count-in, up to 15 seconds; load imports an audio file.
- Under the file row: ▶ play previews the current selection, norm normalises, + vol / − vol adjust, and the trim sliders plus cut crop it
- base note is the note that plays the sample at its original pitch
- play mode: one-shot, forward loop, ping-pong or reverse — and it applies to each chop slice too
- Chopping: chop splits into equal slices; beat-chop plus detect auto-slices at every transient — drag sensitivity for more or fewer. Each slice plays from the base note up the keyboard, so a drum loop becomes a playable kit. Drag the amber lines to nudge slice points; clear removes them all.
GRAIN
A granulator playing tiny slices of this instrument's sample (record or load one under GRAIN SOURCE). size sets grain length, density how many per second, position where the playhead starts, and speed how it moves — +1.00x is normal, freeze holds one spot, negative runs backwards. spray scatters grains, pitch ± transposes each one randomly, shape skews the grain fade.
MODAL
A struck resonator — mallet instruments, bells, bars. structure morphs harmonic into stretched bell partials, brightness tilts the high modes, ring time sets how long it rings, and strike pos moves the strike point: some positions silence certain modes, exactly like hitting a string at its middle.
SPEECH
A talking and singing robot with 56 word slots (W00–W55).
- voice: otto (male), igor (deep), ada (female), pip (small and breathy)
- talk — the note picks the word: C-4 plays W0, C#4 plays W1, and so on; pitch sets the voice
- sing — the note is the melody. The voice sings at that pitch, holds the word's vowel while the note lasts, and finishes the word when the next note arrives.
- lyrics — N1 picks the word, N2 is the sung note, so a phrase becomes a lyric sheet with its own melody. A row with only one note bends the word still singing to that pitch: one syllable carrying a whole line, which is melisma.
- Building words: type it how it sounds in the spell field (HEH-LOH, KUM-PYOO-TER) and tap make. Or tap sounds in the SOUNDS grid by hand — the classic 59 speech-chip allophones, with PA1–PA5 as pauses.
The ambient set
Three engines built as fixed eurorack patches, with the real module names on the panel. Each holds indefinitely, so they are made for beds and drones rather than hits.
| DRONE | three oscillators → wavefolder → low-pass gate. Each VCO has its own wave, octave, coarse interval, fine tune, level and pan, so one note spreads right across the stereo field. The wavefolder adds harmonics as you push it; the LPG opens brightness and level together, the way a real gate does. |
| RESONATOR | an exciter striking a tuned resonant loop. strike and bow choose how it is excited — plucked, or bowed and continuous — and geometry, brightness, damping and position shape the body: plucked string, bowed metal, blown pipe. |
| TEXTURE | noise through two resonant filters into an LPG. colour sets the noise; each filter has frequency, Q, level and pan, and track decides whether it follows the keyboard or stays fixed. Fixed is weather; tracking is a breathy voice. |
All three read rise and fall in the FUNCTION section — long, slow envelopes rather than instant attacks.
AUv3
Host an installed plug-in instrument. scan finds them, tap to assign, open shows the plug-in's own interface, and each instrument slot can host its own. A plug-in only registers with iOS after its own app has been opened once — sometimes a reboot is needed before it appears.
FX · effects
The FX page builds numbered slots. A phrase row's FX1 or FX2 column points at one. Slots are shared: every row pointing at the same slot changes together, so editing one slot changes the whole song at once — that is the point. The 4-character name you give a slot is what the phrase page shows.
| effect | what it does |
|---|---|
| LPF / HPF | low- and high-pass filters, with resonance |
| DELAY | time, feedback, wet, tone — and tempo sync |
| REVERB | size, damp, wet |
| XL REVERB | the big one: decay from half a second to thirty, with pre-delay, damping and a modulated tail |
| BITCRUSH | bits, sample rate, drive, mix |
| DISTORT | drive, tone, level |
| ARP | arpeggio: two extra intervals, speed and mode |
| SLIDE-UP / -DN | pitch slide from the note |
| VIBRATO / TREMOLO | speed and depth, on pitch or on level |
| PORTA | portamento — glide from the previous note |
| PITCH-OFF | detune in cents |
| VOL-SLIDE | fades the note up or down while it plays |
| NOTE-DLY | delays the note's start inside the step — the classic way to push a hit off the grid |
| NOTE-CUT | cuts it short inside the step |
| PAN | places the note in the stereo field |
| KILL | silences the channel — an explicit note-off |
| RINGMOD | ring modulation: frequency and mix |
| WAVEFOLD | drive, fold, bias, mix |
| GATE | trance gate — rate, depth, duty, with tempo sync |
| COMB | comb filter: frequency, feedback, damping |
| AUTOPAN | rate, depth, tempo-syncable |
| FLANGE / CHORUS | rate, depth, feedback / mix |
| RETRIG | re-hits the note 2, 3, 4 or 8 times inside the step, with a volume change per hit |
| RANDOM | rolls fresh dice every time a note with it plays. Turn on any target — pitch, volume, envelope, pan — and give each a chance of happening and a range. |
| TEMPO | shifts the speed of the channel this phrase plays on by a ± BPM offset. All channels still share one clock, so they stay locked — just at different rates. |
TB · tables
A table is a small program that runs alongside every note of any instrument it is assigned to, row by row, looping.
- TRANSP re-pitches the note per row — try 0 / +3 / +7 for an instant arpeggio
- VOLUME shapes per-row loudness — a tremolo, or a decay
- FX switches an effect slot on for that row
Attach a table with the table parameter on the INS page; tbl speed there sets how many phrase steps each table row lasts.
PRJ · project
- bpm — the song tempo, 30–300
- phrase length — 16, 32 or 64 steps
- save now / load saved — a manual checkpoint. Snapshot before a big change, reload to discard it.
- save song / load song — export and import a .wbtrk file through the share sheet. Exports are named after the song name on the SONG page.
- render wav — bounce the whole song to audio
- new song / load demo
Your working song also autosaves on its own, seconds after every edit, and reopens at next launch.
OPT · options
- APPEARANCE — 26 themes on ◀ ▶, or build your own: tap any colour row, drag R/G/B and watch the app re-colour live. Editing a built-in forks an editable copy; themes export and import as .wbttheme files.
- FONT — five faces. CLASSIC and BOLD are the system mono; TERM, ARCADE and PIXEL are bundled retro faces. Sizes are matched so the layout never shifts.
- hex numbers — row numbers and IDs in hexadecimal (00–3F), the way classic trackers count. Transpose, volume and BPM stay decimal.
- MIDI — devices, keyboard thru, count-in, MIDI out and MIDI clock
- TRANSPORT — panic silences anything stuck, including plug-ins and external gear. lock screen player puts the song on the lock screen and in Control Centre with cover art in your theme's colours; turn it off to keep WBTRK out of both.
MIDI
Playing and recording
Connect a keyboard on OPT and it plays the app. On PHR, rec records it into the selected row, in one of two modes:
- step — play a chord and the cursor steps to the next row when you lift all keys. +1 +2 +3 skip ahead to leave gaps.
- live — the phrase loops and notes land on the playing row as you play them. Tap a note on screen to remove it.
count-in adds a four-beat lead-in before recording starts.
Driving hardware
Under MIDI OUT, enable a destination, then send playback out drives external gear from the sequencer and send midi clock sends start/stop and 24 PPQN beat clock so it stays in time. monitor shows the last message received, which is the quickest way to prove a cable works.
Tips
- Write one phrase, transpose it in the chain. Four chain rows at 0 / +5 / +7 / +5 is a progression from a single phrase.
- Use one FX slot everywhere. Because slots are shared, changing one delay slot re-times every row that uses it — mix by editing slots, not rows.
- NOTE-DLY is your groove. A step or two of delay on a snare or hat does more for feel than any amount of quantising.
- Let channels breathe. Channels advance independently, so a three-row chain against a four-row chain gives you a shifting pattern for free.
- Queue phrases live. With the song playing, stepping to another phrase switches at the loop boundary — a performance tool, not a bug.
- Snapshot before you experiment. save now on PRJ, then wreck the song happily; load saved brings it back.
Something unclear, or missing here? Support page, or write to me — I answer everything.