Klavis Two Bits Dual Logic Processor Instruction Manual

Klavis Two Bits Dual Logic Processor Instruction Manual

Two Bits


Dual logic processor with chaining and CV functions

Overview

Two dual-input sections can be used independently, put in parallel for 4-input wide logic, or chained for more advanced processing. Each section presents normal and inverted outputs. The two sections offer a set of common and specific functions for a total of 15 different ones. Several functions offer real-time CV control for dynamic changes of the conditions. All time-related functions can be independently user adjusted and are saved automatically. LEDs tell permanently the actual status of all outputs.

Klavis Two Bits Dual Logic Processor 0

Features
  • Two dual-input logic processors
  • 15 different functions; 30 when counting inverted (e.g. OR > NOR)
  • Simultaneously available normal and inverted outputs
  • LEDs on all outputs
  • Chaining can be activated and inverted by a dedicated button with LEDs
  • Chaining does not waste any input or output; an additional virtual input is created in the second section
  • Functions with duration, voltage, percentage, and ratio are user editable.
  • User settings are stored automatically
  • Random pass, voltage comparator, clock mult/div and delay line functions allow CV control
  • White LEDs next to the pots confirm the matching of knob position and function
  • The outputs can be Ored by simple shorting in a multiple
  • Firmware upgradeable by playing an audio file
  • Low consumption, skiff-friendly & compact module
  • Complements Klavis’ Logica XT with a varied feature set
Installation and security
Purpose

This module is meant for installation in a Eurorack-compliant chassis.
It adheres to Doepfer Eurorack mechanical and electrical specifications.

Do not attempt using this module in other mechanical or electrical contexts.

Installation

Before the installation, disconnect the mains power supply from your modular system.
Some power supplies are not safely isolated; there is a risk of injury!

See in the specifications if this module requires 5V from the supply rails. If 5V is needed and your rack is not providing 5V, do not attempt connection!

Check that the current consumption requirements of this module, when added to your installed set of modules do not exceed the available current from your supply. This is done by adding up the current draw of all modules (mA) separately for each of 5V, 12V and -12V rails. If any of these 3 sums exceeds the available current of your supply for that voltage, do not connect the module to your system; you need a stronger power supply.

The provided supply flat cable can only be inserted in the appropriate orientation at the back of the module, so there is no risk of error on that end. However, you should pay attention to the orientation of the cable in the socket of the supply PCB inside your chassis. Cheap sockets without shrouding may allow you to plug in the connector the wrong way!

The red stripe on the cable should match a stripe printed on the supply board. The stripe also indicates the -12V side. In case there is no stripe, a -12V marking is a safe indication of the orientation.

Double check that the connectors are fully inserted and correctly oriented before switching on the power supply. In case of an anomaly, switch off the power supply immediately and check everything again.

Factory reset

The module has a number of user editable settings. In case you experience unexpected result, this may due to polarity, delay, timing, or other settings that are inadequate for the current purpose.
In case you’re lost, you can restart fresh by resetting all settings to their default value. This is done by holding the Chain button while powering on. Keep the supply on for at least 10 seconds after a reset procedure for the default data to be stored in non-volatile memory.

Firmware update

The product can be updated by playing an audio file such as “TwoBits_x.xx.wav”.

Procedure
  • Connect a mono or stereo cable between your audio playing device headphone output and the Two Bits 1A input.
  • Prepare to play the audio file
  • Set the play level at two thirds
  • While pressing both buttons, switch on your modular case supply
  • The two white LEDs are flashing fast; the Inv blue LEDs remain On permanently
  • Start playing the audio file
If everything goes fine
  • Chain and Inv LEDs are On
  • The white LEDs go progressively On one after the other
  • When the update succeeded, the Set green LED goes On while the white ones are flashing
  • Switch the supply off then on to restart the module
If nothing happens
  • Stop audio playback
  • Slightly increase the audio playback level or check for error causes hereafter
  • Start audio playback from the beginning
If there is an error during the playback

It is possible that the sound setting was too loud to begin with. Diminish the sound level drastically and restart the procedure.

If the procedure fails after starting fine: the two red LEDs are On while Chain LED flashes. Press any key to reinitiate the FwU procedure.

