HouseBud User Manual

Table of Contents

1. Overview

HouseBud is an iOS-first AUv3 MIDI performance instrument built around a single chord surface. It is designed for producers, live performers, and sound designers who want instant, expressive chord output with deep harmonic control.

The core idea is simple: you pick a key, you pick a preset, and the entire chord surface is musically arranged for you. Every pad, every voicing, every octave slice is pre-voiced by the harmony engine. You play it like an instrument.

What HouseBud does well

2. Core Concept

HouseBud organizes the musical surface around two axes on a single screen.

The surface model

This means you can play a chord in one octave, hold it, then add a second octave slice to layer both registers at once. The surface is designed so that any combination of presses sounds musical within the key.

What the engine does for you

Every pad is pre-voiced by the harmony engine using voice-leading algorithms. You do not think about inversions or note layouts. You press, and well-voiced chords come out. When you change key, every pad recalculates instantly without rebuilding the preset.

3. Interface Overview

HouseBud is a single-screen instrument.

Toolbar (bottom bar)

Control Description
Presets Opens the preset browser for factory and user presets
Edit/Build Preset Opens the preset builder pre-filled with the current preset for live editing
Randomize Generates a random preset with a new key, scale, chord layout, voicing, and octave range
Key Shows and changes the current musical key
Scale Shows and changes the current scale type
CH (Pad Latch) Toggles pad sustain: pads hold their notes indefinitely
FX (Motion Latch) Toggles motion effect sustain across pad changes
Settings Opens the settings view

Motion FX row (above toolbar)

Three faders for real-time motion effects. Each fader:

The three effects are Repeat, Arp, and Strum. Only one can be active at a time.

Chord surface (main area)

The bulk of the screen is the chord surface: horizontal degree columns, each containing vertical pad stacks, each pad divided into octave slices.

4. Chord Surface and Pad Interaction

How the surface is laid out

Each column represents one chord degree from the preset. The label above the column shows the Roman numeral or degree name (I, ii, bVII, etc.). Inside the column, pads are stacked vertically, one per voicing variant.

Each preset defines how many degrees appear and which voicing variants each degree offers. Factory presets range from minimal two-column vamps to seven-column full harmonic maps.

Touch rules

  1. Tap a pad to trigger the chord immediately.
  2. Pad trigger mode decides whether one or many pads can stay active. In One Pad mode, moving to a new pad releases the previous pad first. In Multi Pad mode, pads can accumulate independently.
  3. Drag between pads to glide smoothly from one chord to the next. In One Pad mode this steals to the new pad. In Multi Pad mode the dragging finger simply moves its own trigger.
  4. Drag through empty space keeps the current chord playing until you land on another pad.
  5. Multiple fingers on the same pad trigger multiple octave slices simultaneously, layering registers.
  6. UI touches and incoming pad MIDI notes use the same trigger rules. Latch, slice ownership, pad stealing, and multi-pad behavior apply equally to both.

What happens when you drag

When you drag from one pad to another in One Pad mode, any other fingers that were holding slices on the old pad become orphaned. Those fingers are ignored until lifted. This prevents the "two-finger oscillation" problem where two fingers could rapidly alternate between pads. In Multi Pad mode, triggers remain independent instead.

Pad Latch (CH button)

With pad latch enabled, pads sustain their notes after you lift your finger. Tap the same pad again to release it. This is useful for:

Latch also applies to incoming pad MIDI notes. A MIDI note-on can latch a slice, and the matching note-off does not release it while latch is enabled.

5. Octave Slices and Layering

What octave slices are

Each pad is divided horizontally into slices, one per available octave. Pressing the left side of a pad plays the chord in a lower register; pressing the right side plays it higher. The number of slices depends on the preset's octave policy.

Octave presets

Preset Octaves Slices Description
Standard 3, 4 2 Compact two-register pad, general purpose
Wide 2, 3, 4 3 Broad three-register range
Piano Hands 3, 4, 5 3 Upper-register three-octave reach
Stab 3 1 Single-register pad — no octave choice, instant stab feel
Bell 4, 5 2 High register, bell and lead tones
Sub 2, 3 2 Low register, bass-forward feel
Mega 2, 3, 4, 5 4 Full keyboard-width four-slice pad, cinematic layering

