SHIFT CORE GENERATOR USER MANUAL

Thank you for buying SHIFT CORE GENERATOR by SYNTHFOX. SHIFT CORE GENERATOR is a complex stepped control voltage and gate quasiquencer. In this manual, an overview of SHIFT CORE GENERATOR's features is given, as well as some additional information, such as a flowchart (logic diagram) of the module's insides and some patch ideas. Please, read the safety notice carefully!


INDEX:

  1. Installation / Safety Notice
  2. General Overview
  3. Controls
  4. Flowchart
  5. Calibration and settings
  6. Patch Ideas

Installation / Safety Notice

Thank you for buying SHIFT CORE GENERATOR! We at SYNTHFOX want people to have as much fun with and make as much good use out of our gear as possible. But firstly, we want users to be safe and their synthesizer systems to be fully functional. This device is not a consumer piece of electronics. This is a specific part (module) that is to be installed into Eurorack system and interfaced with other parts of it. The user handles the installation process - extra care should be taken!

SHIFT CORE GENERATOR has a keyed connector. The included ribbon cable is tested to comply with standard Eurorack boards, and it cannot be inserted the wrong way into the module without brute force. However, the power distribution boards may vary, and it is up to the user to well understand which way to connect the ribbon to the distribution boards. The red line on the ribbon cable marks the -12 volts line. The module should be connected like in the picture below: on the left side is the bus board connector, and on the right side is the connector on SHIFT CORE GENERATOR.

image by David Haillant

When installing the module:

The module should now be ready to play. If you have any troubles, feel free to reach out to SYNTHFOX through synthfoxmodular@gmail.com.

About

SHIFT CORE GENERATOR is an ultimate quasiquencing (quasi-sequencing) device capable of producing a wide array of stepped control voltages and gate signals. Its capabilities go from the globally loved 16-step looping pattern, to complex patterning, semirandom wandering, and all the way up to complete random madness. While this device is very easy to get started with, the actual way it works may seem a bit complex to less experienced users, so some purely technical details are left out of this document. However, this is an in-depth writeup on how to use the SCG and how it works, so, for a quick start, it probably is faster to watch the overview video.

The heart of the module is a 16-bit shift register - a device that essentially outputs 16 separate gate signals used only inside the module. From those, the useful outputs (control voltages and gates) are derived. The contents of the shift register - which bits are 0 and which are 1 - define the state of all the outputs.

At the very top left of the module is the CLOCK INPUT section. This is one of the two vital inputs for the shift register core. It is responsible for triggering the update of the shift register. The IN jack is where the clock signal goes. It is then passed through a comparator: a device that detects if the signal is above or below some threshold voltage. This voltage can be set manually with the THRES knob, and controlled extrnally through the TCV jack. TCV is summed up directly with the THRES setting. Thanks to the comparator, anything can be used as a clock signal: a sound, a dedicated clock pulse, noise, CV, and so on. The resulting clock is available at the OUT jack and is indicated by the LED to the right of it. It can be used to further clock other devices with rectangular clocking pulses derived from whatever is used as the clock. Each time the clock goes high (the LED lights up), all bits of the shift register are shifted by 1 position, and the last bit is dropped. New data - O or 1 - is then written to the register's first bit.

The DATA INPUT section, located directly below the CLOCK INPUT section, produces the other vital signal for the shift register. It defines if a 0 or a 1 is written to the register upon detecting a clocking pulse. The signal used as data should be patched to the IN jack on the very right. Just like with the CLOCK INPUT, the DATA INPUT section has a comparator after the input jack. It, too, has a THRES knob for manual setting of the threshold. However, the data TCV input has a dedicated attenuverter knob, located to the left of the manual setting, for precise and variable threshold modulation. The LED shows if the comparison result was 0 (dim) or 1 (lit): this is written to the shift register on a clock pulse.

To the right of the TCV input is a NOIse output jack: it otputs a constant, unchanging near-white noise of about 10Vpp average amplitude. It can be used for anything one would use noise for, including audio and sample-hold applications. Further to the right is a switch labelled NOI/SELF. This switch selects what signal will be normalled into the IN jack - essentially, used if nothing is patched into it. The noise source will be used if the switch is in NOI position. Clocking the unit in this setting will lead to random behaviour. If the switch is in SELF position, the last bit of the shift register is used. In this case, the shift register becomes looped on itself, and produces a cyclic 16-step patterns. Switching between randomness and order has never been faster!

