A collection of sequencers. Some modules of this plugin are inspired by the XOR plugin which is not available in Rack v2.
New modules in 2.4.0: SEQ22, Map, Swen
New modules in 2.3.0: µMatrix, HexSeqP2
New modules in 2.2.2: ASEQ, TXVI,M16, S16, M16S
New modules in 2.2.0 PMod,Carambol
New modules in 2.1.0: P16A, P16B, P16S, UnoA, CCA, CCA2, Ant, TME, SigMod, MouseSeq, Preset, CDiv, CSR
See also the demo patches on PatchStorage or on youtube
Table of Contents
This type of sequencer does not have any clock inputs. The current steps are selected via voltage inputs, similar to using the step CV input from Bogaudio's ADDR sequencer. However, the plugin provides some modules which do the job of addressing based on a clock. But every other module or combinations which outputs step functions (e.g. S&H) can be used.
Some use cases of the module:
If the step param is set to 0.1V ACC can be used to drive AG, Chords, Faders, P16, P16A.
The Chord module provides 100 voltage addressable polyphonic semi note values in the range from C0 to C8.
The number of channels can be set in the menu.
The address input recognizes 0.1V per step.
If the Edit button is pressed the module behaves like the address input is not connected i.e. the steps can be manually selected, otherwise a connected address input will disable manual stepping.
A click on the copy button will make a copy of the note values.
After selecting a new step it can be pasted there.
Pressing the N+ button transposes one semi up.
Pressing the N- button transposes one semi down.
Pressing the O+ button transposes one octave up.
Pressing the O- button transposes one octave down.
The chord module outputs behaves like the corresponding ones in the MIDI CV module.
In the menu the number of polyphonic channels and the polyphony modes Rotate,Reset and Reuse for the channel assignment can be configured.
The Reorder action in the menu causes the chord to be ordered in the polyphonic channels from the lowest note to the highest.
The Auto-Reorder option causes the Reorder action on every change and the polyphony modes are ignored.
The Auto-Channel option causes the outputs only have as many channels as key buttons are pressed. In this case the Polyphonic Channels setting is ignored.
Clicking The menu "Insert Chord" causes inserting an empty chord and moving the following chords one to the right. The last chord is removed.
Clicking The menu "Delete Chord" causes removes the current chord by moving all following chords one to the left.
The ACC module can be used to drive a chord sequence.
This module provides 16 Tracks of a 4x4 Grid Sequencer. It is intended to be a building block for simulating hardware sequencers like Rene or Z8000. It is inspired by the Z8K and the Renato module from the XOR plugin.
The top two input rows are the 16 CV address inputs. The 16 steps are addressed in the range of 0-10V i.e. 10/16V per step. Below there is the 4x4 Grid with 16 CV value knobs. The range of the knobs is configurable in the menu. The values can also be quantized to semi notes. The 16 lights per step show the position of each track and the polyphonic gate output besides the knob reflects the status of the lights.
Below that there are two rows of polyphonic gate inputs. With these, the steps for each track can be muted separately which is reflected by the next two rows of monophonic gate outputs, the lights and the output besides the cv knob.
The next two rows are the monophonic CV outputs for each track.
On the bottom there are some additional polyphonic inputs and outputs.
Here are some modules which are suited for a clocked addressing of the TD4 but not limited to.
(step%4)*4+step/4
which causes moving up or down
in TD4 and other grid sequencers (see below)NB: The videos have sound which could be turned on.
This example illustrates the use of four P4. The second (from right) connected P4 has an offset of 4, so it will go through the second row. The third P4 is set to Y and offset 4, so it goes through the second column. The forth P4 is set to Y and offset 12, so it goes through the forth column.
The use of AG is also shown to mute some steps via the Gate inputs.
https://user-images.githubusercontent.com/1134412/167461678-ca6a8c83-2a86-48d4-830f-3fba07001cec.mp4
This example shows how to make a complex 16-step sequence with three P4 modules. Only the right most P4 is connected to the TD4. The left most is clocked x4 and controls the permutation selection and the middle P4 (also clocked x4) controls the offset - by set to direction Y it always moves the address by 4 steps.
https://user-images.githubusercontent.com/1134412/167403636-a7df029f-7f20-447d-914b-bb02f3699082.mp4
The P16 module provides 100 predefined 16-Step Sequences (ok, some kind of tiny collection compared to the possible 20922789888000 permutations). But at least the direction (back or forth) and an offset can be selected per sequence. However, e.g. an S&H or Towers+SwitchN1 or like in the example above can be used to make the rest. NB: This size should be 16 for TD 4. Here an example of the first 10 sequences.
https://user-images.githubusercontent.com/1134412/167461717-dcd016cd-858e-4bdb-9e3b-25aaaae53013.mp4
A variant of P16 with editable patterns and some extras:
This is a variant of the TME module for generating CV addressing patterns.
The output is built by (A*1+B*2+C*4+D*8) * 10/size
where A (B,C,D) is zero or one reflecting if the
clock dividers are on or off at the position of A (B,C,D)
P16S sequences the values provided by the polyphonic In port according to the method given by the dir param. It can also used as sequential switch (like 23volts SwitchN1)
This is a 16 step Uno with polyphonic inputs for probability and sequence reset (SR) suited for addressing.
Example Usage:
https://user-images.githubusercontent.com/1134412/198848122-db6a0e34-0f93-4179-af81-bff62eb621ce.mp4
PXY is a 2D walker controlled by X+,Y+,X-,Y- Trigger inputs. The start point can be controlled and the maximum length in each direction where wrapping around will occur. This size should be 16 for TD 4.
Here an example:
https://user-images.githubusercontent.com/1134412/167461807-b4f6fbb2-5726-4762-abbb-8dfcab86d55c.mp4
Generates address sequences by multiplying the step number (increased by the clock input) with the value of the Mult parameter and modulo the value given by the Mod parameter.
A universal sequencer. Vaguely inspired by the o88o module from the XOR plugin.
CAUTION: This module will trick you into spending a lot of time. Consider taking a walk in nature instead.
Menus:
Paste RLE from clipboard: The RLE format looks like this:
x = 18, y = 18, rule = B3/S23
4b2o6b2o$3bo2bo4bo2bo$3bobo6bobo$b2o2bo6bo2b2o$o4b8o4bo$ob3ob6ob3obo$b
o2b2o2b2o2b2o2bo$4b2o5b3o$4b3o2b2ob2o$4b3obobob2o$4b2o2b2ob3o$bo2b2obo
2bob2o2bo$ob3ob6ob3obo$o4b8o4bo$b2o2bo6bo2b2o$3bobo6bobo$3bo2bo4bo2bo$
4b2o6b2o!
Something like that can be copied and pasted at the position of the CvX,CvY param. The x and y must be less than the current size. The most common application used in the context of 2D cellular automation is Golly. In this app a selection on the grid can be copied and then the RLE is in the clipboard. (the rule int RLE is ignored and must be set in the menu)
There is additionally an expander C42E which provides additional outputs:
A general alternative is to combine the outputs via the Sum module (see below) and its SE Expander or any other module which processes multiple polyphonic inputs.
If the Gen Button is clicked or a trigger on the Gen input is received a new 2D cellular automata generation is produced
The following rules can be configured in the menu:
NB: These rules all operate on a torus.
The reset button or a trigger on the reset input rewinds the grid to the last edit operation.
The Rnd button generates a random grid using the Dens (density) parameter.
Here is a demo showing classic sequencing. The melody and bass are made with one play head driven by a P16 by using the Col-Top and Col-Bottom output. The middle line where the play head is moved and which is not counted in Col-Top or Col-Bottom is used for adding some gates triggering an ADSR/filter cutoff. The level parameter is set to 1/7 (+a bit more) and the mode of Quant is "equi-likely" so that one more counted cell will move up by one position of the scale and an octave is exactly 7 counted cells.
On the second C42 one P16 and three P4 are used to make a 3-voice 32-step drum sequence.
(Due to the limited size of the video the sound quality is not so good).
https://user-images.githubusercontent.com/1134412/167498725-c5f50865-482a-4753-905a-3c2e5e11c66f.mp4
In this example a period-16 oscillator in conways life is used. Four playheads are placed randomly via RndH. The M+A (main diagonal + anti diagonal) output of the C24E expander is used to make the CV. The trigger output triggers an ADSR/Filter cutoff.
https://user-images.githubusercontent.com/1134412/167783412-6dd213e9-b0b4-4d48-86a2-25c285fb9923.mp4
Similar to C42 TheMatrix provides a grid of size 32x32 where up to 16 play heads can be placed via the CvX/CvY params and inputs. But on each cell there can be edited an ascii char in the range from 32 (space) to 126 (~). The polyphonic CV output is built in the following way if a play head is on a cell which is no space: First an integer number is looked up from the following table:
char | value | char | value | char | value |
---|---|---|---|---|---|
! | -47 | A | -15 | a | 17 |
" | -46 | B | -14 | b | 18 |
# | -45 | C | -13 | c | 19 |
$ | -44 | D | -12 | d | 20 |
% | -43 | E | -11 | e | 21 |
& | -42 | F | -10 | f | 22 |
' | -41 | G | -9 | g | 23 |
( | -40 | H | -8 | h | 24 |
) | -39 | I | -7 | i | 25 |
* | -38 | J | -6 | j | 26 |
+ | -37 | K | -5 | k | 27 |
, | -36 | L | -4 | l | 28 |
- | -35 | M | -3 | m | 29 |
. | -34 | N | -2 | n | 30 |
/ | -33 | O | -1 | o | 31 |
0 | -32 | P | 0 | p | 32 |
1 | -31 | Q | 1 | q | 33 |
2 | -30 | R | 2 | r | 34 |
3 | -29 | S | 3 | s | 35 |
4 | -28 | T | 4 | t | 36 |
5 | -27 | U | 5 | u | 37 |
6 | -26 | V | 6 | v | 38 |
7 | -25 | W | 7 | w | 39 |
8 | -24 | X | 8 | x | 40 |
9 | -23 | Y | 9 | y | 41 |
: | -22 | Z | 10 | z | 42 |
; | -21 | [ | 11 | { | 43 |
< | -20 | \ | 12 | | | 44 |
= | -19 | ] | 13 | } | 45 |
> | -18 | ^ | 14 | ~ | 46 |
? | -17 | _ | 15 | ||
@ | -16 | ` | 16 |
Then this number is multiplied by the level parameter value and passed to the output.
So if the level parameter is set to 1/12 then we have a semi note range from C#-2 to B-3 and the letter 'A' denotes A-2.
A space will cause that the gate output is set to 0V, every other character causes the gate output set to 10V.
This seems to be a bit complicated, but there are some editing features which make life easy:
The editor supports also selecting a rectangular region with cut/copy/paste operations. Text can also be pasted from the system clipboard.
The editor is also connected to the undo/redo system of VCVRack.
The Rnd Button or a trigger on the Rnd input will fill the grid or the selection with random characters in the range set by the Range parameters min and max. The dens parameter or input controls how many spaces are generated.
Here an impression what can be done with multiple playheads:
https://user-images.githubusercontent.com/1134412/198893701-24a33a29-0b95-4325-b53b-31a91c0a0682.mp4
Same as TheMatrix but with only four columns.
A one dimension continuous cellular automaton voltage addressable sequencer.
Here an example with one playhead driven by Walk2 and switching the function parameter with AddrSeq. The initial values are randomly chosen.
https://user-images.githubusercontent.com/1134412/199918183-bbc5518b-632d-49e4-a298-79926b29c9ff.mp4
A two-dimensional variant of continuous cellular automaton. Similar to C42. The rule is defined by a function and a parameter.
Here an example: 4 playheads are placed static on the grid and the clock drives the generation.
https://user-images.githubusercontent.com/1134412/198815185-18c993f1-2439-45ca-8715-29882053e671.mp4
A 2D turing machine also known as Langton's Ant.
Rules can have up to 16 colors. The Rule input interprets the polyphonic signal as follows:
There can be placed up to eight Ants via the Ants input:
# channels div 2
There are additionally some standard rules and number of ants configurable in the menu to start with (applied if the Ants/Rule inputs are disconnected).
The Xout and Yout ports deliver the coordinates of the ants. These can directly used for TheMatrix, CCA, CCA2 or C42 with grid size 32.
The number of steps per clock pulse can be set using the Steps parameter
The set knob or input triggers storing the current grid and ants, which will be set if a reset is triggered.
Here is a simple example with 3 Ants configured in the menu with the rule LLRRRLRLRLLR, where it is not clear in which time this sequence would repeat.
https://user-images.githubusercontent.com/1134412/198703138-915d2495-e716-4cb7-9cbd-be547074b18c.mp4
Here an example configured with the ants and rule input (BBBRLBFB).
https://user-images.githubusercontent.com/1134412/198720606-a42da3ca-bc6c-4c92-b1da-49ea7be213b6.mp4
The following sequencers are reimplementations with additional/different features of some sequencers of the XOR plugin.
Uno is a reimplementation of the qu4ttro sequencer of the XOR plugin. With the default values this is a normal 8-step sequencer. However, this sequencer answers the question of what happens if a probability can be set for skipping a step.
Differences/Additions to the original:
Here an example showing the effect of the Rst button:
https://user-images.githubusercontent.com/1134412/168129909-76ae9c21-6e5a-4e34-a107-bf9f9eb173e2.mp4
You know, it may be better to take a walk in nature ...
This module is a reimplementation of the Klee module of the XOR plugin with a bunch of additional features.
It simulates a Klee like sequencer - please read carefully the PDF first you will find if you type
'klee sequencer pdf' in your search engine to understand what this is all about.
There are also tutorials on youtube for the hardware klee (search for 'klee sequencer')
and you also will find a three years old great tutorial from Omri Cohen about the XOR Klee.
The additional features:
NB: this module needs a bunch of tutorials or may be better taking a walk ....
Here is an example how to use the Klee without a quantizer connected to the CV outputs but
still staying in a scale.
With a script (can be run with node klee.js
in the project root if node.js is installed)
there are precomputed scales which would occur if only three values of 16 are
not zero or its octaves. It shows that e.g the semi notes 2-5-9 and its octaves make a major scale 0,2,4,5,7,9,11 whch will not be left
regardless of the bit pattern.
It requires more bits in the pattern to get a sequence which covers most of the scale.
The video also shows the use of the polyphonic CV input.
https://user-images.githubusercontent.com/1134412/168665134-d6fbbb24-1278-4fd4-afe9-92c217cbfe2d.mp4
This module is a reimplementation of the M581 of the XOR plugin.
Things change dramatically if the repetition values are set to a higher value than one. The step then will stay for the number of repetitions. This will make the sequence longer (however the sequence length can be held constant via the rst input). Now the gate mode parameter comes into play:
If the glide button is on, there will be a portamento with speed adjustable by the glider knob. If the step is turned off it will be skipped.
CYC is a reimplementation of the Spiral sequencer of the XOR plugin.
N3 is a reimplementation of the Nag-Nag-Nag sequencer from the XOR plugin with the following differences:
Here an example how to use N3 as 16-step trigger sequencer by setting the degrees to 22.5 .
https://user-images.githubusercontent.com/1134412/169410926-7ad989b9-d5fe-4d3f-9039-793251da9c1b.mp4
Here an example of increasing the degree parameter via the degrees input while modulating all Rotate and Skew parameters with a RndC.
https://user-images.githubusercontent.com/1134412/169410966-ff140fd2-2877-47cc-abd2-93af830ad472.mp4
Note that in the Exact mode (exact hits) the Skew,Rotate and Degree parameters should somehow fit together to get overall some hits, e.g. could be integers.
This module is a port from the QWELK N.E.W.S module (Copyright 2017 Parsa 'raincheque' Jamshidi) with unchanged functionality of the original.
This is version 2 of HexSeqP from dbRackModules.
Enhancements:
ASEQ is a 16-step sequencer with some fine-grained possibilities for random variation over time.
TXVI is a 16 step sequential or voltage addressable switch which also can be used as sequencer, track and hold, sample and hold.
A billiard simulation for sequencing and modulation.
Params:
Outputs:
Inputs:
Here an example showing the case with all connected inputs and the effect of cconnecting a clock.
https://user-images.githubusercontent.com/1134412/207141868-d20c34ad-bdb9-4165-a912-8ae4c2c1e2ca.mp4
The simulation was ported and adapted from Ten Minute Physics -- Copyright 2021 Matthias Müller.
A Triadex Muse Emulator (see e.g. here).
D*8+C*4+B*2+A
multiplied with Lvl.Here an example of changing the scale.
https://user-images.githubusercontent.com/1134412/198822402-09162005-72b9-4659-880a-378d2ab2c5ef.mp4
In the following example the CV output is used for addressing the TD4 sequencer. The Level must be set to 10/16V to have 16 steps in 0-10V.
https://user-images.githubusercontent.com/1134412/198822450-cddd8ef5-4e0a-44fe-9389-a5469b538bcf.mp4
SigMod has a 16 value shift register (SR) with 5 tabs which can be placed inside the SR via the Pos parameters (Pos1,Pos2,Pos3,PosR,PosO). On a clock trigger the first three tabs are used for making a decision if either the incoming signal (through the IN input) is read and put into the SR or the value inside the SR at the read position (PosR) is taken. The decision is build as follows:
!(v1<Cmp1 XOR v2<Cmp2) XOR v3<Cmp3
where v1,v2,v3 are the values of the SR at the tab positions Pos1,Pos2,Pos3. The 'less than' decision can be inverted in the menu for each comparator separately.
Here an example. It shows how the original sequence is scrumbled but still there somehow.
https://user-images.githubusercontent.com/1134412/198817855-d4cc421a-d1b8-493b-b96d-0abde74013b1.mp4
A sequencer, solo player driven by the mouse.
How to use:
Then press and move the mouse on the green pad.
The current clock input can be switched with the keyboard z,x,c,v
.
The sales can be switched via a,s,d,f
.
Here an example:
https://user-images.githubusercontent.com/1134412/198819843-25800021-1423-41da-b80b-4b2a301cdc4f.mp4
This module does the same as Sum Mk 3 from the ML Modules plugin, but it has 12 polyphonic inputs and a chainable expander which reduces the amount of cables if different sums are built from the same inputs.
CV is another discrete CV value source. The number on the selected button is multiplied by the level value and passed to the output. The original idea for this module was born after watching the video about the octave sequencer from Jakub Ciupinski. With the CV module it looks like this:
It basically behaves like the OCT module of the Fundamental plugin. It can be used without a quantizer as the level can be set to 1/12.
Yet another clock generator module. The purpose of this module is to have many clock generators with different ratios and adjustable pwm. You may need it when working with the sequencers described above.
The BPM input X (range -1 to 2) expects the frequency in HZ via 2^X i.e
The BPM output delivers vice versa.
Clock dividers. Why another?
I needed some with a reliable reset behaviour and divisions up to 100. The dividers are always in sync even while changing the division.
A 16 value shift register (used also in SigMod).
A 2HP module to merge 16 mono channels into a poly output.
A 2HP module to split a polyphonic input into 16 mono outputs.
Like M16 but it provides stereo inputs and outputs. The left inputs are normalized to the right if not connected. Additionally, if an input has more than one channel it is summed up (can be turned off in the menu). Can be used as stereo mixer like this: