Step sequencer · unequal-length loops · beat making

15-Step Hi-Hat Over a 16-Step Beat: Why It Shifts and When It Realigns

When the kick/snare row returns to its beginning every 16 sixteenth-note steps and the hi-hat row restarts every 15, neither row is slowing down. They share one pulse but cross different loop boundaries. At each 16-step barline, the hi-hat occupies the next internal phase; both rows return to step 1 together only after LCM(15,16)=240 common steps. This guide uses a 16-step control, a true 15-step experiment, and a phase calendar to separate that expected evolution from an early relaunch, tempo drift, or a broken loop.

Scope: this guide applies only to sequencers that expose an independent row or track loop length / last step. Both test rows use one transport, tempo, 1/16 step duration, start point, and deterministic forward direction. “15-step” means the row really loops after local step 15; it does not mean 15 active hits inside a 16-step row or an empty step 16. This guide does not automatically label the result 15/16 meter or a traditional 15:16 polyrhythm, prescribe a BPM, or claim that FingerDrum currently offers independent per-row lengths. K16/H16/H15 are device-neutral teaching cards, not built-in FingerDrum patterns. Apple, Ableton, Novation, Roland, and Arturia support the product facts about row length, step rate, boundaries, and asynchronous loops; the LCM calendar, H16 control, audible tracer, and reset diagnostic are FingerDrum’s original synthesis.

Short answer: one complete cycle lasts 240 steps, not one bar

Verify that both rows use straight-sixteenth steps and that H really ends at local step 15. K16 then restarts every 16 steps and H15 every 15. Their shared state recurs after 240 steps: 15 complete K16 bars have elapsed, and the rows meet again on step 1 at the start of bar 16. A host that forcibly relaunches H15 each bar prevents this cycle. A uniform hat on every H cell can hide the shift from your ears, so place one accent or contrasting sound on H local step 1 as a tracer.

Prove that it is a 15-step loop—not a 16-step row with one fewer hit

Event count and loop length are different fields. A 16-step hat row can contain only four hits at 1, 5, 9, and 13, with step 16 empty, yet still wait all 16 steps before returning to local step 1. The row becomes a 15-step cycle only when its end, last-step, or loop-end control is actually set to 15 and playback returns to 1 immediately after that cell.

Products expose this capability in different places. The Roland TR-8S reference manual lets a specific track have its own Last Step. The Novation Circuit Tracks guide allows each track’s pattern to use any length from 1 to 32 steps, with independently defined start/end points. Arturia’s DrumBrute Polyrhythm mode permits independent track lengths. Similar labels do not guarantee identical behavior, so use the current tool’s manual to prove that the boundary changes playback rather than inferring it from dimmed cells or a folded page.

What the screen showsActual loop lengthWill it create a 15-step/16-step phase cycle?
Fifteen active hits among 16 cellsHit count alone cannot tell youUnknown; if loop end remains 16, it will not
Step 16 is emptyAn empty cell alone cannot tell youUnknown; read or observe the actual playback boundary
Only 15 cells are visible, but the playhead traverses step 1616 stepsNo; that is a view or fold state
Loop end / Last Step is 15 and the playhead returns to 1 after 1515 stepsYes, unless the host relaunches it early

Novation also documents a useful divisible control: a 16-step track repeats twice during one 32-step track cycle. Because 16 divides 32, they return together every 32 steps rather than creating a long phase rotation. Fifteen and sixteen do not divide one another, so their common cycle must be calculated.

Freeze K16/H16/H15 so loop length is the only variable

Build three rows in a duplicate or empty project. K16 supplies a fixed 16-step kick/snare frame. H16 is the control. Duplicate H16 as H15 and change only its loop end from 16 to 15. Do not change its hits, velocity, step rate, or sound, or the difference can no longer be attributed to length.