The data threshold is the main interface for controlling this module's behaviour. If noise is used as the data source, then it will define the probability of getting a 0 or a 1 (the more clockwise, the more are the chances of 0). When using cyclic signals, such as LFOs or any other simple oscillations, data threshold will define which portion of the wave is treated as a 1, and which is 0. If the clocking pulse is of a constant rate, this setting will drastically change the pattern the unit produces: quasiquencing at its finest. Going back to a TCV setting after changing it will resurface the previous pattern or its modified version. This setting will only not affect anything if the switch is in SELF position and nothing is patched to the IN jack: this is done to be able to snap to the 16-step loop mode at any moment, no matter the threshold setting.

The shift register and the content processors are the SHIFT CORE of the module. The content processor derive complex useful signals from the plain 16 binary outputs of the shift register itself. SHIFT CORE GENERATOR has three main output sections: the N-STATE OUTPUTS, the BINARY OUTPUTS and the STEPPED CV PROGRAMMER, each useful in its own unique way.

The N-STATE OUTPUTS section is located below the DATA INPUT section. It has 6 output jacks and features no control elements. The outputs of this section are all stepped control voltage signals, each taking a limited number of quantised voltges. The number above the jack denotes how many. On the top row are the 4- and 8-state outputs. Their circuit is built so that the signals they produce always step in equally-spaced voltage steps. The 4-state output is tuned to step in 1 volt steps, meaning it will produce octaves if patched to a 1V/O-tracking VCO, or such. The 8-state output is tuned to step in fifths. On the row below are four more outputs. These do not produce equally spaced steps, however, they may take much more various states (up to 128). These outputs are best used to control modules that do not do precise tonal functions, e.g. a VCF, VCA, a function generator, a VC-LFO, and such. All six outputs change simultaneously, along with the contents of the shift register. However, they all use different bits in different order to derive the resulting signal, hence, the relation between the six is not obvious at all. While one output may step up, the other may step down, up, or even remain the same. This is a very powerful tool to simultaneously distribute a handful of stepping voltages across the system without a need to program the sequence itself: the sequence, or pattern, or distribution, is set using the DATA INPUT section.

The BINARY OUTPUTS section is situated right below the N-STATE OUTPUTS. It has four output jacks labelled with letters A/B/C/D, each fit with an indicator LED. These outputs are results of more complex logic processing of the shift register contents, and are 0..10v gate signals. They are mainly meant to be used to trigger functions and musical events, gate envelopes, clock other sequencing devices, and such.

Finally, the STEPPED CV PROGRAMMER section takes up the entire right third of the module. This is the engravement of a more traditional approach to sequencing in modular inside the SHIFT CORE GENERATOR. Similarly to the BINARY OUTPUTS, four (different) binary signals (0..10v 'gates') are derived by complex logic processing of the shift register contents. They are then summed up at the OUT jack in proportions set by the four yellow knobs, labelled with the first four letters of the Greek alphabet. Each knob has an LED next to it, indicating if this knob is active right now. If it is, then it adds to the OUT proportional to the knob setting. By setting each knob to an offset of liking, one can get a stepped CV that may take up to 16 different states. When full clockwise, each knob adds about 2.5V to the overall mix when active, meaning that you will never get into clipping, even if all the knobs are fully CW and active. With mindful tuning, this section can be used to produce interesting musical progressions when controlling a VCO, e.g. tune the Alpha knob to produce a minor third when active, the Beta knob to a major third, and you get either the tonic (both inactive), a minor third, a major third, or a fifth (both active and added up). Add the Beta and Gamma knobs to the mix for more intricate interval combinations.