Playback error can also be due to various parasitic sound causes:

  • Touching the cable
  • Sound-generating features of your phone or computer (alarms, key-click, …)
  • Audio “enhancing” features – that you may not be aware of ­ e.g. equalizer, 3D-effect, …
  • Some power saving feature that affects the audio playback
  • Surrounding noisy modules, bad electrical grounding or modular supply noise

Try a different playback device; older ones tend to lack the “audio enhancing” features that hamper the audio stream. You could also try using a dedicated USB/audio adapter.

Quick overview

The Two Bits presents two sections that can be used independently or chained internally for more versatility against using external patching.

The functions offered can be split in 3 categories:

Logic category Functions User setting Section
Simple logic AND, OR, XOR None Both
Advanced logic S/R, -A&B, Alternate None Section 1
Rise to Pulse, Fall to Pulse, Edge to Pulse Pulse length
Gater (Gate merger) Gap length Section 2
Vote None
CV functions Random Max chance %
Comparator Threshold
Divider/Multiplier Ratio
Delay Duration

The Chain button allows chaining the two sections and invert the chained signal. Chaining takes the output signal from section 1 and connects it to section 2 as a 3rd input or an output control depending on the function in section 2. Invert selects the normal or inverted result of output 1.

The Set button is about adjusting the continuous setting present in various functions. (e.g. pulse duration)

Normal and Inverted output signals

Complementary (= inverted) logic is always simultaneously available (e.g. OR and NOR) on separate jacks.
In this manual, this is not repeated everywhere.
Function descriptions always relate to normal (non-inverted) logic.

LEDs

All outputs have LEDs that indicate a logic level 1 when lit.

The white LEDs next to the potentiometers provides various feedback: match between the potentiometer’s cursor and the currently active function, direction of settings matching, and setting level. See details in the Setting editing paragraph.

The Set LED is on during setting editing

Chain and Inv LEDS indicate active chaining and inverted chaining.

Selecting a function

Function selection is done by turning the potentiometer.
When moving from a function to another, the white LED goes briefly off.

By default, the white LED is on when the pot is matching the function currently active. This might not be the case during setting change or after having turned the pot with the supply off. See setting editing.

Input jacks

Inputs A and B can be used indifferently and work the same. However, when a CV-related function is selected in section 2 (red labelling) input 2B becomes a bipolar CV control.

Unconnected inputs

All unconnected input jacks are “cleverized” (made virtually missing to avoid interfering with the function). Because of that, when checking a result depending on the presence or absence of a signal, do not disconnect the jack at the Two Bits’ input, but rather on the sender module side. This is the only wat to check adequately!

Output jacks

Outs 1 and 2 present the result of the currently selected function.
Inv 1 and 2 provide the opposite state of their related main out jacks (Out 1, 2). They therefore represent the complementary logic of the currently selected option. (See further)

Oring of the outputs

It is possible to Or the outputs of the Two Bits without additional processing. In practice, the signals generated by the module can be joined together via a “multiple”, stackable jack, or any other passive patching accessory normally used to distribute a signal over several destinations. Such capability is only for the Two Bits, Klavis Logica XT or other brand’s modules with a clearly specified electrical Oring capability.
There is almost no limit to the number of signals Ored that way. (Load impedance being the limit)

In usage, as long as one of the signals joined is at level one, the end result will be one.
Note that since the Main out and the Inv out in a section are the opposite of each other, joining them will result in a signal permanently stuck at one! 😀

Chaining and port expansion

Chaining is activated by the Chain button; the yellow LED indicates when chain is active.

The cascaded signal can be inverted by one more press of the Chain button.
The Invert blue LED indicates the inversion.

When chain is active

There are two possible use cases:

1) Function 2 is without CV capability

The out 1 signal becomes a virtual third input of section 2.
For example, selecting AND in section 2 offers a 3-input AND/NAND gate.

Klavis Two Bits Dual Logic Processor 1

2) Function 2 is CV capable (red labelling: Random, Comparator, div/mult, Delay)

A virtual AND gate is created between the result of Section 2 and its output jacks.

The result of section 2 is dependent of the result of section 1; both section’s results should be at One for the output of section 2 to be at One. Consider that section 1 enables section 2 result.

Klavis Two Bits Dual Logic Processor 2

Setting editing