Layering registers

You can hold multiple slices on the same pad at once. Press two fingers on different horizontal positions of the same pad and both octave registers play simultaneously. This is how you build full, rich chords that span multiple octaves without any sequencing.

Each held slice gets a distinct highlight color so you can see which registers are active.

Octave encoding in MIDI

Every slice on every pad has its own unique MIDI note number. The note encodes both the pad identity and the slice position in a single value:

note = padMIDIStartNote + (padIndex × octaveCount) + sliceIndex

For example, with the default start note of 36 and two slices per pad: pad 0 slice 0 = note 36, pad 0 slice 1 = note 37, pad 1 slice 0 = note 38, pad 1 slice 1 = note 39, and so on.

Velocity carries the actual press dynamics — not the slice position. A harder press or a higher-velocity MIDI note-on produces a louder chord on HouseBud Out.

Because each slice has its own note number, pressing two slices on the same pad simultaneously uses two different note numbers. There is no ambiguity and no need to share a note number between slices.

6. Motion Effects

Motion effects animate your held chords rhythmically. They turn a static chord press into a moving, evolving musical event.

Repeat

Repeat retriggers the held chord at a steady tempo-synced rate. The chord is re-fired as a new note-on at each interval, creating a rhythmic pumping or stuttering effect.

The fader controls the retrigger rate. With Snap to Rates on, it snaps to discrete musical values: 1/4, 1/8, 1/8T, 1/16, 1/32. With Snap to Rates off, it interpolates continuously between the extremes.

Use Repeat on synth stabs, organ chords, or pad hits to add rhythmic energy without running a separate sequencer.

Arp

Arp sequences through the individual notes of the held chord one at a time, creating an arpeggio at tempo.

The fader controls the arpeggio rate. The same snap-to-rates setting applies. The arpeggio uses the notes already in the voiced chord — it does not add new ones.

Use Arp on pads with multiple octave slices held for especially rich arpeggios that span the full range. In Multi Pad mode, Repeat, Arp, and Strum all derive their note pool from the full set of currently held notes across every active pad and slice, then unique and sort those notes ascending.

Strum

Strum fires a one-shot cascade across the currently held chord notes from bottom to top. It does not repeat — it fires once per trigger change.

The fader controls how quickly the notes cascade (spread speed). A slow strum sounds like a guitar chord strum. A fast strum is nearly simultaneous but with subtle feel. Strum works well combined with pad latch, letting you fire a new strum into the held chord at any moment.

Motion note pool behavior

The motion engine does not run separate sequences per pad. Instead, it derives one musical note pool from all currently held pad notes:

  1. Collect all notes from all held pads and slices
  2. Remove duplicates
  3. Sort the result ascending
  4. Feed that pool into Repeat, Arp, or Strum

This means:

Snap to Rates

When Snap to Rates is on (toggled in Settings), the motion fader snaps to five discrete note values: 1/4, 1/8, 1/8 triplet, 1/16, 1/32. You get clean musical rates.

When Snap to Rates is off, the fader interpolates continuously between the extremes, which is useful for deliberately off-tempo or detuned motion textures.

Motion Latch (FX button)

When motion latch is off, the active effect stops when you release the pad.

When motion latch is on, the effect keeps running as you change pads. Use this when you want the motion to continue across chord changes rather than restarting on each new pad.

7. Key and Scale

Changing key

Tap the Key button in the toolbar to open the key picker. All 12 chromatic pitches are available: C, C#, D, Eb, E, F, F#, G, Ab, A, Bb, B.

Changing key recalculates the entire voiced surface instantly. Every pad's note layout shifts to the new root while preserving all voicings and intervals.

Changing scale

Tap the Scale button to change the scale type. The picker includes 19 built-in scales. You can also mark favorites for quick access and search by name.

Common house scales (used by all factory presets)