Another distinct feature of the STEPPED CV PROGRAMMER is the UPD jack, located to the left of the OUT jack. It is an input that triggers the update of this section: on each pulse received, it captures the four binary signals that are later summed, and holds on to them until the next UPD pulse is received. The OUTput of the CLOCK INPUT section is normalled to this jack, so normally, the programmer will update synchronously with the rest of the unit. However, it is possible to update this section asynchronously, e.g. a stable clock is received at the CLOCK INPUT, but an occasional random pulse is patched to the UPD jack. This means that while the change of the other outputs - N-STATE and BINARY - is synchronised to the CLOCK INPUT section's OUT, the PROGRAMMER may work at its own pace. Naturally, clocking it more than once after a pulse is detected by the CLOCK INPUT makes no sense. Since the contents of the shift register didn't get updated, the captured binary signals will be the same as the last time. Hence, it only makes sense to use UPD to update the PROGRAMMER completely asynchronously or just slower than the rest of the unit. An easy self-patch is to patch one of the BINARY OUTPUTs to the UPD jack and have the PROGRAMMER update occasionally, whenever that BINARY OUTPUT happens to light up.

Controls

Ⓐ Clock THRESHOLD and its TCV input (summed)
Ⓑ Clock IN jack
Ⓒ Post-comparator clock OUT and its indicator LED
Ⓓ Data THRESHOLD and its attenuverted TCV input (summed)
Ⓔ NOIse source output
Ⓕ NOI/SELF data input jack normalling selection switch
Ⓖ Data IN jack
Ⓗ The six N-STATE OUTPUT jacks
Ⓘ The four BINARY OUTPUT jacks with LEDs
Ⓙ The Alpha, Beta, Gamma and Delta knobs
Ⓚ UPDate input jack
Ⓛ STEPPED CV PROGRAMMER OUTput jack

Flowchart

Calibration and settings

V1.2+

There are two trimm potentiometers on this version, labelled 4ST_TUNE and 8ST_TUNE. These tune the step size for 4-state and 8-state outputs, respectively. When used with a VCO or another tonal device, these output step in equal musical intervals. By default, 4-state steps in octaves, while 8-state steps in fifths. This can be retuned to taste (e.g. for the 8-state output to produce single semitone steps). This version has one user-assignable jumper at the bottom of the unit, called BIN A MODE. The two settings are "CHOP" and "CONST" (default setting is "CONST"). In CONST mode, binary out A will act like the other three, staying in high or low state until a new clock is received, potentially changing its state. In CHOP mode, Binary output A gets "chopped" by the incoming clock signal, indicated by the LED on the CLOCK INPUT section. Even if bin out A is high, it will go low as soon as the clock input goes low. This means that even if the output stays high, it will be 'gated' by the clock, making it handy for triggering percussion repeatedly (e.g. hi-hats).

V1.1

There are two trimm potentiometers on this version, labelled 4ST_TUNE and 8ST_TUNE. These tune the step size for 4-state and 8-state outputs, respectively. When used with a VCO or another tonal device, these output step in equal musical intervals. By default, 4-state steps in octaves, while 8-state steps in fifths. This can be retuned to taste (e.g. for the 8-state output to produce single semitone steps). This version has no user-assignable pin headers.

Patch Ideas

SHIFT CORE GENERATOR provides endless possibilities for creative usage. It is also not limited to CV-rate uses, making a fun audio processor. Yet, this module is a little bit more complex than most SYNTHFOX devices thus far, so some more obvious usages are included in this section along with some non-standard hacks.

Easy Quasiquencer

For this patch, you will need two LFOs with any shape other than square. They don't necessarily have to be voltage controllable. Use one LFO as the clock source, other as the data source. Use a triangle, a sawtooth, or any other continuous waveshape: using squarewave for the data input makes no sense in this case. Tune both clock and data thresholds so that each LED is on and off for approximately the same time (this means you are extracting a 50% duty cycle squarewave from each LFO). Set the clock source LFO to a tempo that you like musically; have the one used as the data source run about 2-3 times faster than that. Have the SHIFT CORE GENERATOR outputs do something in your patch, e.g. trigger some drums, control the pitch of an oscillator or a filter's cutoff, and so on. You will soon notice that a pattern is playing, and it doesn't necessarily have a 'nice' (8, 16, 32) step count, hence it's a different thing from just enabling the SELF mode on the data input section. This is already great, but gets even better from the fact that changing the data threshold now changes the entire pattern, with each position deterministically bringing one exact type of a phrase. Lenghts and contents of patterns will vary greatly, to extra simple to very complex, but the patterning will still be obvious. You can now use the data TCV input to jump between different phrases with an external voltage, e.g. another very slowly running sequencer! Another way to change up the pattern is to change the frequency of the data source LFO: this will change things up drastically without having to change the tempo set by the clock source LFO.

Automatic Data Threshold