Several functions offer a user-editable setting.

  • In section 1: The 3 edge-to-pulse functions timing setting
  • In section 2: The Gater’s gap timing and various features in the 4 functions with CV
Editable functions indication

Functions that present a user-editable setting are indicated by a regular flash (or black blip) on the Chain LEDs:

  • The yellow Chain LED for a function in section 1
  • The blue Inv LED for a function in section 2

These LED flashing do not affect the status of the Chain/Inv settings.

Editing procedure

Both sections can be edited during the same editing session.

Editing is entered by briefly pressing the Set button.; its green LED goes steady On.

While On, a function with a setting is edited by turning its section’s pot.

The white LED tells in which direction the current setting position can be found by creating a ramp up (turn right) or ramp down (turn left) animation.

Once the pot catches the actual setting, the ramp stops, and changes now affect the setting in real time. The setting’s value is reflected by the white LED’s intensity.

You can similarly edit the other section if needed.

When setting is done, pressing the Set button exits the editing and the setting change is stored.

If the green LED goes off, it happens that the pot (or both) points back to its function as needed.

Most of times, a green LED flashing fast will remind you that the pot’s cursor is not facing its actual function.

Therefore, the pot must be brought back to the current function (to “catch” it) before possibly selecting another function. Here too, the white LED indicates the required pot movement by a ramp up or down animation.

Once both pots are at the right place, the white LED animation stops to go full bright and the green LED flashing goes off.

Logic terminology

There is a correspondence between the various terms used when dealing with logic.

Logic 1 0
State and LED On Off
Voltage presence (positive!) Yes No
Level High Low
Edge type naming Cause
Rising edge change from low to high
Falling edge change from high to low
Edge any change above
Logic voltages

Logic signals are represented by a voltage or lack of it. In the modular world, any gate, trigger, clock and even square output from an LFO or VCO can be considered a logic signal.

Logic functions are the interaction of logic signals. Logic functions do not respond to amplitude nuances in the way analog signals do. Nevertheless, they obey to electrical ranges and levels. Logic signals are normally positive only; negative voltages are ignored and interpreted as zero. Typically, a voltage close to zero volt will be considered logic 0 (off) and a voltage of at least a few volts will be seen as logic 1 (on). Incoming voltages can go beyond or below what are valid one and zero without any problem. In other words, you can’t go beyond On when it’s already On!

Therefore, it is perfectly valid to drive this module with almost anything, including analog signals from any source. Moreover, you are not limited to “squary” type signals; any wave shape can be used as a logic source signal. For example, passing the saw wave output of an oscillator through an OR function will create pulses since only the positive half of the wave will be accepted, and within that half, only levels high enough will produce a logic one on the output. So, changing the amplitude or the voltage offset of the saw will change the width of the resulting pulse: saw to PWM waves haping !

Simple logic functions available in both sections

These are also known as combinatorial logic, or Boolean logic.

Or & Nor

The main output goes On when at least one input is on. OR is the logic equivalent of a mixer: if there is something being On at any input there’s something coming out (On).

And & Nand

The main output goes On when both inputs are On. AND is somehow the logic equivalent of a VCA where one input has to be On for the other to pass through. The difference being that, contrarily to a VCA, all inputs are simultaneously controlling and controlled.

Xor & Xnor

This logic works like OR, except that the output goes Off when both inputs are On. Xor is typically used as a controllable inverter.

When chaining is active, an unusual 3-input Xor is implemented in Section 2. Its results are different from chaining a pair of 2-input Xor gates. See table:

Section 2 inputs Out jack = Xor Inv out jack = Xnor
All low low high
One or more high, but not all high low
All high low high
Functions unique to section 1
SR (Set/Reset)

This function creates a toggle activated by the two inputs: Input A is Set, input B is reset. A rising edge on A sets the output; a rising edge on B clears the output. Additional pulses on the same input have no effect on the current state.

-A&B (Minus A And B)

“Minus A” means inverted A.

This function is useful when an And or an Or is needed where one of the input signals comes with the “wrong” polarity.

This function can fulfill the And and Or roles by using the normal or inverted output.

If you feel lost by the explanation, simply refer to the table hereafter.

In 1 In 2 Out Inv
A B X -X
0 0 0 1
1 0 0 1
0 1 1 0
1 1 0 1

For the techie in you awaiting the illumination:
Using the normal output, this is a 2 input AND gate with an inverter at input A.

