Modified : june. 6th. 200ç

Octal Random Gates

En français
back to summary


When I designed this module, I had in mind to control a Moog 960 sequencer in a random fashion, but many other applications may be imagined. On the 960 sequencer, a single step can be selected directly by it's  IN jack, that is, instead of having the step sequenced in the logical sequence order you may call every step in an arbitrary order provided that you address directly each step with the  IN jacks. The Octal Random Gate provides eight GATE OUT signals that are randomly sequenced, that is, one out of eight output is active and this randomly changes at every clock pluse. Therefore, at each clock pulse sent to the GATE IN a randomly selected output is set to the ON state while all the other outputs are set to the OFF state.
A toggle switch makes it possible to choose the gating mode between two modes: in the first mode the ON status of the selected output lasts until the next clock pulse; in the second mode, the ON status is gated by the clock pulse, that is it lasts as long as the clock pulse is at the ON status and returns to OFF as soon as the clock signal returns to OFF (see diagram below : output X selected during one clock cycle, output Y selected during two consecutive clock cycles; left GATE MODE OFF, right GATE MODE ON).

Note that this module can also operated at audio rate. If feeding the GATE IN with a high frequency pulse coming from a VCO, each GATE output becomes an indivual coloured digital noise source usable for sound effects. The colour of the noise will directly depend on the frequency from the VCO. White noise is obtained for frequencies above 30kHz.
An interesting property is that the noise signals at the outputs are somehow uncorrelated making this module very handy to create 8 lively independant random sources.

I have modified the schematic and PCB of this module because there has reports of  problems with the previous PCB when  using HEF4006 or MC14006 instead of the CD4006 for which the circuit was designed. As the matter of fact, the HEF4006 and the MC14006 both require very steep clock edges to work properly while the CD4006 can handle slopier edges. I modified the circuit to convert one  of the unused XOR gates of the 4070 into a pulse straightener.
For those who have built the previous version and want to use a HEF4006 or MC14006 go to the end of this page to see the modifications to make to the old PCB to cure the problem.


Basically, the circuit contains three main parts : the clock input built with Q1, the pseudo random sequence generator built with Q2, U1 and U3; and the addressing and output stages built with U2 and Q3 to Q10.
The core of the module is the pseudo-random sequence generator, it is in fact a classical circuit (Elektor) uses to generate digital noise. The CD4006 is an eigtheen stage shift register whose some of its outputs are fedback to its input through XOR gates (CD4070). Q2 inverses one of the output before applying to the XOR gate input in order to avoid an all zero status that would block the generator. The random generator is clocked by an external signal which is buffered by Q1, then a XOR gate of U3d is used to straighten the edges of the clock pulses : this was necessary to make this circuit work with some brands of the 4006 (HEF4006,MC14006) which required more stringent pulse conditions. Three outputs of the CD4006 are connected to the binary addressing pins (A,B,C) of the CD4051 (8 voice analogue multiplexer). The common pin of the CD4051 is connected to the positive rail through a 1K resistor, and all the outputs are connected to an output buffer stage. The GATE MODE switch controls the INHIBIT pin of the CD4051, in the OFF mode the INHIBIT pin is connected to the ground and the active output of the CD4051 remains active. In the ON mode the clock signal is routed to the INHIBIT pin and gates the active output.

NOTE : after powering up, the module needs at least ten clock cycles before it gets into the expected behaviour.

Printed Circuit Board and Component Layout

PCB design


Download the schematic as a PDF file 
Download the PCB as a PDF file 

WARNING ! The document is formatted to be printed directly on a mylar for photo-etching or a "press & peel" paper. Make sure that when the printed face of mylar is in contact with the copper side of the PCB, the lettering can be read normally.
IMPORTANT NOTE : Don't forget the five straps. Also because some tracks are quite thin and located very close to each others, check thoroughly the PCB tracks with a looking glass in order to detect the possible copper micro-bridges (ill-etching) and track micro-cuts.


List of parts and building instructions

CD4006 (also working with HEF4006 or MC14006) 1
10 ohm
270 ohm
R5,R7 22k
R3 100k
RN2 resistor network 8x1K one common leg
resistor network 8x10K one common leg 1
C2,C3,C4 100nF 3
C1 10µF or 22µF/35V electro. 1
6,5 mm jack socket
HE10 male socket 2x8 pins

HE10 female connector 2x8 pins

16 lead flat ribon 20cm
Push button
bipolar switch SPDT


Front plate
Panel design

Download the silkscreen mask as a PDF file 

Download the silkscreen mask as a  JPEG file 


This circuit requires no trimming. It must work when powered on.
NOTE : after powering up, the module needs at least ten clock cycles before it gets into the expected behaviour.

Modifications of the old PCB

NOTE : these modifications are only for those who built the circuit with the old PCB
Remove the long strap between the collector of Q1 (lowest transistor on the layout) and pin 3 of U1 (4006).
With an sharp knife cut the short track from pad 13 of U3 (4070), connect a short isolated wire between pad 11 of U3 and pad 3 of U1, connect a short isolated wire between pad 13 of U3 and the collector of Q1.

Name : Frédéric Monti
Pseudo : Zarko
Modular project :
Location : Gardanne, France
Website :

Name : Doug Slocum
Pseudo :
Modular project : SteamPunk
Location :  USA
Website :
Name : Steven Brenner
Pseudo :
Modular project :
Location : Waterloo, Ontario, Canada
back to summary