RowLoop lengthLocal hitsAudible markerPurpose
K1616Kick 01/09; snare 05/13Normal dynamics are enoughFixed 4/4 reference boundary
H1616Hat 01/05/09/13Clear accent on local 01Non-shifting control
H1515Identical to H16Keep the same local-01 accentLoop end is the only change
  1. Common time base: set K16, H16, and H15 to 1/16 per step. Do not confuse “15 steps” with “15 eighth notes.”
  2. Common launch: start all rows at global step 0 from one transport command. Set start offset and rotation to 0.
  3. Deterministic playback: use forward direction and disable probability, random, skip, ratchet, note repeat, and ping-pong. Swing does not change the step count, but hold it at zero/off here to remove an audible variable.
  4. Long enough container: span global positions 0 through 240, including the first cell of bar 16 where the rows return together. Apple notes that a shorter pattern region or cell can cut off or restart rows before their full musical cycle finishes.
  5. Keep the source: name and preserve H16 and H15 separately, with a screenshot or parameter record, so you can run H16 → H15 → H16 as a true return test.
Why does H15 need a tracer?

If all 15 cells contain the same closed hat at one velocity, the row boundary moves but the sound can remain an unbroken, rotationally symmetric stream of sixteenths. Fix one obvious accent, rest, or contrasting hat at local step 1. The tracer makes the row’s own beginning audible; it is a diagnostic marker, not an arrangement prescription.

Normalize the step duration, then calculate the least common multiple

Apple identifies pattern length and step rate as separate fundamentals that determine musical length. Raw step counts can be compared directly only when both rows use the same step duration. Here, both use 1/16, so:

LCM(15,16) = 240 common sixteenth-note steps

240 ÷ 16 = 15 K16 bars, while 240 ÷ 15 = 16 H15 cycles. Starting together on bar 1, the rows complete 15 full 16-step bars and meet on local step 1 again at the start of bar 16.

Ableton’s Making Music demonstrates the same logic at a smaller scale: 4- and 5-sixteenth loops realign after 20 sixteenths; adding a 3-sixteenth loop extends the composite to 60. The return point depends on the complete set of lengths, not on which layer a listener treats as the main beat.

If step rates differ, convert row durations to one common unit first. An 8-step row at 1/8 and a 16-step row at 1/16 both last 16 sixteenth-note units; taking LCM of the raw labels 8 and 16 would obscure that equality. Stop and consult the tool’s timing definition when triplet rates, microsteps, or another setting cannot yet be expressed in a reliable common unit.

Phase calendar: H15 advances one local cell at each K16 bar start

Number K16 bars with b, starting at 1. A bar begins at global step (b-1) × 16. At that instant, the H15 local cell is:

H phase at bar start = ((b - 1) × 16 mod 15) + 1

Because 16 mod 15 = 1, bar starts 1 through 15 meet H local cells 1 through 15 in order. Bar 16 returns to H local step 1.

K16 bar startGlobal steps elapsedH15 local phaseBoth at local 01?
Bar 1001Yes
Bar 21602No
Bar 33203No
Bar 44804No
Bar 56405No
Bar 68006No
Bar 79607No
Bar 811208No
Bar 912809No
Bar 1014410No
Bar 1116011No
Bar 1217612No
Bar 1319213No
Bar 1420814No
Bar 1522415No
Bar 1624001Yes

The apparent direction depends on the reference frame. Viewed from each K16 barline, the H phase advances 01 → 02 → 03. Viewed from H15’s reset marker inside the 16-cell frame, the first reset is bar 1 step 1, the next is bar 1 step 16, then bar 2 step 15 and bar 3 step 14—one cell earlier each H cycle. Both descriptions encode the same arithmetic. A worksheet must identify its viewpoint instead of saying only “it moves left.”

Capture 240 uninterrupted steps: inspect event phase before judging audio

Run the H16 control first. Its local-01 accent should stay on every K16 downbeat. Replace it with H15 and do not manually retrigger at barlines. Capture global positions 0 through 240—241 grid positions in all—so the first cell of bar 16 records the shared return. If the tool offers MIDI export, an event list, or a row-position log, inspect that discrete trace first. Audio tails, choke behavior, gate, and effects can change what equal row indices sound like, so audio is supporting evidence rather than the only clock.

  1. Start gate: at global step 0, K16 and H15 are both local 01; the tracer and main barline coincide.
  2. First separation: after 15 elapsed steps, H15 restarts at global position 15. The K16 bar-2 downbeat at global position 16 meets H local 02. If bar 2 still meets H local 01, the host probably relaunched H at the barline.
  3. Mid-cycle samples: bar 8 must begin on H local 08, and bar 15 on H local 15. Do not audit only the opening and return.
  4. Shared return: global step 240—the start of bar 16—must put both rows on local 01. Passing means matching the phase map, not merely enjoying all 15 bars.
  5. Reverse control: change only H15’s length back to 16. Its tracer should lock to the first cell of every bar again. If H16 still shifts, investigate transport, clock, offset, or an edit error before touching H15.