Klavis Two Bits Dual Logic Processor 3

Using the inverted output, the function can be seen as A OR ­-B, which is an OR gate with an inverter at input B

Klavis Two Bits Dual Logic Processor 4

Alternate

This is an edge-controlled logic function.

When one of the inputs sees a rising edge arriving:

  • That incoming signal is allowed to pass through till its end (its falling edge)
  • The other input is ignored (disabled)

When the currently active input sees the falling edge of the allowed signal:

  • The output goes low
  • That input disables itself
  • The other input becomes enabled (= allowed to check for a rising edge)
    The roles between the two inputs are now inverted

Note: if an input was already at level one before becoming enabled, the signal is not passed through as there was no rising edge detected!

Start condition

At power up and when first selecting the function, both inputs are initially allowed to be first to detect and pass a signal.

Pulse on rise (up arrow), fall (down arrow), change (u/d arrows)

These 3 functions are variations of the same.
They all create a positive length-adjustable pulse (each variation has its own duration setting).
They only differ in what they react to:

Function Pulse when detecting Does not react to
Pulse arrow up Rising edge Falling Edges
Pulse arrow down Falling edge Rising edges
Pulse arrow u/d Any edge Always react to all edges

Another active edge arriving while the out pulse is ongoing retriggers the timer, thus extending the current pulse.

The pulse duration setting is arranged in two consecutive segments each covering one half of the pot course:

  • short: 1 to 20ms
  • long: from 21ms to 10 sec
Functions unique to section 2 (with no CV)
Gater (Gate merger)

The Gater combines the inputs as an Or function does, but also retriggers the output every time a new gate starts while the output is already active.

The output signal reflects the duration of the incoming gate signals.

The user-adjustable setting determines the duration of the retrigger gap; the lengths available are the same as in Pulse functions hereabove. When used for gate merging, the Gater gap will be set as short as possible to minimize retriggering delays. The reason to extend the gap is for modules possibly not retriggering when the gap is too short.

Vote

A majority of the active inputs should be at, or reach a common value for the output to reflect that value. In other words, the inputs have to agree for the output to take that value. When the inputs disagree, no change occurs.

With two active inputs:

Inputs Output
A ≠ B Don’t change the current state
A = B = 0 0
A = B = 1 1

When section 2 has its 3rd input active due to chaining, we have a standard majority vote:

In A In B In C Out 
0 0 x 0
1 1 x 1

Note: x can be any state

In the table above, inputs A, B, C naming is an abstraction of In 2A, In 2B, and virtual In 2C, that can be swapped in any order.

Functions unique to section 2 (with CV)

Since input 2B becomes a CV input, there’s a single logic input (2A).

Random

When a rising edge is detected at input 2A, the maximum chances to pass the signal depends on a random percentage:

  • If not allowed, the output remains low
  • If allowed, the signal is passed through entirely until it ends (= up to its falling edge)

The random allowance is user adjustable between 1% and 99%; the CV allows altering that setting in real time.

Delay line (DEL)

The incoming signal is delayed in a FIFO way (first in, first out). It means that a string of pulses can be delayed with respect to their individual timing and spacing. This function is more than a basic “single pulse delay”.

The delay setting on the pot is user adjustable and arranged in two consecutive segments: one for short settings (1 to 20ms) followed by one that goes from 21ms to 10sec).

The sample rate is 1KHz, implying a resolution (precision) of 1 millisecond.

Comparator

This function offers a real analog comparator. The two analog sources are input jack 2B and an internal user-adjustable value. The voltage on input 2B is compared against that setting which covers the same span as the input signal (+/-5V).
When the incoming voltage is higher than the user setting, the output is true.

Input 2A, when high, inverts the comparison logic (voltages lower than the setting make the output go true). When not connected, input 2A is considered at zero.

Div/Mult

This function allows dividing or multiplying a regular incoming clock. The ratio of division/multiplication can be changed on the fly by a CV.

There is a total of 9 different ratios available: /16, /8, /4, /2, x1, x2, x4, x8, x16

The default ratio is user adjustable and can be altered by a CV; a positive CV changes the ratio to faster output rates; a negative one to slower rates.

Ranges and timings in Div/Mult