Scale Character
Major Bright, resolved, pop and gospel foundation
Minor Dark, melancholic, natural minor
Dorian Minor with a raised 6th, jazzy and soulful
Mixolydian Major with a flat 7th, funky and modal
Phrygian Minor with a flat 2nd, tense and exotic
Lydian Major with a raised 4th, dreamy and open
Harmonic Minor Minor with a raised 7th, classical and tense
Phrygian Dominant Phrygian with a major 3rd, very tense and cinematic

Additional built-in scales

Scale Character
Locrian Minor with flat 2nd and flat 5th, very dissonant
Melodic Minor Minor with raised 6th and 7th, jazz minor
Harmonic Major Major with flat 6th, lush and tense
Lydian Dominant Lydian with flat 7th, jazz fusion and retro
Altered Super Locrian, maximum jazz tension
Pentatonic Major 5-note major, bright and open
Pentatonic Minor 5-note minor, blues and rock foundation
Pentatonic Blues Pentatonic minor plus flat 5th, blues feel
Whole Tone All whole steps, dreamy and ambiguous
Diminished Alternating whole and half steps, symmetrical tension
Chromatic All 12 semitones

Changing scale type regenerates the chord surface with the new harmonic context. All extensions and voicings respect the new scale's intervals.

Key and scale are not part of the preset file

The key and scale type live in the harmony data but are typically changed per session rather than per preset. Changing them while a preset is loaded does not overwrite the saved preset until you explicitly save.

8. Preset System

Factory presets

HouseBud includes 28 factory presets organized into three categories.

Focused presets

Designed for live looping, groove-focused performance:

Preset Scale Character
Filter Disco Mixolydian Funky 5-chord piano voicing
Gospel Hands Major Lush extensions, devotional feel
Jack Track Ride Mixolydian Stab-style groove variants
Organ Stab Dorian Performance stabs with sus variants
Late Night Dorian Balanced 5-chord moody loop
Warehouse Minor Natural Minor Dark grounded 5-chord
French Filter Mixolydian Chromatic bIII color chord included
Afro Groove Dorian Chromatic bVI color chord, polyrhythmic feel
Dub Pulse Dorian Minimal 2-chord smooth vamp
Disco Stab Mixolydian Tight stab voicing, single-octave pads, sus-driven I-IV-V
Sub Tunnel Dorian Deep sub bass, low octaves, dub i-bVII-IV
Cinema Wide Lydian Cinematic voicing, four-slice mega pads, lush I-II-vi-V
Noir Minor Harmonic Minor Dim and half-dim colours, vii° passing degree

General presets

Full harmonic maps with more degrees for composition:

Preset Scale Character
House Map Dorian 7-chord full scale map
Dusk Runner Natural Minor 7-chord with chromatic bVII
Grand Atlas Major 6-chord with rich extensions
Shadow Drop Phrygian Dark exotic 4-chord
Open Sky Lydian Dreamy raised 4th color
The Floor Mixolydian Funky chromatic-color 6-chord

Song presets

Arranged for specific song structure feels:

Preset Scale Character
Jet Lift Major Classic I-V-vi-IV progression
Homeless Keys Major Sophisticated progression with ii
Garage Loft Natural Minor UK garage feel: i-bVI-bVII-bIII
Cash Flow Mixolydian House loop groove
Desert Woman Natural Minor Atmospheric atmospheric vamp

Loading a preset

Open the preset browser with the Presets button. Tap any preset to load it. The chord surface rebuilds instantly.

User presets

Presets you build and save appear in a separate user section of the browser. You can rename or delete them from there.

Saving a modified preset

If you change the key, scale, or motion settings while a preset is loaded, those changes are not automatically saved. Use the preset builder save workflow or the save option in the browser to persist your changes.

9. Preset Builder

The preset builder lets you edit the currently active preset or build a new one. It always opens pre-filled with the current preset, so you start from something musical rather than a blank slate.

Opening the builder

Tap the edit icon (pencil-and-square) in the toolbar. The builder opens in Edit Preset mode with the active preset already loaded. To build something entirely new, load a factory preset that is close to what you want and modify from there.

