Rhythm sequencer (6HP)

Inspired by:

interactive version (top PCB)
interactive version (bottom PCB)

Three-channel Euclidean and x0x-style gate sequencer inspired by DNIPRO's DOT (note that these modules are similar only in name and function, the internal design and firmware are entirely my own).

DotSeq has three 16-step channels, which can be filled via Euclidean patterns or manual step activation. The buttons cycle through Euclidean fill, pattern length, and offset parameters. An encoder increments or decrements the selected parameter, and can be pressed to manually (de)activate individual steps. All channels share a single Clock and Reset input, but have individual CV inputs and Gate outputs. CV control can be assigned to any one of the Euclidean parameters (+-8 increments) for each channel.

Build notes

This module follows my general digital reset logic: a rising edge into the Reset input is treated like a clock pulse that actively moves the sequence back to the first step, and the Clock input is ignored for a few milliseconds after that. The alternative is that a reset will cause the next clock to move the sequence back to the first step. Since the latter requires much more precise (external!) timing of concurrent clock and reset signals I prefer the first approach.

DotSeq clocks like a trooper up to at least 8 kHz, beyond which you can't really speak of a trigger sequencer anymore. The display only updates at roughly 70 Hz - actually twice that, but every cycle only refreshes one colour - so that's when it will look like it kind of starts freaking out. Don't worry, clocks and resets are still being processed by hardware interrupts correctly, it's just that our eyes wouldn't really be able to keep up with those kinds of speed anyway (and the more time spent clocking the less time there is for displaying things!).