Multi-Instrument Guide¶
Learn to use multiple cards together for layered compositions.
The Four-Card Setup¶
r0astr gives you four independent cards. Think of them as four musicians in a band - each plays their own part, but they all follow the same beat.
| Card | Typical Role |
|---|---|
| Card 1 | Drums / Percussion |
| Card 2 | Bass |
| Card 3 | Melody / Lead |
| Card 4 | Ambient / Texture |
This is a common setup, but you can use cards however you like.
Starting and Stopping Cards¶
Individual Control¶
Each card has its own Play/Pause button:
- Play: Starts the pattern in that card
- Pause: Stops only that card (others keep playing)
What Happens to Other Cards?¶
Nothing. When you start or stop a card, all other cards continue unchanged. This is the key to live performance - you can bring instruments in and out dynamically.
Stop All¶
The master panel has a Stop All button that stops every card at once. Use this when you want complete silence or to reset your performance.
Synchronization¶
All cards share a single audio clock. This is fundamental to how r0astr works.
How It Works¶
- The master panel sets the global tempo
- Every card receives timing from this shared clock
- When you press Play on a card, it waits for the next cycle boundary
- The pattern joins in perfect sync with anything already playing
Why This Matters¶
- No drift: Cards never slowly go out of sync
- Musical timing: New patterns start at musically sensible moments
- Confidence: You can add/remove instruments knowing they'll stay in time
Example Scenario¶
- Press Play on Card 1 (drums) - it starts immediately
- Press Play on Card 2 (bass) - it waits for the next cycle, then joins in sync
- Both patterns now play together, locked to the same beat
- Press Pause on Card 1 - drums stop, bass continues
- Press Play on Card 1 - drums rejoin on the next cycle
Complementary Pattern Design¶
Design patterns that work together, not against each other.
Role of Drums (Card 1)¶
Drums provide the rhythmic foundation:
- Establish the groove
- Define the pulse
- Use samples:
bd,sd,hh,cp
Role of Bass (Card 2)¶
Bass provides the harmonic foundation:
- Lock with the kick drum
- Establish the key/root
- Use low frequencies (lpf keeps it warm)
Role of Melody (Card 3)¶
Melody provides interest and movement:
- Sit in the mid-to-high frequency range
- Use scales to stay in key
- Add motion and variation
Role of Ambient (Card 4)¶
Ambient provides texture and space:
- Fill in the background
- Use reverb and slow patterns
- Keep volume low to not overwhelm
// Slow evolving pad
n("0 3 7").scale("C3:minor").s("sawtooth").lpf(600).room(0.9).slow(4).gain(0.4)
Different Instruments Per Card¶
Samples vs Synths¶
| Type | Best For | Example |
|---|---|---|
Samples (s()) |
Drums, percussion, realistic sounds | s("bd sd hh") |
Synths (note()) |
Bass, melody, pads | note("c3 e3") |
Frequency Separation¶
Keep your mix clear by separating frequencies:
| Role | Frequency Range | How |
|---|---|---|
| Bass | Low (60-300 Hz) | Use .lpf(300) |
| Drums | Wide | Samples are pre-EQ'd |
| Melody | Mid (300-3000 Hz) | Use higher octaves (C4, C5) |
| Ambient | Variable | Use reverb (.room()) |
Matching Sounds to Roles¶
- Bass:
sawtoothorsquarewith low-pass filter - Melody:
triangleorsawtoothwith mid-range filter - Pads:
sawtoothwith heavy reverb and slow patterns
Cross-Panel Pattern References¶
Cards can reference patterns from other cards by their title. This enables powerful orchestration where one card controls multiple patterns.
How It Works¶
- Name your cards: Double-click the card title to rename (e.g., "BASS", "LEAD")
- Write patterns: Each card's pattern is automatically registered under its title
- Reference in other cards: Use the title name to access the pattern
Example Setup¶
Card titled "BASS":
Card titled "LEAD":
Card titled "COMBO":
The COMBO card now plays both patterns stacked together, with LEAD playing twice as fast.
Evaluation Order¶
Cards evaluate top to bottom based on their position in the panel list. This means:
- A card can only reference patterns from cards above it
- Drag cards to reorder if needed
- The master panel always evaluates first
Dynamic Updates¶
When you update a card's pattern:
- The pattern re-registers under its title
- Any playing cards below that reference it automatically re-evaluate
- Changes cascade through your arrangement
Pattern Manipulation¶
Once referenced, you can transform patterns:
Reactive Cross-References¶
Use ref() for values that update continuously:
stack(
BASS.gain(ref(() => WHICH_PHASE() === 0 ? 1 : 0)),
LEAD.gain(ref(() => WHICH_PHASE() === 1 ? 1 : 0))
)
This creates patterns that fade in/out based on a function defined in the master panel.
Performance Tips¶
Building Up¶
A classic performance technique:
- Start with drums - Establish the groove
- Add bass - Lock in the harmonic foundation
- Layer melody - Add interest
- Finish with ambient - Fill out the sound
Creating Dynamics¶
Use stops for contrast:
- Drop the bass: Pause Card 2 for 8 bars, then bring it back
- Drums only: Stop everything except drums for a breakdown
- Ambient interlude: Stop drums and bass, let ambient breathe
Live Variation¶
While patterns are playing:
- Edit the pattern code for instant changes
- Adjust sliders for real-time parameter tweaks
- Swap out patterns entirely for different sections
Full Arrangement Example¶
Here's a complete four-card arrangement. Copy each pattern into its respective card.
Card 1: Drums¶
Establishes the beat with kick, snare, and hi-hats.
Card 2: Bass¶
Sub bass locked to the kick, with a slider for filter sweeps.
Card 3: Melody¶
Minor scale melody with volume control.
Card 4: Ambient¶
Slow chord pad with heavy reverb for atmosphere.
How They Work Together¶
- Key: All patterns use C minor
- Tempo: All locked to the master panel tempo
- Frequency: Bass low, melody mid, ambient spread
- Dynamics: Sliders allow real-time adjustment
Performance Walkthrough¶
Try this sequence:
- Start drums (Card 1) - Let it groove for 4 bars
- Add bass (Card 2) - Foundation locked in
- Add melody (Card 3) - Music takes shape
- Add ambient (Card 4) - Full arrangement
- Drop melody - Pause Card 3 for tension
- Bring melody back - Release
- Stop all except ambient - Breakdown
- Restart drums - Build back up
Next Steps¶
-
Master Panel
Control global tempo and create shared sliders.
-
Pattern Library
More ready-to-use patterns for each role.