Building vs. editing

The builder title shows which mode you are in. In both modes the form works identically — the only difference is what it is pre-filled with.

Mode Title shown Pre-filled with
Edit Preset "Edit Preset" A copy of the currently active preset
Build Preset "Build Preset" A blank default template

Applying vs. saving

The builder offers two ways to confirm your changes.

Action Location What it does
Apply Nav bar (left of Save) and form button Loads the edited preset immediately without writing to disk. Use this to audition structural changes live. The change is temporary — loading another preset discards it.
Save Nav bar (far right) and form button Writes the preset to your user library and loads it. Appears in the preset browser and persists across sessions.

Global settings

Setting Options Description
Preset Name Text field Name for this preset
Key All 12 pitches Starting key — can be changed at any time without rebuilding the preset
Scale Type All built-in scales Harmonic context used to resolve all chord degrees and extensions
Voicing 7 options Voice-leading character across the entire surface (see below)
Octave Range 7 options Number and register of octave slices per pad (see below)
Chord Count 1–8 Number of degree columns on the chord surface

Voicing styles

Voicing controls the inversion policy and register constraints used by the voice-leading engine when producing the final chord layout.

Style Inversion policy Register Character
Balanced Nearest inversion Mid (MIDI 56–80) General purpose, moderate leaps
Piano Close position High-mid (MIDI 60–84) Tight voice leading, piano feel
Smooth Nearest inversion Mid (MIDI 58–82) Minimal leaps, ideal for pads and ambient
Grounded Root position Low-mid (MIDI 55–79) Root always in bass, stable and solid
Tight Close position Narrow high-mid (MIDI 60–76) Very small leaps, percussive stab character
Sub Nearest inversion Low (MIDI 48–72) Low upper register, deep bass (MIDI 28–44), dub and sub-bass feel
Cinematic Nearest inversion Wide (MIDI 54–86) Large leaps allowed, open and expansive

Octave Range

Sets how many octave slices each pad has and which octave registers those slices span.

Option Octaves Slices Character
Standard 3, 4 2 Compact two-register pad, general purpose
Wide 2, 3, 4 3 Broad three-register range
Piano Hands 3, 4, 5 3 Upper-register three-octave reach
Stab 3 1 Single-register pad — no octave choice, instant one-shot stab
Bell 4, 5 2 High register two-octave reach, bell and lead tones
Sub 2, 3 2 Low register two-octave reach, bass-forward feel
Mega 2, 3, 4, 5 4 Full keyboard-width four-slice pad, cinematic layering

Per-chord configuration

Each chord column is configured independently. Expand a chord section in the form to see its controls.

Source

Determines the root pitch of this chord relative to the key.

Source type Range Description
Degree I – VII Scale degree from the active scale. The chord quality (major, minor, diminished) is inferred diatonically from the scale.
Semitone 0 – 11 semitones Chromatic offset from the root. Use this for borrowed chords, modal mixture, or color chords outside the scale: bVI, bVII, bIII, #IV, and so on.

Role

Role tells the harmony engine the harmonic function of this chord. It affects two behaviours automatically: default tension extension when no explicit variant overrides it, and voice-leading bias during chord voicing.

Role Auto-tension effect Voice-leading bias
None No automatic additions Neutral
Tonic None Soft preference for root position
Predominant None Neutral
Dominant Adds diatonic 7th from the scale automatically Brighter top voice preferred
Color Adds diatonic 9th extension automatically Neutral
Passing None Minimises bass movement between adjacent chords

Setting Role to Dominant on your V chord means the engine adds the diatonic 7th without you needing to select a Seventh variant manually. Setting Role to Color gives a 9th extension automatically. Role is optional — None leaves the chord exactly as authored with no automatic additions.

Bass

Controls whether a bass note is added below the voiced upper structure.

Mode Description
None No bass note. Only the voiced upper chord plays.
Root Adds the chord root as a fixed bass note below the upper voices, always in the bass register.
Voiced Adds the engine's best-fit bass voice, integrated into the overall voicing rather than pinned to root position.

