PolyBud is a multi-track, polyphonic MIDI sequencer for building polymetric and polyrhythmic patterns. Every note track has six independent step lanes, and every CC track has its own values and ramp. Tracks run simultaneously with their own rates and MIDI channels.
The default project contains one four-step note track in C major at 1/8, MIDI channel 1, velocity 90, 50% gates, no ratchets, full probability, and no pitch randomization.
PolyBud has no single global step cursor. Every track advances on its own rate, and the six lanes inside a note track wrap independently. A four-step pitch lane can therefore run beside a seven-step velocity lane and a five-step gate lane. Their relationship continually shifts before eventually repeating.
Note and CC tracks also coexist at different rates and channels. This makes one PolyBud pattern capable of controlling several instruments and modulation destinations at once.
Each Note Track contains six lanes:
The track's Rate and MIDI Channel are shared by all six lanes. Each firing releases the previous note owned by that track before playing the next, so a track is monophonic by itself while multiple note tracks remain independently polyphonic.
A preserved behavior is important when using Probability: a failed roll still emits a note-on with velocity 0 rather than suppressing the event completely. Most instruments treat this as silent, but MIDI monitors will still show it.
Ratchet count is selected once for the logical step, while note, velocity, and probability are evaluated again on each sub-hit. The lane cursors advance only after the ratchet cycle completes.
Select a lane, then use + or − at the end of the step editor to change only that lane's length. Tap # to enter a precise count. Note, Velocity, Gate, Ratchet, Probability, and Random can all have different lengths.
Every firing advances all six cursors once; each wraps at its own lane length. For example, combining a 4-step Note lane with a 7-step Velocity lane creates 28 pairings before their starting alignment returns.
Changing patterns, starting transport, or relocating the host resets each lane to its first step and safely releases held notes.
A CC track stores a MIDI CC number, a value lane, a rate, a ramp amount, and a MIDI channel. Values span 0 through 127.
Ramps continue smoothly across audio processing buffers. Beginning a new ramp replaces the previous ramp for that CC track.
Tap + at the bottom of the mode list and choose:
Open Settings to configure each note track's MIDI Channel, Min Octave, Max Octave, and removal action. CC track settings provide MIDI Channel, MIDI CC, and removal. The Scale and Key rows apply across note-track musical configuration in the current pattern.
Track rates can be different. Selecting any lane of a note track shows that note track's Rate; selecting a CC lane shows the CC track's Rate and reveals Ramp.
Patterns store all note tracks, CC tracks, independent lanes, current mode, rates, channels, scale settings, and ramp values.
Tap a numbered pattern to select it. Tap + in the Patterns row to create a fresh pattern with one note track using the previous pattern's key and scale. Long-press a pattern for Copy, Paste, and Delete. At least one pattern remains.
Enable Draw to swipe across faders and paint a lane quickly. Horizontal scrolling is disabled while Draw is active; turn it off to scroll.
Rates span 16 Bars through 1/64, including dotted and triplet values where applicable.
PolyBud emits all track data on one MIDI output cable. Each note or CC track has its own MIDI Channel.
Default remote settings are:
On the configured input channel, a nonzero value on Patterns CC selects pattern value using 1-based numbering. Program Change 69 requests BrainBud key/scale synchronization for every note track. When universal BrainBud reception is enabled, any input channel is accepted; otherwise it must match MIDI In Channel.
The standalone app provides PolyBud MIDI In and PolyBud MIDI Out virtual ports and selectable physical MIDI inputs and outputs.
The standalone app includes an optional SoundFont sampler for auditioning note tracks. Use Sampler Enabled, Volume, and Preset in Settings. CC tracks still emit MIDI but their audible effect depends on the receiving instrument and chosen controller number.
Tempo defaults to 120 BPM and can be set from 10 to 500 BPM. The Ableton Link row opens session controls for synchronization with other Link-enabled apps. Tracks advance only while transport is playing.
Load Cem Olcay: PolyBud in an AUv3 host and route PolyBud Out to one or more instruments. The plugin contains no standalone audition sampler and follows the host's transport and tempo.
Factory presets are 4 Steps, 8 Steps, 16 Steps, 32 Steps, and 64 Steps. Full multi-track project state is saved with the host.
The automation surface includes Pattern, Rate, Scale, and Key. Rate, Scale, and Key act on the currently selected track/mode. Individual lane values, track channels, CC numbers, and ramps are edited in the plugin UI and preserved in state.
Shared settings include:
The standalone Settings screen additionally includes BPM, sampler controls, Ableton Link, virtual and physical MIDI ports, and MIDI Panic.
No sound: Start the transport. Enable the standalone sampler or route PolyBud MIDI Out/AUv3 MIDI output to an instrument. Match each note track's MIDI Channel to a destination.
Only one track is audible: Check the MIDI Channel and routing for every note track. A destination set to one channel will ignore tracks on other channels.
Probability-zero steps still appear in a MIDI monitor: This is expected: failed probability emits a note-on at velocity 0. The receiving instrument should treat it as silent.
A CC track has no effect: Confirm its MIDI CC number and channel, and verify the destination maps that controller. Set Ramp to 0% while testing so the target value is sent immediately.
The pattern takes unexpectedly long to repeat: Lane and track lengths wrap independently. This is the intended polymetric behavior.
Remote pattern selection fails: Match Patterns CC# and MIDI In Channel, send a nonzero value, and ensure the requested pattern exists.
A note is stuck: Stop or relocate the transport, change patterns, or use MIDI Panic in standalone Settings.
AUv3 is missing: Launch the standalone app once after installation, restart the host, and rescan Audio Units. Confirm the host supports AUv3 MIDI output routing.