OrDrumbox v2 User Manual
Table of Contents
1. Getting Started
OrDrumbox v2 is a browser-based drum machine and pattern sequencer. When you open the application, you see:
- Toolbar at the top — main controls
- Pattern Panel — the step sequencer grid
Basic Workflow
- Select a Pattern from the Pattern dropdown
- Click Start to begin playback
- Click on the grid to add/remove notes
- Click a track name to open the Track Editor
- Click a note cell to open the Note Editor
- Use Auto Gen to enable automatic pattern regeneration (toggle)
2. Toolbar
The toolbar is the fixed control bar at the top of the screen.
Controls
| Button / Control | Description |
|---|---|
| Start / Stop | Toggles playback. Red background when running. |
| BPM | Click to open the tempo slider (range: 20–250 BPM). |
| Pattern | Dropdown to switch between patterns. |
| Kit | Dropdown to switch drumkits (samples load on first use). |
| Auto Gen | Toggle button. When active (green), the pattern is automatically regenerated on section boundaries using genre-based song structure. Click again to disable. |
| Clear | Removes all notes from the current pattern (asks for confirmation). |
| Tools | Opens the Tools panel (export/import, pattern name). |
| Output | Opens the Output panel (master mixer, spectrum analyzer). |
3. Pattern Panel
The Pattern Panel displays all tracks as horizontal step grids below the toolbar.
Display
- Pattern name (red), BPM, beat count, and track count are shown in the header.
- Each track row shows: track name + step grid.
Cell Colors
| Appearance | Meaning |
|---|---|
| Dark cell | Empty step |
| Red cell (varying opacity) | Note present — opacity proportional to velocity |
| White outline | Selected note or track |
| Left border | Start of a beat |
| Right white border | Loop point |
| Pitch indicator (small bar inside cell) | Shows pitch offset direction |
| Semi-transparent red (with number) | Note with trigger frequency > 1 |
| Orange (with number) | Note with probability < 1 |
| Blue rectangle (half-height, semi-transparent) | Retrigger sub-hit |
| Yellow rectangle (half-height, semi-transparent) | Euclidean fill sub-hit |
Interactions
| Action | Result |
|---|---|
| Click empty cell | Creates a note and opens Note Editor |
| Click a note | Selects it and opens Note Editor |
| Click a selected note | Deletes it |
| Click track name | Opens Track Editor for that track |
4. Track Editor
The Track Editor opens when you click a track name. It contains all track-level parameters organized in groups.
Basic / Transport
| Control | Range | Default | Description |
|---|---|---|---|
| Mute | — | off | Mutes the entire track |
| Mono | on/off | off | Forces monophonic playback |
| Auto | on/off | off | When enabled, this track is automatically regenerated at each loop boundary using the pattern generator |
| Variation | 0–100% | 0 | Automatic beat randomization intensity. Each loop iteration gets a fresh budget of operations (100% = 16 pts). Operations are applied greedily until the budget is exhausted. |
Variation
The Variation slider (0–100%) controls the intensity of automatic beat randomization applied on each loop iteration. At 0%, the pattern plays as-is. As you increase the value, the sequencer randomly adds anticipation notes, doubles, ghost notes, silences, and tweaks velocity or pitch — making the beat evolve over time without manual editing. Each loop gets a fresh set of variations, so the pattern never repeats exactly the same way.
Levels / Pitch
| Control | Range | Default | Description |
|---|---|---|---|
| Velo | 0–1 | 1.0 | Track volume multiplier |
| Pan | -1 to 1 | 0 | Stereo panning (left/right) |
| Pitch | -24 to 24 | 0 | Pitch offset in semitones |
| Decay | 0–2 s | 0.5 | Sample decay time (exponential fade-out from peak to silence) |
All four parameters support LFO modulation (click the row to open LFO settings).
Filters
| Control | Range | Default | Description |
|---|---|---|---|
| Type | lowpass, highpass, bandpass, peaking, lowshelf, highshelf, notch, allpass | allpass | Biquad filter type |
| Freq | 0–1 | 20 | Cutoff frequency (normalized, maps to 20Hz–20kHz) |
| Q | 0–1 | 0.707 | Filter resonance |
The Freq and Q parameters support LFO modulation.
Effects
Each effect has an LED toggle (green = active). Tabs 1/2/3 are on the same line as the "Effects" title.
Reverb
| Control | Options | Default | Description |
|---|---|---|---|
| LED | on/off | on | Enable/disable reverb (green = active) |
| RevT | none, room, hall, plate, spring, gated | none | Reverb preset |
| RevV | 0–1 | 0 | Wet/dry mix |
Reverb Presets:
- room — Small room (0.8s decay)
- hall — Large hall (2.4s decay)
- plate — Plate reverb (1.6s decay)
- spring — Spring with ripple (1.2s decay)
- gated — Gated reverb (0.7s, cuts off at 65%)
Delay
| Control | Options/Range | Default | Description |
|---|---|---|---|
| LED | on/off | on | Enable/disable delay (green = active) |
| DelTy | none, slap, tape, pingpong | tape | Delay algorithm |
| DelT | 0.0625, 0.125, 0.25, 0.5, 1, 2, 4 | 1 | Delay time (beat multiplier) |
| DelV | 0–1 | 0 | Wet mix |
Delay Types:
- slap — Single echo, short feedback
- tape — Tape delay with filter, warm feedback
- pingpong — Stereo ping-pong between left and right
Saturation (Sat)
| Control | Options/Range | Default | Description |
|---|---|---|---|
| LED | on/off | on | Enable/disable saturation (green = active) |
| SatT | soft, hard, tape | soft | Saturation algorithm |
| SatV | 0–1 | 0 | Drive amount |
Saturation Types:
- soft — Smooth tanh-based clipping
- hard — Hard clipping
- tape — Analog tape warmth
LFO Sub-Panel
Click any LFO-capable row (Velo, Pan, Pitch, Freq, Q) to open the LFO editor.
| Control | Range | Default | Description |
|---|---|---|---|
| LED | on/off | off | Enable/disable LFO |
| Type | sine, triangle, sawtooth, square | sine | LFO waveform shape |
| Freq | 0.1–2 | 1 | LFO rate (cycles per 4 beats) |
| Min | varies | parent min | LFO sweep minimum |
| Max | varies | parent max | LFO sweep maximum |
| Phas | 0–1 | 0 | Phase offset |
Sound Sub-Panel
| Control | Description |
|---|---|
| autoassign | LED toggle (green = active). When on, automatically assigns the best sample from the drumkit based on track name. |
| Instr | Instrument type selector |
| Sample | Specific sample file selector |
| Synth | Soft-synth generated sound selection |
| Edit | Opens the Synth Editor for the selected generated sound |
Loop / Pattern Sub-Panel
| Control | Range | Default | Description |
|---|---|---|---|
| Steps/Beat | 1–8 | 4 | Number of steps per beat |
| Beats | 1–16 | 4 | Number of beats in the pattern |
| Loop Point | 1–(beats×steps/beat) | end | Step where the track loops back |
| Swing | 0–1 | 0 | Shuffle amount for odd-numbered steps |
5. Note Editor
The Note Editor opens when you click a note in the Pattern Panel. It shows per-note parameters.
Header
- Track name, position (beat X step Y), and close button.
Vel / Pitch / Pan
| Control | Range | Default | Description |
|---|---|---|---|
| Vel | 0–1 | 0.8 | Note velocity (volume) |
| Pitch | -24 to 24 | 0 | Semitone offset from C3 |
| Pan | -1 to 1 | 0 | Per-note panning |
Triggers
| Control | Range | Default | Description |
|---|---|---|---|
| Every | 1–16 | 1 | Play every N-th loop (1 = every loop) |
| Pos | 0–15 | 0 | Phase offset for trigger frequency |
| Prob | 0–1 | 1 | Probability of triggering (1 = 100%) |
How triggers work:
A note triggers when: (currentLoop + pos) % every === 0
Retrig
| Control | Range | Default | Description |
|---|---|---|---|
| Retrig | 1–16 | 1 | Number of retrigger sub-hits |
| Rate | 1–16 | 1 | Spacing between retrigger hits |
| Eucl | 0–16 | 0 | Euclidean fill: adds N evenly-spaced sub-hits between this note and the next |
| Prob | 0–1 | 1 | Probability for retrig, euclidian, and arp sub-notes (1 = 100%) |
Euclidean fill: Adds N evenly-spaced notes between this note and the next note in the track, creating complex rhythmic patterns.
Retrig Prob: This probability controls whether retrig sub-hits, euclidian fill sub-hits, and arp sub-notes are actually played. The base note (first hit) is always played.
Arpeggiator
| Control | Options/Range | Default | Description |
|---|---|---|---|
| Scale | major, minor, pentatonic, etc. | major | Musical scale for arp intervals |
| Dir | up, down, updown | up | Arpeggio direction |
| Range | 0–12 | 0 | Number of arp notes (0 = disabled) |
How arpeggiator works:
- When
Range > 0, generates pitch offsets from the selected scale - Arp sub-notes use the Retrig Prob probability
6. Tools Panel
The Tools Panel opens when clicking the "Tools" button in the toolbar.
Pattern Settings
| Control | Description |
|---|---|
| Name | Text input to rename the current pattern |
Export
| Button | Format | Description |
|---|---|---|
| Export JSON | .json | Exports pattern data (strips defaults, keeps only changed values) |
| Export MIDI | .mid | Exports as Standard MIDI File (SMF Type 1, multi-track) |
| Export WAV | .wav | Renders audio using OfflineAudioContext |
| Control | Range | Default | Description |
|---|---|---|---|
| Loops | 1–32 | 1 | Number of times pattern loops in WAV/MIDI export |
Export filenames: ordrumbox-{patternName}.{ext}
MIDI Export details:
- Track 0: Tempo + time signature
- Track 1+: One MIDI track per instrument
- Drum tracks → MIDI channel 10
- Muted tracks are excluded
Import
| Button | Description |
|---|---|
| Import JSON | Opens file picker for .json files, imports as a new pattern |
7. Output Panel
The Output Panel opens when clicking the "Output" button in the toolbar. It provides master mixing controls and a real-time spectrum analyzer.
Master
| Control | Range | Default | Description |
|---|---|---|---|
| Volume | 0–2 | 1.0 | Master output volume |
Filters (Master)
The filters section is part of the master bus signal chain, applied after the compressor.
| Control | Range | Default | Description |
|---|---|---|---|
| Low Cut | 10–500 Hz | 35 Hz | High-pass filter (removes low frequencies) |
| High Cut | 1000–20000 Hz | 18500 Hz | Low-pass filter (removes high frequencies) |
Compressor
The compressor section uses a 2-column grid layout and includes pre-gain, compression, and makeup gain controls. The signal chain is: Pre-Gain → Compressor → Low-cut → High-cut → Master Gain.
| Control | Range | Default | Unit | Description |
|---|---|---|---|---|
| Pre-Gain | -20 to +20 | 0 | dB | Input gain before the compressor |
| Threshold | -40–0 | -18 | dB | Compression threshold |
| Ratio | 1–20 | 8 | — | Compression ratio |
| Attack | 0–1 | 0.002 | s | Response speed |
| Release | 0–1 | 0.08 | s | Recovery speed |
| Knee | 0–40 | 3 | dB | Curve softness |
| Makeup | 0–24 | 8 | dB | Output gain to compensate for compression |
Spectrum Analyzer
A real-time frequency spectrum display updated via requestAnimationFrame. Bars are colored from dark (low amplitude) to red (high amplitude).
8. Synth Editor
The Synth Editor is a full-screen overlay for editing soft synthesizer parameters. It opens from the Track Editor's "Edit" button when a generated sound is selected.
Header: OK (saves changes) / Cancel (reverts) buttons.
Master Volume
| Parameter | Range | Default | Description |
|---|---|---|---|
| masterVolume | 0–1 | 0.8 | Synth output volume |
| slide | 0–500 ms | 0 | Portamento/glide time between consecutive notes. When > 0, pitch slides smoothly from the previous note to the new one. |
Oscillators (VCO1, VCO2, VCO3)
Three independent oscillators with PolyBLEP anti-aliasing. Each oscillator has:
| Parameter | Range | Default | Description |
|---|---|---|---|
| gain | 0–1 | vco1:1, others:0 | Oscillator volume |
| octave | -4 to 4 | 0 | Octave offset |
| detune | -100 to 100 | 0 | Fine detuning in cents |
| wave | sine, triangle, sawtooth, square | sine | Waveform |
FM (Frequency Modulation)
| Parameter | Range | Default | Description |
|---|---|---|---|
| amount | 0–1 | 0 | FM depth. When > 0, VCO2 modulates VCO1 frequency and VCO3 modulates VCO2 frequency (serial FM chain). The modulation amount scales the modulator output by ×1000 Hz. |
How FM works:
- The modulator waveform (VCO2 or VCO3) is computed first, then added to the carrier's base frequency.
- At
amount = 0, oscillators run independently (standard subtractive mode). - At
amount = 1, maximum frequency modulation is applied, creating complex sidebands. - FM chain: VCO3 → modulates VCO2 freq → modulates VCO1 freq.
Filter
| Parameter | Range | Default | Description |
|---|---|---|---|
| type | lowpass, highpass, bandpass, notch | lowpass | Filter type (TPT SVF topology) |
| freq | 20–20000 Hz | 400 Hz | Cutoff frequency |
| Q | 0.1–24 | 1 | Resonance (higher = narrower peak at cutoff) |
| Env | 0–1 | 0 | Filter envelope modulation depth. When > 0, sweeps the cutoff frequency upward during the attack phase and back during the decay phase. |
Filter envelope behavior: When Env > 0, the cutoff frequency sweeps from its base value toward 20 kHz during the attack time, then returns to the base value during the decay time. At Env = 1, the sweep reaches the full 20 kHz range.
LFO
There are two independent LFOs (LFO and LFO2) with the same parameters:
| Parameter | Options/Range | Default | Description |
|---|---|---|---|
| target | see target list below | NOT (disabled) | Modulation target |
| wave | sine, triangle, sawtooth, square | sine | LFO waveform |
| freq | 0–20 | 0 | LFO rate in cycles per 4 beats |
| depth | 0–1 | 0 | Modulation depth |
| sync | off, 1/1, 1/2, 1/4, 1/8, 1/16, 1/8T, 1/16T | off | Tempo sync. When set to a note value, the LFO rate locks to the pattern BPM instead of the free-running freq. T = triplet. |
LFO Targets:
| Target | Description | Scale |
|---|---|---|
| NOT | LFO disabled | — |
| FLT | Filter cutoff frequency | ×1000 Hz |
| VCO1 | VCO1 coarse frequency modulation | ×1000 Hz |
| VCO2 | VCO2 coarse frequency modulation | ×1000 Hz |
| VCO3 | VCO3 coarse frequency modulation | ×1000 Hz |
| masterVolume | Master volume tremolo | ×1 |
| vco1.gain | VCO1 amplitude | ×1 |
| vco1.detune | VCO1 fine detune | ×100 cents |
| vco1.octave | VCO1 octave offset | ×1200 cents |
| vco2.gain | VCO2 amplitude | ×1 |
| vco2.detune | VCO2 fine detune | ×100 cents |
| vco2.octave | VCO2 octave offset | ×1200 cents |
| vco3.gain | VCO3 amplitude | ×1 |
| vco3.detune | VCO3 fine detune | ×100 cents |
| vco3.octave | VCO3 octave offset | ×1200 cents |
| filter.freq | Filter cutoff frequency (same as FLT) | ×1000 Hz |
| filter.filterEnvelopeAmount | Filter envelope depth | ×1000 |
| filter.Q | Filter resonance | ×24 |
| noise.mix | Noise generator level | ×1 |
Noise
| Parameter | Range | Default | Description |
|---|---|---|---|
| mix | 0–1 | 0 | White noise level (xorshift32 PRNG). Mixed with oscillator output. |
| filterType | lowpass, highpass, bandpass, notch | highpass | Noise filter type |
| filterFreq | 20–20000 | 1000 Hz | Noise filter cutoff |
| filterQ | 0.1–24 | 1 | Noise filter resonance |
Envelope (ADSR)
| Parameter | Range | Default | Description |
|---|---|---|---|
| attack | 0–0.5 s | 0 | Attack time (quadratic ease-in curve) |
| decay | 0–1 s | 0.12 | Decay time (cubic ease-out curve) |
| sustain | 0–1 | 1 | Sustain level |
| release | 0–0.5 s | 0.05 | Release time (cubic ease-out curve) |
9. Keyboard Shortcuts
| Key | Action |
|---|---|
| Space | Start/Stop playback |
| B | Auto-generate a new pattern |
| S | Log patterns as JSON to console |
| F | Switch to a random pattern |
| G | Switch to a random drumkit |
| H | Convert all tracks to soft-synth sounds |
| D | Export current track sound |
| V | Toggle VU meters and waveform overlay |
| 1–9 | Toggle mute for tracks 1–9 |
| Q, W, E, R, T, Y, U, I | Preview (audition) tracks 0–7 |
| Arrow | Adjust focused slider by one step |
| Shift + Arrow | Adjust focused slider by 10 steps |
| Alt/Option + Arrow | Adjust focused slider by 0.1 step (fine) |
10. Audio Signal Flow
Per-Track Signal Chain
Sample/Synth → Filter → Saturation → Dry Gain → Reverb → Delay → Stereo Panner → Mixer Bus
Master Bus Signal Chain
Mixer Bus → Pre-Gain → Compressor → Low-cut Filter (35 Hz) → High-cut Filter (18.5 kHz) → Master Gain → Analyser → Speakers
All tracks feed into a shared mixer bus. The master bus applies pre-gain, then compression, then filters and final gain before reaching the output.
11. Installation & Offline Use
orDrumbox v2 can be used in three different ways:
1. Web Application
Simply visit the website in any modern browser. Note that an internet connection is required for the initial load.
2. Progressive Web App (PWA)
You can install orDrumbox directly from your browser:
- Desktop (Chrome/Edge): Click the "Install" icon in the address bar.
- Mobile (iOS/Android): Use "Add to Home Screen" from the browser menu.
Once installed, the application will have its own icon and window, and can function offline thanks to the integrated Service Worker.
3. Desktop Application
orDrumbox will be available soon