Variations

Variations are the pad rows stacked vertically inside this chord column. Each variation is a different harmonic colouring of the same root. You can select 1–5 variations per chord from the full variant list. If no variations are selected for a chord, it falls back to the global default stack.

Complete chord variant list

Variant Description
tri Basic triad. Quality is diatonic: major, minor, diminished, or augmented depending on the scale degree.
7th Adds the diatonic 7th from the scale (major 7, minor 7, or dominant 7 depending on degree).
9th Diatonic 9th extension. Includes the 7th.
11th Diatonic 11th extension. Includes the 7th and 9th.
13th Full diatonic stack: 7th, 9th, 11th, and 13th.
sus2 Suspended 2nd replaces the third. Open, no tension.
sus4 Suspended 4th replaces the third. Tense, resolves to the third.
add9 Triad with an added 9th. No 7th — brighter than a 9th chord.
6 Major triad plus major 6th.
m6 Minor triad plus major 6th.
6/9 Triad plus major 6th and 9th. No 7th. Classic soul and jazz voicing.
dom9 Dominant 9: major 3rd, minor 7th, major 9th. Funky and tense.
Maj9 Major 9: major 3rd, major 7th, major 9th. Bright and lush.
m9 Minor 9: minor 3rd, minor 7th, major 9th. Soulful and moody.
7sus4 Dominant 7 with suspended 4th. Unresolved tension.
dom13 Dominant 13: major 3rd, minor 7th, 9th, and 13th. Jazz dominant colour.
Maj7#11 Major 7 with raised 11th. Lydian sound — dreamy and open.
7sus2 Dominant 7 with suspended 2nd. Open dominant tension.
dim Diminished triad: minor 3rd and flat 5th. Dark and tense.
dim7 Fully diminished 7th: minor 3rd, flat 5th, and diminished 7th. Symmetrical, classical tension.
m7b5 Half-diminished: minor 3rd, flat 5th, minor 7th. Jazz ii° sound.

Saving the preset

10. Harmony Engine

The harmony engine is what makes HouseBud produce well-voiced chords automatically. Understanding it helps you build better presets.

How resolution works

When you load a preset, the engine takes the authored harmony data — key, scale, degrees, variants, voicing policy — and runs a voice-leading algorithm to produce the final MIDI intervals for every pad.

The output is stored as interval offsets from the root, not as absolute MIDI notes. This means key transposition is free: the engine just shifts the root, and all intervals recalculate.

Voice leading

The engine tries to minimize large note leaps between chords. It uses constraints to keep top notes close to the previous chord's top note, and to keep bass notes in a comfortable register.

Voicing policies set the constraints:

Diatonic extensions

When a variant includes a seventh, ninth, or higher extension, the engine adds that interval from the scale. It does not add chromatic alterations unless you explicitly use a chromatic source event.

A ninth extension on a minor chord in Dorian gives you a natural ninth from the Dorian scale, not a chromatic one.

Chromatic color chords

When you set a degree source to a chromatic offset instead of a scale degree, you can add chords that are outside the key — borrowed chords, modal mixture, or direct semitone targets. These appear in factory presets as bVI, bVII, bIII, and similar labels.

MIDI note formula

Every note that plays is computed as:

midiNote = key.pitchClass + degreeOffset + interval + octave × 12

This formula runs at play time, so changing key instantly shifts everything without any stored note data needing to change.

11. MIDI Routing

HouseBud uses two MIDI outputs and one MIDI input.

HouseBud Out

HouseBud Out carries the actual pitched MIDI notes for every chord press. These are the notes you hear from a synth, sampler, or DAW instrument track.

Use HouseBud Out for:

HouseBud Pad Out

HouseBud Pad Out sends one MIDI note per slice press. Every slice on every pad has a unique note number that encodes both which pad and which slice was pressed.

If two slices on the same pad are held simultaneously, two note-on messages are sent with two different note numbers — one per slice. Each has its own note-off when released.

