/sequencers/ This section contains two categories of components, Edge sequencers and Value sequencers. Edge sequencers produce trigger signals at musically useful intervals. Value sequencers produce a series of values. To contrast: Edge sequencers produce the rythm. Value sequencers produce the notes. Edge Sequencers Edge sequencers are used to create ticks at specific intervals. The ticks can be used to trigger other circuitry. In this library, a tick is when the output signal changes sign. The components are designed to the MIDI standard of 24 ticks per quarter note. There are three sub categories; clocks, ticks and durations. At the minimum you'll need a clock and a tick object. The duration objects can be used to provide the time span for an ADSR. Clocks clock_24.abox2 clock_24 takes a tempo and emits a square wave at 24 edges per quarter note. input T Tempo in BPM output mc Master Clock, 24 edges per quarter note bar_clock.abox2 The bar clock is a more sophisticated version of clock_24. The Bar clock has 2 inputs and 4 outputs. input T BPM Tempo in beats per minute TS value The time signature as a fraction, 3/4 for example. output type description mc edges 24 edges per quarter note r edges 1 edge per bar 1b time duration of 1 bar X ramp ramp from 0 to 1 for the duration of 1 bar Ticks Use tick components to subdivide a clock into edges at specific note durations. Ticks require a clock. The r (reset) input is optional. ticks_triplet.abox2 ticks_duplet.abox2 ticks_bar.abox2 Durations Duration objects convert a tempo input into several time spans. For example, the dur_duplet u4 output can set an ADSR to exactly one quarter note, regardless of the tempo. dur_duplet.abox2 dur_triplet.abox2 Value Sequences These objects output a single value given a trigger input. Step Sequencer Step sequencers have many inputs and one output. When triggered by a clock, each input will be sequentailly connected to the output. inputs step_8.abox2 8 step_12.abox2 12 step_16.abox2 16 Random Sequencers These objects generate a scaled random sequence of values and add it to the input value. Scaled means that a range input is required. The output values will always fall between ± range PLUS the optional input offset. seq_random1.abox2 input X optional Value to add to. R required Range, Maximum ± random offset that will be generated. n required Next, generate the next value on the sequence. rs optional ReSeed, restart the random sequencer at S S optional Seed value for random sequence seq_random2.abox2 Random2 uses 2 random objects in series. The first generates the rythm. The second generates the notes. Each may be restarted independently. seq_random_walk.abox2 Random Walk generates a sequence that wanders around the input value. Seperate inputs control how big each step can be, and how strongly to pull back home. X Offset optional Value to add to R0 Step Range required maximum difference between values R1 Return Strength optional percentage to pull the value back twoards zero n Next Value required generate the next value s Reseed optional restart the sequence S Seed Value optional value to restart at seq_logistic.abox2 Logistic uses an iterative equation that may or may not generate random sequences. An L value controls how random the sequence may be. An initial value input sets the start point. In general, larger L value produce more random sequences, but there is no simple rule that defines how random it is.