Load Samples - Click "Add Samples" on any track to load your audio files
2
Build Sequence - Click track buttons (A-H) to create your pattern
3
Set Tempo - Adjust the BPM slider to your desired speed
4
Press Play - Start the sequencer and hear your creation
5
Experiment - Try different scales, randomization and effects
Main Controls
Transport Controls
Play/Pause: Start or pause sequence playback
Stop: Stop playback and reset to beginning
Reset: Return to start of sequence
Tempo Control
Adjust the playback speed from 40 to 180 BPM
Use the slider or type directly in the BPM display
Playback Modes
Normal: Play sequence in order
Reverse: Play sequence backwards
Random: Play tracks in random order
Track Controls
Each track (A-H) represents an independent sound source with its own controls and settings.
Track Components
Sample Pool
Upload multiple audio files to create a pool of sounds
Randomize Samples: When enabled, randomly selects from your sample pool
Record: Record audio directly into the track
Audio Controls
Volume: Adjust output level (0-100)
Panning: Position sound in stereo field (-100 to 100)
Output: Route track to master or specific output channels
Musical Settings
Key: Set the musical key for scale validation
Repetitions: How many times the track plays in sequence (1-128) / If Keep Current Sample is checked, this value also sets the number of times a sample play until move to the next.
Probability: How likely pauses are to occur (0-100%)
Curve Types: Steep, Wide, or Custom range for pause duration
Tempo Automation
Gradually change tempo over time
Target BPM: The tempo you want to reach
Curve: Control the speed of tempo change (0.1-3.0)
MIDI Output
Send MIDI notes to external devices or software
Note: MIDI pitch (C4-B4)
Velocity: Note intensity (1-127)
Gate: Note duration (50-1000ms)
Sequencing
Build musical patterns by arranging tracks in sequences.
Sequence Builder
Basic Sequencing
Click track buttons (A-H) to add them to your sequence
Sequence plays from left to right
Current playing position is highlighted
Batch Operations
Select multiple sequence items to apply operations
Repeat Selected: Duplicate selected items multiple times
Clear Selection: Remove selected items from sequence
Sequence Management
Clear: Remove all items from sequence
Default: Load a predefined starting sequence
Save/Load: Store and recall your sequences
Pro Sequencing Tip
Create interesting rhythms by using different repetition counts for each track. For example, set Track A to 4 repetitions and Track B to 3 repetitions to create polyrhythms.
Scales & Musical Theory
Serendipity includes extensive scale support for creating musically coherent sequences.
Scale Types
Traditional Scales
Major, Natural Minor, Harmonic Minor
Dorian, Phrygian, Lydian, Mixolydian, Locrian
Major & Minor Pentatonic, Blues Scale
World Music Scales
Hijaz (Arabic), Double Harmonic
Persian, Arabian, Hungarian Minor
Neapolitan, Enigmatic
Experimental Scales
Microtonal: Quarter-Tone, Whole Tone
Augmented, Diminished
Just Intonation, Harmonic Series
Contemporary & Serialism
12-Tone Rows
Ligeti Chromatic & Cluster
Xenakis Stochastic
Scale Validation
The Remove Out-of-Scale Tracks feature ensures all playing tracks conform to the selected scale.
When enabled, tracks that don't match the current scale will be automatically skipped during playback.
Scale Exploration
Try switching between different scale types while your sequence is playing to instantly transform the musical mood without changing your pattern.
Export, Recording & MIDI
Capture your creations and integrate with other music software.
Audio Export & Recording
Direct Recording
Record audio input directly into track sample pools
Great for capturing live instruments or vocals
Test recording feature ensures proper input levels
Audio Output
Multiple output configurations (not yet implemented due to browsers restrictions):
Stereo (2.0): Standard left/right output
4.0, 5.1, 7.1: Surround sound setups
8 Discrete Outputs: Individual channel routing
MIDI Integration
MIDI Output
Send sequence data to external synthesizers or DAWs
Configure MIDI note, velocity, and gate per track
Toggle MIDI output globally or per track
MIDI Clock
Synchronize Serendipity with other MIDI devices
Maintains tempo synchronization across your setup
Compatible with most MIDI-capable hardware and software
Project Management
Save and load your complete setups including:
Sequence patterns
Track settings and sample assignments
Scale selections and effects settings
MIDI configurations
Workflow Integration
Use Serendipity as a creative sketchpad, then export MIDI to your DAW for further refinement. The random elements can inspire new musical ideas you might not have discovered otherwise.
MIDI Integration & External Control
Complete MIDI Out System
Serendipity now features comprehensive MIDI output capabilities for each track:
Per-Track MIDI Control
Each track can send MIDI notes independently with customizable parameters
Multi-Channel Output
Tracks A-H send on MIDI channels 1-8 respectively
Note & Velocity Control
Customize MIDI note numbers, velocities, and gate times per track
Visual Feedback
Real-time MIDI activity indicators show when notes are being sent
MIDI Track Controls
Control
Function
Range
Default
MIDI Enable
Toggle MIDI output for track
On/Off
Off
MIDI Note
Note number to send
0-127
C3 (60) to C5 (72)
Velocity
Note intensity
1-127
100
Gate Time
Note duration
50-2000ms
200ms
Channel
MIDI channel
1-16
Track A=1, B=2, etc.
Pro Tip: Use different MIDI channels for each track to control multiple synthesizers or drum machines simultaneously!
Setting Up MIDI on macOS with IAC Driver
macOS IAC Driver Setup
Open Audio MIDI Setup (Applications β Utilities)
Double-click the IAC Driver in the MIDI Studio window
Check "Device is online"
Create ports by clicking the "+" button in Ports section
Name ports (e.g., "Serendipity Out")
Click Apply
IAC Driver now appears as a MIDI output in Serendipity
Ableton Live Configuration
In Live, go to Preferences β Link/MIDI
Find "IAC Driver" in MIDI Ports section
Enable "Track" and "Sync" for input
Create a MIDI track
Set monitor to "In"
Arm the track for recording
π΅ Tip: Load different instruments on each MIDI channel to create a multi-timbral setup!
Setting Up MIDI on Windows
Windows LoopMIDI Setup
Download and install loopMIDI from tobias-erichsen.de
Run loopMIDI.exe
Click "+" button to create a new port
Name it (e.g., "Serendipity MIDI")
The port appears instantly in Serendipity
loopMIDI creates virtual cables for internal routing
DAW Configuration (FL Studio, etc.)
In your DAW, open MIDI settings
Enable the loopMIDI or IAC port as input
Create MIDI tracks and set input to corresponding channels
Arm tracks for recording/playback
πΉ Pro Tip: Use track A for drums (channel 1), track B for bass (channel 2), etc. for organized multi-track recording!
MIDI Clock Synchronization
Master Clock Mode
Serendipity can send MIDI clock to sync external gear
24 PPQ resolution for precise timing
Tempo Automation Sync
MIDI clock follows tempo automation changes
External gear follows your tempo curves
Transport Control
Sends Start/Stop messages when sequencer controls are used
Keep everything in perfect sync
π§ MIDI Setup Checklist
β Enable IAC Driver (macOS) or install loopMIDI (Windows)
β Configure your DAW to receive from the virtual MIDI port
β In Serendipity, select the MIDI output from the dropdown
β Enable MIDI out for individual tracks you want to use
β Set MIDI notes, velocities, and gate times per track
β Enable MIDI Clock if you want tempo synchronization
β Start playback - MIDI notes will trigger external gear!
β οΈ Browser Permissions: Some browsers may require you to allow MIDI access when first connecting. Click "Allow" when prompted.
Serendipity is built around an 8-track sequencer with multiple layers of algorithmic control:
8 Independent Tracks
Each track (A-H) has its own samples, key, volume, panning, and effects
Flexible Sequencing
Create custom sequences by arranging tracks in any order and length
Scale System
25+ musical scales from around the world constrain harmonic content
Audio Flow
Sample/Note β Track Processing β Panning β β Master Output
β β β β β
Audio File Volume/Key Stereo Pos Final Mix
or Repetitions
Tone Generator Randomization
Multi-Layer Randomness Systems
RAND Buttons / Sliders EXPLAINED
Instant ways to introduce Randomness
ALL BPM AUTO: Sets all BPM targets On - Off for all 8 Tracks
ALL Rand Steps: Sets all random steps checkboxes On - Off for all 8 tracks
Rand Sample: If multiple samples are loaded on tracks, with every completion of a sequence circle, selects ONE ONLY random sample until the next circle starts
Rand Sample Now: Bypasses the above behaviour and instantly introduce a new sample selection for the next circle
Randomize ALL: Randomize most parameters. Connected with the Master Rand Intensity Slider
Auto Rand:The above behaviour automatically starts with every new sequencer cirlce
Auto Rand Intensity: An extra layer of control applied only in the Auto Rand mode
Master Rand Intensity: All randomized tracks share a common time division
Musical Result: If some or all are set to ON, Serendipity transforms into an endless, non-repeating music machine.
Musical Result: The musial outcome is heavily depends on the material loaded. Thus, a carefull selection of sound and pitches required.
1. Markov Chain Sequencing
Intelligent Track Transitions
When in "Random" playback mode, the sequencer uses probability matrices to determine which track plays next:
Current Track β Probability Table β Next Track
A β A:15% B:15% C:15% D:15% E:15% F:10% G:10% H:5% β (Random choice)
B β A:15% B:15% C:15% D:15% E:10% F:15% G:10% H:5% β (Random choice)
... etc.
π‘ Pro Tip: The Markov chain ensures musical coherence by favoring certain transitions while still allowing surprises.
2. Scale-Aware Randomization
Harmonically Constrained Choices
When a scale is selected, the random mode only chooses tracks that are in the current scale:
Markov Selection β Scale Filter β Final Choice
Track F C Major Scale? β Track F (Bb key) - REJECTED
Track C C Major Scale? β Track C (D key) - SELECTED
Track A C Major Scale? β Track A (C key) - SELECTED
3. Repetition Randomization
Dynamic Pattern Lengths
When "Randomize Repetitions" is enabled for a track, it generates musically meaningful lengths:
Base Value: The slider position sets the starting point
Musical Multipliers: Values are scaled by 0.25x, 0.5x, 1x, 2x, 4x
Common Rhythm: All randomized tracks share a common time division
π΅ Musical Result: Creates evolving polyrhythms that stay in sync
4. Sample Pool Randomization
Dynamic Sample Selection
Each track can load multiple samples and choose between sequential or random playback:
Sequential: Plays through samples in order (AβBβCβA...)
Random: Randomly selects from available samples each step
Keep Current Sample: Locks to the current playing sample for X number of times, controlled by the repeatition slider.
Current Indicator: Shows which sample is playing in real-time
5. Recording
Per Track Recording
Each track can record audio to be processed by the sequencer and all random functions.
Multi Output: Use Output to drive the recording to a selected output of your interface.
6. Random Pause System
Controlled Silence
Each track has a probability-based pause system:
0%: Never pauses (continuous playback)
1-99%: Random chance to skip a step
100%: Always pauses (mutes the track)
βΈοΈ Creative Use: Use low probabilities (10-30%) for human-like imperfections
7. Controlled Randomization Slider
Precision Randomization Control
The randomization intensity slider lets you fine-tune how much change you want:
0-30% (Subtle): Minor volume/panning adjustments, slight tempo changes
30-60% (Moderate): New sequences, scale changes, noticeable parameter shifts
60-100% (Extreme): Major overhauls, exotic scales, dramatic tempo changes
Creative Control: Use low intensities for subtle variations during performance, high intensities for complete reinvention
8. Global Randomization
"Randomize Everything" Button
This feature intelligently randomizes all parameters while maintaining musicality:
Track Parameters: Random volumes, panning, repetitions within sensible ranges
Sequence: Creates new 3-8 track sequences
Scale: Selects from appropriate musical scales
Embracing Randomness
Serendipity is designed to incorporate chance as a creative partner.
Randomization Features
Auto Randomization
Continuously evolve your sequences over time
Adjust intensity to control how much change occurs
Perfect for generative music and ambient compositions
Randomize Everything
One-click complete randomization of all parameters
Great for breaking creative blocks
Discover unexpected combinations
Controlled Randomness
All random elements can be constrained by scales and parameters
Maintain musical coherence while introducing variation
Balance between predictability and surprise
The Philosophy of Serendipity
This sequencer celebrates happy accidents and unexpected discoveries. Instead of fighting randomness, learn to guide it. Set constraints (like scales) but allow for surprises within those boundaries. Some of your most interesting musical ideas may come from moments you didn't plan.
Advanced MIDI Workflow Tips
MIDI-Enhanced Creative Workflows
Hybrid Audio/MIDI Production
Use some tracks for audio samples, others to control external synths
Best of both worlds - sampled drums with synthesized melodies
Multi-Device Orchestration
Control multiple hardware synths simultaneously with different tracks
Create entire arrangements across your gear collection
DAW Integration
Record MIDI output into your DAW for further editing and mixing
Capture generative ideas, then refine them traditionally
Performance Techniques with MIDI
Live Parameter Locking: Record automation in your DAW while Serendipity generates patterns
Multi-timbral Layering: Use one track to trigger multiple synth sounds on the same channel
Hybrid Rhythm: Combine audio samples (drums) with MIDI-controlled synths (basslines)
External Effect Control: Use MIDI to trigger hardware effects units in sync with patterns
Power User Tip: Combine Serendipity's algorithmic sequencing with your favorite hardware synths for truly unique generative music that still has that analog warmth!