For useability, the output pulses and off states cannot be shorter than 1 millisecond.
With the fastest multiplication at 16X, the maximum incoming clock rate is thus 31.25Hz (= above 1800 BpM). When the incoming clock is beyond that rate, there is garbage out.

Summary of LED indications
LED  Off  ON Animated
Out’s red LEDs  Logic zero  Logic one  Tracks logic activity 
Inv (out) blue LEDs  Logic zero  Logic one  Tracks logic activity 
Pot’s white LEDs  The current function and the pot position do not match.
In editing: the setting is at minimum 
The position and the function do match  Ramp up or down tells in which direction to turn to make position and value match.
In editing the intensity tells the setting 
Chain yellow LED  Chaining is disabled  Chaining is active  Flashes indicate an editable function in section 1 
Chain’s Inv blue LED  Chaining uses out 1  Chaining uses Inv 1  Flashes indicate an editable function in section 2 
Set green LED  Currently not editing  Editing session active  Pot(s) need to be put back in place to their function 
Comparison between Two Bits and Logica XT
Two Bits  Logica XT 
Module width  5 hp
Logic sections  2 1
Inputs  2 x 2 jacks  3 jacks + 1 button
Chained sections  Yes, with virtualized 3rd input in section 2 
Outputs  2 x 2 (normal, inverted)  3 (normal, inverted, div/2) 
Outputs direct ORing  allowed 
Input logical inversion  Yes, on the manual button 
Total different functions  15 12 + 2 forced states 
CV control  Changes a setting in 4 functions  Selects a function among 8 
FUNCTIONS
AND/NAND  Yes, simultaneously 
OR/NOR  Yes, simultaneously 
XOR/XNOR  Yes, simultaneously 
Gater (gate merger)  Yes, retrigger gap adjustable 
Gate to Trigger/Pulse  Yes, duration adjustable 
Divider (multiplier)  Yes, div/mult ratio adjustable + CV  Yes, div/2 output 
Random pass-thru or Coin throw  Yes, random % adjustable + CV  Yes, Coin, with combinable ratios from 3 inputs 
Delay line  Yes, duration adjustable + CV  Yes, adjustable / ext clock 
Set/Reset  Yes  Yes, + toggle clock in 
One high logic  For 2 inputs = XOR  Yes, also for 3 inputs 
One low logic  For 2 inputs = XOR  Yes, also for 3 inputs 
Even  For 2 inputs = XNOR  Yes, also for 3 inputs 
Locker sequence  Yes, in 3 steps 
Digital S/H  Yes, combined with delay 
Forced zero  Yes
Forced one  Yes
-A AND B / A OR -B  Yes
Voltage comparator  Yes, CV in, threshold adjustable 
End of gate to pulse  Yes, duration adjustable 
Start + End of gate to pulse  Yes, duration adjustable 
Majority vote  Yes 
Alternate right to talk  Yes 
Specifications
Mechanical
Dimensions  mm inches  Eurorack compliance 
Height  128.40  5.06  3HE 
Width  25.20  0.99  5HP 
Depth behind panel  21.00  0.83 
Supply

The supply socket is protected against reverse insertion.

Supply rail  Current draw 
+12V  31 mA 
-12V  1 mA 
+5V  0 mA 
Input/output

All inputs and outputs can withstand signals between -12V and +12V without harm.

Jack  Effective voltage range received or generated 
CV control input 2B  -5V to +5V 
All outputs  0 or 10V (logic levels) can be Ored electrically 
Input low to high change  1.8V or higher 
Input high to low change  1.4V or lower (incl. negative voltage) 
Signals
Parameter  Values 
Frequency range  DC to beyond audio 
Packing list

The box contains:

  • Two Bits module
  • 2x M3 black mounting screws + washers
  • Eurorack-compliant 10/16-pin supply cable

Klavis products, including PCB and metalwork, are designed and manufactured in Europe.

Klavis                                                     Two Bits user manual V1.2

Documents / Resources

PDF thumbnailTwo Bits Dual Logic Processor
Instruction Manual · Two Bits Dual Logic Processor, Bits Dual Logic Processor, Dual Logic Processor

References

Ask a Question

Use this section to ask about setup, compatibility, troubleshooting, or anything missing from this manual.

Ask a Question

Ask about setup, compatibility, troubleshooting, or anything missing from this manual. Name and email are optional.