Two Bits Dual Logic Processor with Chaining and CV Functions Owner’s Manual

June 8, 2024
Two Bits

Two Bits logo

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 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.

Features

Two Bits Dual Logic Processor with Chaining and CV
Functions

  • Two dual-input logic processors
  • 15 different functions
  • 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 and/or delay 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 TwoBits 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 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 output.
The Set button is about adjusting the continuous setting present in various functions. (e.g. pulse duration)
Normal and Inverted output signals
Complementary 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: correlation between the potentiometer position and the currently active function, direction of settings matching, and setting level. See details in setting editing.
The Set LED is on during setting editing Chain and Inv LEDS indicate 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. 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).

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 module or 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 modules with an Oring feature.
There is no limit to the number of signals Ored that way.
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 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.
    Two Bits Dual Logic Processor with Chaining and CV Functions - Fig
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.

Two Bits Dual Logic Processor with Chaining and CV Functions - Fig
2

Setting editing

Several functions offer a user-editable setting.

  • In section 1, these are the 3 edge-to-pulse functions
  • In section 2, these are the Gater and the 4 functions with CV.

Editing is entered by briefly pressing the Set button.
While the green Set LED is on, a function with a setting can be edited by turning its section’s pot.
Note that if the functions in both sections have an editable setting, both can be edited during the same editing session.
The white LED tells in which direction the current pot setting 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 the setting’s value is reflected by the white LED’s intensity.
From there, the setting change is applied in real time.
When setting is done, pressing the Set button exits the editing; the setting change is stored while the current function selection is maintained.
However, there is likely a visual discrepancy between the active function and the pot’s cursor indication! Therefore, the pot must be brought back to the current function (to “catch” it) before possibly selecting another function. Here again, the white LED indicates the required pot movement by a ramp up or down animation. Once the pot is at the right place, the animation stops and the LED goes full bright.

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 (Chain) Inv LED for a function in section 2

These LED indications do not affect the status of the Chain/Inv setting.

Unconnected inputs
All unconnected input jacks are “cleverized” (made virtually absent to avoid interfering with the function).

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

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 waveshaping !

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.

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

Two Bits Dual Logic Processor with Chaining and CV Functions - Fig
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, 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. Thisfunction 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.

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.

Two Bits logo

Read User Manual Online (PDF format)

Read User Manual Online (PDF format)  >>

Download This Manual (PDF format)

Download this manual  >>

Related Manuals