If the same slice is held by both UI and MIDI at once, HouseBud keeps the slice active until the last owner releases it.

Use HouseBud Pad Out for:

MIDI input: Pad triggering

HouseBud can receive MIDI note messages to trigger pads programmatically. The same per-slice note encoding used by HouseBud Pad Out applies in reverse:

Send a note-on to press a specific pad at a specific slice. Send the matching note-off to release it. To layer two slices on the same pad, send two note-on messages with two different note numbers (one per slice).

Use MIDI input for:

MIDI Panic

Sending CC 120 or CC 123 on any channel triggers a MIDI panic: all held notes on all outputs across all channels are immediately released.

Virtual MIDI ports (standalone app)

In standalone mode, HouseBud creates named virtual MIDI ports:

Port Direction Content
HouseBud In Input Receives pad trigger MIDI
HouseBud Out Output Sends chord notes
HouseBud Pad Out Output Sends pad trigger messages

These ports appear in any CoreMIDI-compatible iOS app. Enable or disable each port from the Settings view.

Hardware MIDI

The Settings view lists all detected CoreMIDI hardware inputs and outputs. Each device can be independently enabled or disabled. Use this to connect USB MIDI interfaces, MIDI expanders, or iOS-compatible hardware.

Bluetooth MIDI

Tap the Bluetooth MIDI button in Settings to scan for and connect Bluetooth MIDI devices. Once connected, they appear in the hardware MIDI lists.

12. Built-In Sampler

The standalone app includes a built-in sampler that receives HouseBud Out MIDI and plays back audio samples, letting you use HouseBud as a complete standalone instrument without any external synths.

How the sampler works

The sampler is an AVAudioUnitSampler loaded with an SF2 soundfont. Every note-on from HouseBud Out triggers a pitched sample. Note-off stops the sample.

The sampler runs in the same audio session as the app, so output goes directly to the device speakers or headphones.

Sampler controls

Control Range Description
Enabled On/Off Turn the sampler on or off
Volume 0.0–1.0 Output gain of the sampler
Preset 0–127 SF2 soundfont preset index

Preset numbers

The preset number selects which SF2 instrument patch is loaded. General MIDI patch numbers apply: 0 is typically Acoustic Grand Piano, 1 is Bright Piano, 32 is Acoustic Bass, and so on. Refer to the GM patch list for specific numbers.

Sampler vs external MIDI

The sampler and external MIDI output are not mutually exclusive. HouseBud Out MIDI is always sent to any connected external devices whether the sampler is on or off. Turning the sampler off silences the internal audio while external MIDI continues flowing.

Sampler availability

The sampler is only present in the standalone app. It is not available in the AUv3 plugin version, since the plugin runs inside a DAW that handles audio routing.

13. AUv3 Plugin

HouseBud can run as an AUv3 MIDI effect plugin inside any compatible iOS host (AUM, ApeMatrix, GarageBand, Cubasis, etc.).

Output layout

Output Content
HouseBud Out Chord MIDI notes on midiOutChannel
HouseBud Pad Out Pad trigger messages on padMIDIOutChannel

Using HouseBud in a host

  1. Instantiate HouseBud as a MIDI effect or instrument in your host
  2. Route HouseBud Out to the instrument you want to play chords on
  3. Optionally route HouseBud Pad Out to a drum machine, sequencer, or effects device
  4. Load a preset and start playing

Tempo sync

In plugin mode, HouseBud reads the host's transport tempo and time position. Motion effects (Repeat, Arp) lock to the host BPM automatically. You do not need to set BPM manually in the plugin.

State saving

The plugin saves its full state — preset, key, scale, motion settings, MIDI channel configuration — inside the DAW project. Loading the project restores HouseBud exactly as you left it.

Factory presets in the plugin

All 28 factory presets are available inside the plugin via the host's preset menu. User presets saved inside the standalone app are also available in the plugin if stored in a shared container.

Multi-instance use

You can instantiate HouseBud multiple times in a host, each with its own preset and MIDI channel assignment. This lets you layer multiple chord voices or run different progressions simultaneously.