You may intentionally restart the phase cycle after 4, 8, or another number of bars in an arrangement. Label that result an intentional truncation, not a complete 15-step/16-step realignment. Apple explicitly documents that container length can restart rows before their own musical cycle ends; that distinction separates a production choice from evidence about the full phase relation.

The first phase-map mismatch is more useful than “it feels off”

ObservationFirst explanation to testChange one variable
Bar 2 still begins on H local 01The host, scene, clip, or region relaunches H every barLengthen the container or disable relaunch, then record from global 0
Early bars match, but H returns to 01 before step 240Transport restart, follow action, short region, or manual launchMark the first early return and its container boundary
The logged row phase moves at a different rateStep rate, actual loop end, offset, or playback direction differs from the contractRead back each setting, normalize the time unit, and recalculate
The event map is right, but the movement is inaudibleThe H pattern is rotationally symmetric or its tracer is weakChange only local 01 to an unmistakable accent or sound
Occasional hits disappear at non-repeating placesProbability, randomness, choke, or voice stealingDisable generative/exclusive variables before blaming LCM
The H16 control also drifts against K16A shared clock, tempo, launch, or sync-chain problemRemain on the equal-length control until it passes
At global 240 the row indices are not both 01Actual length, offset, direction, or step duration differs from the contractSolo each row and reread its settings instead of guessing from audio

Does a 15-step row mean the music is in 15/16?

The H15 cycle in this example lasts fifteen sixteenth-note units, but meter also depends on accent, grouping, and musical context. Setting a loop end proves duration, not the correct notated meter for the whole piece. “15-step independent-length loop” or “unequal-length phase cycle” is the safer operational description.

Is this polyrhythm or polymeter?

Manufacturers and teaching materials do not use one label consistently: Arturia calls its independent-track feature Polyrhythm; Ableton writes about asynchronous or polyrhythmic loops; Roland describes the corresponding control simply as a per-track Last Step. This audit does not need a genre or theory label. It records the common step duration, each row length, launch, direction, and shared return; a musical analysis can then choose terminology from the actual accents and perceived grouping.

Is the phase shift a form of tempo drift?

No, provided both rows share a stable transport and step duration. Tempo drift changes pulse spacing or the clock relation over time. Here every step stays equal; only two loop boundaries change relative position, and their reunion is predictable. If the equal-length H16 control also moves, stop this LCM test and audit the sync chain.

What if I add a third unequal-length row?

Convert all three durations to one base unit and calculate LCM(A,B,C). The shared cycle can grow quickly: Ableton’s 4-, 5-, and 3-step example expands from 20 to 60 sixteenths. If the host container cannot hold the result or deliberately restarts early, label the capture as a partial evolution rather than a complete realignment.

Deliverable: a phase card that predicts the next reunion

Keep the K16/H16/H15 settings, common step duration, tracer address, LCM arithmetic, phase table for bars 1–16, 240-step capture, and H16 return test. You can then distinguish deliberate unequal-length motion, an early host reset, and a separate timing fault instead of calling every displacement a broken loop.

Sources and access date

  1. Apple — Change the musical length of a pattern in Logic Pro (accessed August 21, 2026)
  2. Ableton, Making Music — Asynchronous or Polyrhythmic Loops (accessed August 21, 2026)
  3. Novation — Circuit Tracks User Guide, Version 3 (accessed August 21, 2026)
  4. Roland — TR-8S Reference Manual, Version 3.00 (accessed August 21, 2026)
  5. Arturia — DrumBrute User Manual 1.2 (accessed August 21, 2026)