Creating Non-Isochronous Rhythm Patterns Using The Boss Dr.Beat DB-88 Metronome

image source: bosscorp


To obtain non-
isochronous rhythm patterns (sometimes referred to as "timelines") with the Boss Dr.Beat DB-88, subsequent notes are played at different tempos to mimic varying musical durations, which per se are available on this metronome, but at too slow tempos only. The method equally applies to other metronomes with a similar feature set. We also present a tool that performs the calculations.

Boss Dr.Beat DB-88 Features

This metronome allows you to program two independent beat counters, each counting up to a maximum of 8 beats. In addition, you can accentuate the following subdivisions at a configurable volume using faders: Downbeat, offbeat (8th or "quaver"), two remaining 16ths (or "semi-quaver"), 8th triplets. These parameters plus the tempo (BPM 35-250) define a "program" on this device, eight of which you can program and store persistently.

Additionally, a "LOOP" mode is available which allows to chain programs together. It has the limitation that it can only play programs 1 - 8 in that order. You can have a program played from 0 to several times, though.

Features used

The features we use for this method: programs, BPM, LOOP.

Non-Isochronous Rhythm Patterns

The two beat counters allow to program non-isochronous rhythm patterns on a quarter note-level. We could simply redefine the level to 16th notes by dividing the BPMs with 4. However, since BPM is limited to a maximum of 250, the resulting tempo would be too slow: With a maximum of 250 BPM, redefining the beat to a 16th note, the corresponding regular BPM would be 250/4 = 62.5. However, you can trick the metronome into playing those patterns at higher tempos by programming 1-note beats at different tempos and referring to them in the metronome's "LOOP" mode.

I use Eddie Harris' "Ambidextrous" riff () to demonstrate the procedure:

  1. Identify the durations between onsets of the given pattern in 16th notes (i.e. dotted 8th = 3, 16th + dotted 8th rest = 4, 16th + 4th (crotchet) rest = 5, 4th = 4), resulting in the timeline 3-4-5-4. Or graphically, black squares representing onsets (aka TUBS):

  2. Choose the duration that comes closest to a quarter note among those identified in the previous step (example: I choose 4.).
  3. Assign the chosen duration a tempo that is integer divisible by the least common multiple of all durations divided by the chosen duration. (Why?)
    I.e. if you chose duration 3, the tempo assigned should be integer divisible by lcm(3,4,5)/3, i.e. 20. If you chose 4, the tempo should be integer divisible by lcm(3,4,5)/4, i.e. 15. Finally, if you chose 5, the tempo should be integer divisible by lcm(3,4,5)/5, i.e. 12.
    I call these required divisors increments, since they dictate the amount to increment a valid BPM to remain a valid BPM candidate. (In the example I assigned 90 BPM to the chosen duration 4: 90 is integer divisible by lcm(3,4,5)/4 = 15.
    Remark: Since 3, 4, and 5 are prime to each other, the increment for duration 3 is lcm(3,4,5)/3 = lcm(4,5) = 4 * 5, and likewise for the increments of the durations 4 and 5.
  4. Determine the multiplier of the increment (15) to reach the tempo chosen in the previous step (example: 90/15 = 6).
  5. Multiplying the remaining durations' (3 and 5) increments (20 and 12, respectively) with the multiplier (6) determined in the previous step will yield the tempo that represents the respective duration (example: 20 * 6 = 120, 12 * 6 = 72).

    duration (16ths)incrementprogrambeat 1 countbeat 2 counttempo (BPM)LOOP count
    3lcm(3,4,5)/3 = 201101201
    4lcm(3,4,5)/4 = 15210 901
    5lcm(3,4,5)/5 = 12310 721
    4lcm(3,4,5)/4 = 15410 901

  6. The Boss Dr.Beat DB-88 "LOOP" mode has the limitation that it can only play programs 1 - 8 in that order. You can have a program played from 0 (="OFF") to several times, though. We have 4 note onsets, so we need 4 programs. So we program them all to 1 beat, no subdivision accents (as they will sound totally off when using this method), tempos as given in the table above. Then switch to "LOOP" mode and configure programs 1 - 4 to be played each once ("1"), and programs 5 - 8 to "OFF".
  7. Press "START/STOP".

BPM Calculator Tool

Instructions: Enter the timeline in the field below, e.g. "3 4 5 4" without the quotes and press Tab.

In the generated table: Change the BPM for any duration by either clicking the small arrows or click in the BPM text field and scroll up or down using the mouse wheel. Also the left ← or down ↓ arrow keys can be used to decrement the BPMs, or the up ↑ and right → arrow keys to increase. The BPMs for the other durations are adapted accordingly.

The BPMs are constrained by the increment as well as the range of BPM of the metronome, i.e. 35 - 250: If a BPM field exceeds this range, its background gets colored.




Why lcm(d, b, c, ...) / d ?

© Bernhard Wagner, May 2009. Extended February 2010, July 2011.