14. HouseBud Ribbon

HouseBud Ribbon is a companion AUv3 MIDI effect plugin that turns any incoming MIDI chord into a continuous, slideable ribbon surface. Where the main HouseBud app is a chord pad performer, the Ribbon is a pitch-runner — you slide or tap along a linear surface that lays out all the notes of the active chord across one or more octaves.

Purpose

The Ribbon is designed for players who want to run melodic lines, bass walks, or omnichord-style gestures over a chord that is arriving from an external source — a MIDI keyboard, a sequencer, another AUv3, or the main HouseBud app. You feed it chord notes, and it immediately gives you a playable surface built from those notes.

Typical uses:

Loading the Ribbon

Instantiate HouseBud Ribbon as an AUv3 MIDI effect in your host. Route a MIDI chord source into its input. Route the Ribbon's output to any instrument you want to play.

In a typical setup:

  1. Track A: a MIDI keyboard or HouseBud main → output to HouseBud Ribbon input
  2. Track B: HouseBud Ribbon → output to a synth or sampler
  3. Touch the ribbon surface to play notes from the live chord

The ribbon surface

The ribbon fills the main view as a vertical strip divided into zones. Each zone represents one note: every pitch class in the active chord, spread across the selected octave range. Zones are arranged from the lowest note at the bottom to the highest at the top.

Touching a zone fires a note-on. Sliding to an adjacent zone fires a note-off on the old zone and a note-on on the new one, creating smooth legato movement. Lifting your finger fires note-off.

Because all zones are derived from the chord's pitch classes, every note you play is always in the chord — there are no wrong notes.

Latch mode

Mode Behaviour
Latch (default) The ribbon retains the last chord after all input notes are released. The surface stays playable indefinitely until a new chord arrives.
Live The ribbon clears as soon as all input notes are released. The surface is only active while notes are held.

Use Latch for loop-based setups where the chord changes infrequently. Use Live when you want the ribbon to track a source that is actively held in real time, such as a live keyboard player.

Octave modes

The toolbar's Mode knob switches between two fundamentally different ways of spreading chord notes across the ribbon.

Relative mode

In Relative mode the ribbon anchors to the chord's own register. The lowest note in the incoming chord defines the reference octave. The Below and Above knobs then extend the surface a set number of octaves in each direction from that anchor.

Control Range Description
Below 0–4 Octaves to extend below the chord's reference octave
Above 0–4 Octaves to extend above the chord's reference octave

Example: a C major chord voiced at octave 4 with Below=1, Above=2 produces the ribbon C3–B6, covering all C, E, and G instances in that range.

If the same chord arrives at octave 2 instead, the ribbon shifts down to C1–B4. The physical layout always feels the same relative to where the chord lives.

Use Relative mode for omnichord-style playing, melodic improvisation, and any case where you want the ribbon to follow the chord's register naturally.

Fixed mode

In Fixed mode the ribbon always spans the same fixed MIDI octave range, regardless of which octave the incoming chord arrives at. The Min Oct and Max Oct knobs set the hard lower and upper bounds.

Control Range Description
Min Oct 0–10 Fixed lower MIDI octave bound
Max Oct 0–10 Fixed upper MIDI octave bound

Example: Min Oct=1, Max Oct=3 always shows the chord's pitch classes spanning octaves 1–3, whether the chord arrives at octave 2 or octave 5. The surface is a fixed window into the low register.

Use Fixed mode for bass line playing, lead lines in a defined range, or any setup where you want a stable, predictable surface regardless of the input chord's register.

How zones are generated

In both modes, the ribbon generates every occurrence of each chord tone's pitch class within the active octave range. A C major chord (pitch classes C, E, G) with a three-octave range produces: C3, E3, G3, C4, E4, G4, C5, E5, G5 — nine zones, all in key, ready to play.

This pitch-class expansion means the ribbon always fills the available range evenly, and octave doublings from multi-octave voicings in the source chord never create duplicates.

MIDI channels