Set the data normalling switch to NOI and don't patch anything to the data INput. Clock the module with a clock source of choice. You can now affect the stream of ones and zeroes in the register in an interesting way by patching the 8-state output to the data TCV in, setting the data threshold knob at about 9 o'clock, and then adding in the modulation, turning the TCV attenuverter clockwise starting from noon (stop when happy). Low initial threshold settings means a lot of 1's will be written. Since the 8-state output is controlling the threshold, the more 1's are written, the higher it will get, hence the more it will raise the threshold up, decreasing the probability of getting a 1.

Terrible Otherworldly Ring Modulator

If you have two sound sources in your system, it's easy to start having fun processing them with the SHIFT CORE GENERATOR by simply using one as the clock source and the other as data source. Use one of the N-state outputs (64 and 128 work best) to listen to the result. It resembles some kind of ring modulation from an alternate dimension, played back from a gameboy. To further enhance the effect, use other outputs as CVs for the clock and data threshold, or to modulate the sound sources used.

No External Devices Full Random

Usually, an external signal is assumed to be used as the clock source. However, with careful tuning, the module's very own NOIse generator could be one! First, set the data input normalling switch to the NOI position (up) and the data threshold knob to noon. Patch the NOI out to the clock INput. Tune the clock threshold knob to the point where the intensity of the activity is the way you like it: the more at noon the pink threshold knob is, the more bashful and fast the generation will get. This can, of course, be controlled with the clock TCV input. Now you can use the SHIFT CORE GENERATOR outputs to control any other modules you have, without the need to provide the SHIFT CORE GENERATOR itself with anything from the outside of it! Since the same NOIse is used for clock and data, some combination of clock and data thresholds may lead to a semi-pattern emerging or to writing all 1s or all 0s to the register. That said, finding combinations when it has nice randomesque behaviour is easily possible. For even more self-patch fun, use one of the binary outputs as a clock source for the stepped CV programmer's UPD input: this way, that section will only update when the chance rules it to.

Digital Noise with VCA

SHIFT CORE GENERATOR is perfect for quick digital noise. For this patch, you will need an audio-frequency oscillator. First, set the data input normalling switch to the NOI position (up) and the data threshold knob to noon. Then, put any of the oscillator waves to the clock INput jack and adjust the threshold so that the module starts responding. Put the 128-state output to your system's audio output. You should start hearing a lo-fi noisy texture. The oscillator's pitch is now in charge of how fast the SCG's NOI output gets 'looked up', meaning changing its pitch will change the percepted pitch of the noisy texture. Another instant bonus is that the data threshold knob is now a volume control, with the maximum volume at noon, and no volume both full CW and full CCW. Using the data TCV input and its attenuverter, you can now precisely modulate the volume of the resulting texture. For more interesting sounds, take the stepped CV programmer OUT and patch it to the oscillator's pitch CV input. Now, the alpha/beta/gamma/delta knobs are the additional parameters of the texture!

Krell Heart

For this patch, you would need a VC-LFO or (preferrably) a looping function generator/lag processor, such as KON, and a signal multiple. Patch the VC-LFO/looping function/looping lag output to the multiple, and then use one of its copies as the clock source for the SHIFT CORE GENERATOR - tune the clock threshold so that the LED stays lit as much time as possible, while still getting a solid response. Data source is up to the user: you may use the default NOI/SELF normalling or any external signal of liking. Once some activity starts happening, use the 32 and 64 outputs to control the frequency/shape of the VC-LFO or the rise/fall of the looping function generator or lag processor. Now, for each new cycle, you get a new shape and time of the repeating oscillation. Decreasing the data threshold will increase the likelihood of writing a 1, hence, increasing the chance of getting a faster cycle - and vice versa. Control this effect via the attenuverted data TCV input. Now you can use other copies of the VC-LFO/function/lag to control anything about your patch, e.g. open a filter or a VCA. Other SHIFT CORE GENERATOR outputs may be used, too, as they are updated at the very start of each cycle: they are perfect for controlling frequencies or timbres of the sound sources that are being processed by devices controlled by the VC-LFO/looping function/looping lag processor.

Revisions

Module

v1.1: initial module release

v1.2: fixed binary A out chop/const jumper

v1.3: minor bugfixes

Manual

[20220725] 1.0: initial document

Happy patching!