Skip to content
mxmxmx edited this page Jan 29, 2019 · 108 revisions

basic usage (TU v.1.3):

channel basics:

  • select the channel (#1 - #6) you want to edit by turning the left encoder.
  • mode parameters are selected and edited with the right encoder; click to edit. click again to exit edit-mode.
  • the first parameter is the main clock mode. it defaults to the basic MULT, though the mult/div, pulsewidth, and phase % parameters are available across modes. most other parameters are mode-specific. channel #4 has an additional mode: DAC
  • pushing the left encoder once will re-sync the channels.
  • long-pressing the left encoder AND the up button simultaneously will reset all channels to MULT / default settings, and clear all CV mappings. (NB: this won't permanently reset the module, you'd also have to save the (cleared) settings to do so. see below)

save settings/state:

  • long-pressing the right encoder will take you to a menu page saying Load, Save, Apps, Conf.
    • to save the channel parameters, navigate to Save using the left encoder and select one of the four available 'preset' slots (the currently active slot, if any, is indicated by a little dot). once you've selected a slot, long-press the right encoder again to save the current state; the cursor should flash a couple of times, then return you to the clock app.
    • to load a previously saved preset, do much the same: navigate to Load, select the preset (#1-#4) and long-press the right encoder. the cursor will flash while the preset is being loaded, then return you to the clock app.
    • if you just want to leave the save/load menu, either navigate to Apps and click the right encoder or, alternatively, load the currently active setting.
    • to reset the module/EEPROM (settings sans calibration data), hold down both the up and down buttons during start-up.

global settings:

  • long press the right encoder, then choose Conf.
    • TR1 global div: sets a global clock divider value (for TR1 only). available options are: 24PPQ, 48PPQ, and 96PPQ.
    • TR1 master: choose yes to sync all channels to a/the 'master' channel, this will help keeping the channels in sync (which are normally independent and may diverge, if/when clock divisions are manipulated). said 'master' channel is dynamic in that channels will try to sync to the channel with the largest divisor (which can be subject to change, notably when manipulating the mult/div settings with a control voltage). the global resync behaviour will thus depend on that value. again, this works only for channels slaved to TR1.

assigning CV inputs and choosing clock sources (internal/external):

CV mapping:

  • push the down button, that'll take you to the CV page; assign CV channel # by selecting the destination (right encoder), then click to edit / select the source (CV1-CV4)
  • basically any parameter can be assigned to a CV input, except reset/mute and a very few others.
  • values with just 0/1 states (notably clock source) are toggled, if the CV input goes above ~ 1.2V
  • assignments are cleared either by specifically selecting destination - (ie none), or by long-pressing the down button (when on the CV page) -> that'll clear all CV mappings in that particular channel)

clock sources:

  • push the up button, that'll take you to the screensaver preview; now long-press the up button to slave all channels to the internal clock. a BPM setting will appear, which allows you to adjust the tempo of the internal timer. the default tempo (= -) is quarter notes, which can then be further divided down or multiplied via the individual channel settings.
  • alternatively, you can assign individual channels to either TR1, TR2, or INT (the internal timer) by adjusting the channel parameter clock source.
  • long pressing the down button while the BPM page is active will reset all channels to TR1.
  • reset/mute: when applicable, this assigns a reset source (basically: MULT, EUCLID, SEQ); it typically doesn't make sense, of course, to choose RST1 when the clock source is TR1, and v.v. Alternatively, choose =LO2 or =HI2 to mute a/the channel whenever TR2 goes low, respectively high.
  • the latency setting (at the bottom of the CV menu), allows to increase the trigger-to-processing latency by a few microseconds up to 4 milliseconds. this can be useful for timing gate/CV manipulations, ie if/when control voltages lag behind the main trigger.

brief run down of the modes/settings:

MULT : multiplication / division

available parameters range/values note
pulse-width echo, 1ms, 2ms, ..., 254ms, 50% echo: pulse-width = pulse-width of external clock, 50% = 50% duty cycle
phase % 0 - 99 phase offset (in % of period)
mult/div /64, /48, /32, /24, /16, /12, .... x48, x64 select channel division/multiplication factor
clock source TR1, TR2, INT, - select channel clock source
reset/mute RST1, RST2, -, =HI2, =LO2 reset: reset source for divider, sequencer, or euclidian generator; mute: mute outputs when TR2 goes high (or low)
  • NB: these basic settings are available across all modes (when applicable).
  • NB: when multiplying (x2, x3, ...), the pulse-width gets halved, too; in those cases, the displayed number is no longer reflecting the actual pulse-width, but will be a fraction of that value. rather, say, 60ms is 30ms when multiplying 2x, 20ms when x3, etc.

LFSR : linear feedback shift register

available parameters range/values note
LFSR length 4-31 sets length of shift register
LFSR p(x) 0 ... 128 ... 255 probability of the least significant bit flipping (0 = 0%, 128 = 50%, 255 = 0%)
LFSR tap1 0 - LFSR length tap #1 in LFSR (which bit to XOR with LSB when updating the shift-register)
LFSR tap2 0 - LFSR length tap #2 in LFSR (ditto)

RANDOM : random output w/ adjustable threshold

available parameters range/values note
rand > n 0 - 31 output goes high if random number > n, larger values of n --> less frequent triggers

EUCLID : euclidian trigger generator

available parameters range/values note
euclid: N 3 - 31 # slots in pattern
euclid: K 1 - N fills
euclid: OFFSET 0 - N offset

BURST : burst generator

available parameters range/values note
density 1 - 31 # of pulses per burst
f (initial) 2% - 200% % of burst 'speed' (fine-tune)
damping *0.25 - *1.75 determines the decay (> 1.0) resp. 'growth' (< 1.0) behaviour of the burst
burst src TR1, TR2 burst trigger input (when using BPM clock)
  • NB: the burst frequency or 'speed' is determined, in the first instance, by either the internal BPM clock (when choosing clock src = INT) or by a/the external clock (when choosing clock src = TR1 or clock src = TR2) plus whatever multiplier/divisor settings are applied. f (initial) is a percentage of this frequency.
  • you can use either TR1 or TR2 to actually trigger a burst: when clock src = TR1, TR1 determines the frequency and TR2 triggers the burst, and vice versa. when clock src = INT, you can choose which trigger input to use (ie burst src = TR1 or burst src = TR2).
  • note that an incoming trigger will choke an ongoing burst, even if phase-delayed. (that's not, exactly, a bug, more like an artefact of the implementation as is).

LOGIC : logic operations

available parameters range/values note
logic type AND, OR, XOR, NAND, XNOR, NOR logic operation to perform
op1 ch#1 - ch#6 channel used as operand #1
op2 ch#1 - ch#6 channel used as operand #2
track --> P_W, state what to operate on: pulse-width, or on/off states
  • NB: since the channels are processed sequentially, rather than in some quantum-entangled fashion, the result of the logic operation may not reflect the current output-state of the operand channels; it may lag behind by one clock or be lost in time in some way or another (notably, when logic operations are performed on channels performing logic operations).
  • 'tracking' P_W differs from tracking on/off state (beats) in the way the operands enter the equation, which tends to result in different output patterns. Thus, a pulse with, say, 10% duty cycle will be treated (as far as the logic operation is concerned) as "true" only 10% of the duty cycle, and as "false" 90% of the duty cycle (in terms of P_W); in terms of state, it'll count as "true" for the entire duty-cycle. A skipped beat will simply be "false", either way, of course.

SEQ : basic trigger sequencer/editor

available parameters range/values note
sequence # USER1 - USER4 select trigger pattern #1-4
--> edit length: 2 - 16, on/off edit trigger pattern
playmode -, SEQ+1, SEQ+2, SEQ+3, TR2+1, TR2+2, TR2+3, SH-1, SH-2, SH-3, SH-4 concatenate patterns, up to 64 steps; or CV-address (SH)
  • click on --> edit (right encoder) to open the edit window:
editor UI note
up button go to next sequence ('edit offline')
down button go to previous sequence ('edit offline')
up button (long press) copy sequence
down button (long press) paste sequence
left encoder (rotate) select step
left encoder (click) mute/unmute step
right encoder (rotate) rotate pattern; adjust pattern length (see below)
left encoder (push) + right encoder (rotate) clear pattern while expanding (see below)
right encoder (click) close editor

details:

  • edit with left encoder: select slot, click to activate/de-activate slot.
  • rotate the pattern by turning the right encoder
  • pattern length is set by moving the cursor to the right-most slot (the one with a dot), then expand or contract the pattern by turning the right encoder. by default, the pattern will be preserved when contracting, then expanding again a pattern. in contrast, pushing the left encoder down while expanding the pattern will fill up the pattern will empty slots.
  • by default, the editor 'opens' the selected sequence (ie USER1- USER4); in the absence of modulation etc, that'll be the active sequence, ie the one that's being played. you can edit the remaining sequences 'offline', so to speak, by pushing the up and down buttons to cycle through the four patterns. a litte arrow will appear next to the sequence id, e.g. --> #2, indicating that the sequence being edited is not the one currently active/selected by the sequence # parameter. that's mainly useful when modulating the sequence # parameter or when chaining patterns.
  • the playmode parameter allows to play the sequences in sequence; ie SEQ+1 alternates between the selected pattern x and x+1; SEQ+2 plays the patterns x, x+1, x+2, x, x+1, etc. the counter wraps around USER4. TR2+1,TR2+2, and TR2+3 increment in the same way, whenever TR2 goes high.
  • SH-1, SH-2, SH-3, SH-4: CV address steps via sample+hold (using CV1, CV2, CV3, or CV4, respectively).
  • when the editor is active, long-pressing the up button will copy the selected pattern; long-pressing the down button will paste it (to another sequence slot). copying works across channels.
  • reset/mute: choose RST2 (or RST1) to reset the sequence to the first step, when TR2 (or TR1) goes high. muting works much like in the other modes; in this case, it pauses the sequence at whichever step it's at, from where it will resume when TR2 (or TR1) goes low again.
  • in contrast, when assigning a CV input to sequence #, the step-counter isn't reset. modulation of sequence # literally just swaps the sequence, and continues from the currently active step (unless, of course, the sequence replacing the previous one is shorter than the active step count).

DAC : DAC output (12 bit, channel #4 only)

available parameters range/values note
DAC: mode BIN, RAND, T_M, LGTC, SEQ binary, random, 'turing machine', logistic map, sequencer
DAC: range 1 - 255 DAC output range (centred at 0V)
DAC: offset -3 - +3 DAC voltage offset (~ 1 volt/octave (ish))
  • the four modes come with a set of additional, mode-specific parameters:

BIN: 5-bit sequencer

  • primitive sequencer, where the channel on/off states determine the output value:
    • clock channel #1 = MSB, clock channel #6 = LSB (channel #4, being the DAC, isn't counted, hence 5-bit)
    • the sequencer can either track P_W (pulsewidth) or on/off state. (for details see LOGIC above)

RAND: random output

  • random values, with weighted history (basically, this averages over the last 1-8 output states (= depth) according to some weight factor (= weight))

T_M: LFSR/'turing machine'

  • emulation, sort of, of the popular 'turing machine'; ie some kind of shift register based output. the parameters (LFSR length, LFSR p(x)) work as above (see LFSRmode).

LGTC: logistic map

  • provides chaotic rather than random output, with one parameter: LGST(R), the r coefficient of the equation.

SEQ: (very) simple 16-step sequencer/arpeggiator.

  • editing works much like the trigger sequencer (see above), except there's only one 16 step track and you cannot mute steps (because there's no corresponding trigger output).
  • use the right encoder adjust the pitch value (coarse); to fine-tune, hold down the left encoder while turning the right encoder.
  • playmode: choose from the typical set of directions (fwd, rev, pendulum, random resp. up, down, up/down and random).
  • when playmode = ARP, steps can be muted: muting a note removes it from the arpeggiation pattern. the ARP mask can also be rotated (-> mask CV).