Control Default Description
MIDI In Omni Channel to listen for incoming chord notes. Omni accepts all channels.
MIDI Out Ch 1 Channel on which ribbon note-on and note-off messages are sent.
Velocity 100 Fixed velocity for all ribbon-triggered notes.

Factory presets

Preset Mode Settings Character
Strum Relative Below=0, Above=2 Three-octave upward spread from the chord — classic omnichord feel
Wide Harp Relative Below=1, Above=4 Five-octave range with one octave below for bass reach
Tight Tap Relative Below=0, Above=1 Compact two-octave surface, quick and percussive
Bass Line Fixed Min=1, Max=3 Fixed low-register window — always plays in the bass, any chord

Tips

15. Settings

Accessing settings

Tap the Settings button (gear icon) in the toolbar.

Tempo (standalone app)

Setting Range Description
BPM 10–500 Sets the tempo for all motion effects

In the plugin, tempo is inherited from the host and this control is not shown.

MIDI channels

Setting Default Description
MIDI Out Channel 1 HouseBud Out chord note output channel
Pad MIDI Out Channel 2 HouseBud Pad Out pad trigger output channel
Pad MIDI In Channel 1 Incoming MIDI for pad triggering
Pad MIDI Starting Note 36 (C2) MIDI note number of the first pad. All pad indices are offset from this note. Pad 0 sends and receives on this note, pad 1 on note+1, and so on.

Pad triggering

Setting Options Description
Pad Trigger Mode One Pad, Multi Pad One Pad keeps the traditional single-active-pad behavior. Multi Pad lets different pads stay held at the same time. This applies equally to touch and incoming pad MIDI.

Velocity

Setting Options Description
Velocity Mode Fixed, Random, Force Selects how UI-triggered pad velocity is generated. Incoming pad MIDI always keeps its original note-on velocity.
Fixed Velocity 1–127 Always sends the same velocity for UI-triggered slices.
Random Min / Max 1–127 Chooses a random velocity inside the selected range for each UI-triggered slice.
Force Min / Max 1–127 Maps touch contact size into the selected velocity range. If touch-size data is unavailable, HouseBud falls back to the middle of the range.

The current Velocity mode only affects UI-triggered slices on the chord surface. MIDI-triggered slices ignore this setting and preserve their incoming velocity.

Motion mode

Setting Description
Snap to Rates When on, motion faders snap to discrete note values (1/4, 1/8, 1/8T, 1/16, 1/32). When off, faders interpolate smoothly between rate extremes.

Virtual MIDI (standalone app)

Setting Description
Virtual MIDI In Enable/disable the "HouseBud In" virtual port
Virtual MIDI Out Enable/disable the "HouseBud Out" and "HouseBud Pad Out" virtual ports

Hardware MIDI (standalone app)

A list of all detected CoreMIDI input and output devices. Toggle each device independently.

Bluetooth MIDI (standalone app)

Opens the system Bluetooth MIDI browser to connect wireless MIDI devices.

Sampler (standalone app)

Setting Description
Enabled Turn the built-in sampler on or off
Volume Sampler output level
Preset SF2 soundfont patch number

16. Tips and Starting Points

For a classic house chord loop

For gospel-influenced pads

For deep minimal techno

For melodic house breakdowns

For MIDI-driven setups

For building a custom preset

  1. Pick your scale (Dorian and Mixolydian are the most versatile)
  2. Start with 4–5 degrees: tonic, subdominant, dominant, and a color chord
  3. Use Balanced or Smooth voicing for pads and leads; Grounded for bass-oriented setups; Tight for stab patterns; Sub for deep house and dub; Cinematic for wide, open textures
  4. Keep variants simple: Triad + Seventh is usually enough for live performance
  5. Add a chromatic bVII or bVI event as the last column for a reliable lift chord

Working with the sampler

17. Troubleshooting

No sound from the sampler

Notes keep playing after I lift my finger

Motion effects are out of tempo

External synth receives no MIDI

Pad MIDI triggering does not work

The preset surface sounds wrong after changing scale

User presets do not appear

The plugin does not appear in my host

Two chords are playing at once unexpectedly