« Back to DIY

UNVERIFIED. Drawn and checked in Copper Bottom, not built as one board. Both halves are boards I have built, hole for hole: my Opto Duet and the 9 × 17 Grub Divider. I have heard the Opto Duet through the Grub, as two boards in one box. What nobody has done yet is solder them onto this one board.

Opto Duet Grub

A light-coupled beat into seven octaves of divider, on one board · By Onion Madder · Mess O' Pedals

The Opto Duet into the Grub Divider makes its own beat. The Opto Duet is two 555s talking by light: a slow one with a tempo, flashing an LED into a photocell on a fast one, so the fast one chirps on the beat. A CD4024 divides that into seven octaves down, and seven switches pick which octaves sit in the mix. It is rhythmic all by itself, with nothing else plugged in. A MODE toggle hands the divider to an EXT IN jack instead and switches the Opto Duet off, so the Grub still works on anything else you feed it.

The Opto Duet Grub layout drawn as a stripboard diagram, titled Opto Duet Grub, 23 by 18 stripboard. Eighteen orange copper strips lettered a to r run left to right with twenty-three columns numbered above them. The top nine strips are the Grub: a tall rectangle marked IC1 CD4024 across strips b to h, the resistors R1 to R7 lying flat either side of it, R8 and R9 standing at the left edge, R10 and the ceramic C1 near the top right, the pink electrolytic C2 on strip a, and gray X cuts along the column under the chip. The bottom nine strips are the Opto Duet: two rectangles marked IC2 NE555 and IC3 NE555 side by side across strips l to o with a column of cuts between them, the diode D1 on strip j, the resistors R11 and R13 standing between strips, the upright 100 ohm resistors R12 and R14 near the bottom, pink electrolytics C3, C5, C8 and C9, small ceramics C4, C6, C7, C10 and C11, and dark blue wire links running between the strips, three of them diagonal across the chips. One link, J12, runs from the Grub's ground strip i down to the Opto Duet's ground strip k. Holes carrying wires off the board are labeled on both margins: BUS, VOL T, VOL W, CLK IN, V plus, MR PAD, the switch pads, GND, OPTO V, LDR T1, LDR T2, LED K and LED A on the left, and OUT T, OUT S, VCC, LDR V1, LDR P1, LDR V2, LDR P2, LED2 K, LED2 A and OPTO OUT on the right. Around the board the panel parts are drawn with a colored wire to each hole: three pots, two 1K resistors off the board, the sealed LED and the vactrol photocell, two toggles labeled DPDT pole A and pole B, eight SPST toggles, two quarter-inch jacks and a DC jack. Below it the same board is drawn a second time from the solder side, mirrored, with the column numbers running right to left, every solder point as a dark dot, the cuts as X marks and the three chips as dashed outlines with pin 1 boxed. A parts list follows, then a block headed OFF THE BOARD listing each panel part, what it does and where each of its legs goes.
The board as Copper Bottom draws it: the component side on top, then the same board from the solder side with the columns running the other way. The Grub is the top nine strips and the Opto Duet is everything under them. The mode toggle is one DPDT, drawn as its two poles, SW9 and SW10, because the editor has no DPDT part.

What you'll need

tap to expand / collapse

Thirty-eight parts on the board, counting twelve wire links. The Grub half is exactly the Grub Divider's parts with the same reference numbers; the Opto Duet half is exactly the Opto Duet's, renumbered so nothing clashes (its IC1 is IC2 here, its R1 is R11, its C1 is C3, its J1 is J3, and so on up).

  • 1× CD4024 seven-stage binary counter, 14-pin DIP (IC1) - spot it: CD4024 printed on top, notch marks pin 1
  • 2× NE555 timer, 8-pin DIP (IC2, IC3) - spot it: NE555 printed on top, notch marks pin 1. IC2 is the engine, the slow one with the tempo; IC3 is the voice. Sockets are worth it
  • The weighted ladder, one resistor per octave and every value different (R1 to R7): 1M, 470K, 220K, 100K, 47K, 22K, 10K. They are what make this a mixer instead of a selector - get one wrong and that octave is too loud or inaudible
  • 2× 100K resistor (R8, R9) - spot it: bands brown-black-yellow. The clock and reset pull-downs. R8 is what the Opto Duet lands on
  • 3× 1K resistor (R10, R11, R13) - spot it: bands brown-black-red. R10 is the Grub's output; R11 and R13 are the Opto Duet's, one per timing chain
  • 2× 100R resistor (R12, R14) - spot it: bands brown-black-brown. The Opto Duet's two outputs, where they mix. Both stand on end
  • 1× 1N5817 Schottky (D1) - spot it: black body, gray band. Band toward the chips. It protects the Opto Duet half only, as on the Opto Duet
  • 2× 10nF ceramic (C4, C7) - spot it: printed 103. Pin 5 decoupling, one per 555
  • 4× 100nF ceramic (C1, C6, C10, C11) - spot it: printed 104. C6 is the voice's timing cap; the other three sit across the supply, one by each chip
  • 2× 10 µF electrolytic (C2, C3) - spot it: a small can, stripe on the minus leg. C3 is the engine's timing cap, the part that turns a scream into a tick; C2 blocks the DC on the Grub's way out
  • 3× 100 µF electrolytic (C5, C8, C9) - the Opto Duet's two output caps and one across its rails. Stripe to ground
  • 12× wire links (J1 to J12) - offcuts of component leg. Three of the Opto Duet's run diagonally over a 555, two across IC2 and one across IC3, so they go in before the chips or their sockets. J12 is the only one that is new: it joins the two grounds
  • 1× stripboard, 18 strips × 23 holes or larger - a cheap board is fine, but turn your iron down

Off the board

  • 2× 100K pot - TEMPO and PITCH, in place of the Opto Duet's two eyes. Each one wired as a variable resistor: one outer lug and the wiper, the third lug left empty
  • 2× 1K resistor - spot it: brown-black-red. One in series with each of those pots, between the pad and the outer lug, so a knob turned to the end never shorts a 555's pin 7 onto its timing cap. The eyes never needed one, because a photocell never reaches zero
  • 1× LED, any color, and 1× photocell (LDR) - the vactrol, sealed face to face in heat-shrink. The LED runs bare, no resistor, as on the Opto Duet
  • 1× B100K linear pot - VOLUME, all three lugs
  • 1× DPDT toggle, on-on - MODE. One pole picks what the divider hears, the other runs or stops the Opto Duet
  • 7× SPST switches, one per octave
  • 2× 1/4″ jack - EXT IN and the output
  • 1× DC jack and a 9 to 12 V supply. The Opto Duet wants 6 V and up, or its LED stops flashing
  • 1× momentary switch between MR_PAD and V+ for a retrigger - optional, the same as on the Grub
  • An SPST toggle for power, in the positive supply lead between the DC jack and the board's V+ pad. Not in the layout file - it is off the board, and every build on this shelf gets one

The layout file is the guide

Like every layout on this shelf, the build document for this one is the file itself: ↓ Download Opto_Duet_Grub.json - import it into Copper Bottom and the editor gives you the board picture, the placement walkthrough, the electrical checks and a printable build sheet, all from the same file. No coordinates are written out on this page on purpose: the editor is the viewer, and a number typed twice is a number that can drift.

Two boards in one. Strips a to i are the Grub Divider as I built it, and strips j to r are the Opto Duet as I built it, neither one moved by a hole. J12 is the only copper joining them, for ground. The supplies stay separate on the board: the Grub runs from V+, and the Opto Duet from OPTO_V through its own D1, which is what lets the mode toggle switch it off. Copper Bottom's four warnings on this file are the Opto Duet's own, carried over: C3 standing close by IC2, and R12 and R14 standing on end.

The netlist

Quoted verbatim from the layout file, and emitted from the copper rather than typed beside it - so checking the board against it can only pass. What it is for is carrying the circuit somewhere else, and telling you what each strip is doing while you stare at it. Everything from OPTO_V down is the Opto Duet; the eye pads keep their Opto Duet names, LDR_T for the tempo and LDR_P and LDR_V for the voice.

The off-board wiring

Twenty-seven pads take a wire: three knobs, the vactrol, the mode toggle, seven octave switches, two jacks and the supply, with MR_PAD only if you want the retrigger. VCC is a test pad that tells the checker that strip is a supply, and LED2_A and LED2_K can stay empty.

PadGoes to
V+ / GNDThe supply, through the power toggle. DC jack positive to the toggle and the toggle's common to V+; negative to GND, which is also both jack sleeves
OPTO_VMODE, the second pole. Its common goes to OPTO_V, the Opto Duet's supply ahead of D1. The throw on the same side as OPTO_OUT goes to the power toggle's common, beside the V+ wire; the other throw stays empty. So when the divider is listening to the Opto Duet it runs, and when it is listening to EXT IN it is off and makes nothing
OPTO_OUT / CLK_INMODE, the first pole. Common to CLK_IN. One throw to OPTO_OUT, where the Opto Duet's two 555s mix; the other to the EXT IN jack's tip. With nothing plugged into EXT IN the divider's input still sits on R8 to ground, so it never floats
LDR_T1 / LDR_T2TEMPO, a 100K pot, where the tempo eye was: LDR_T1 to a 1K, the 1K to one outer lug, the wiper to LDR_T2, the third lug empty
LDR_P1 / LDR_V2PITCH, a 100K pot, where the pitch eye was, the same way around: LDR_P1 to a 1K, the 1K to one outer lug, the wiper to LDR_V2
LED_A / LED_K
LDR_V1 / LDR_P2
The vactrol. The LED on LED_A and LED_K, bare, and the photocell on LDR_V1 and LDR_P2, sealed face to face in heat-shrink. LDR_V1 shares a strip with LDR_P1 and LDR_P2 with LDR_V2, so the cell sits in parallel with PITCH
SW1_A … SW7_A / BUSThe seven octave switches. Each SW pad is one octave arriving through its own weighted resistor; each switch's other side goes to the BUS pad, which is where they all sum
VOL_T / VOL_W / VOL_GVolume pot, all three lugs
OUT_T / OUT_SOutput jack, tip and sleeve
MR_PADThe Grub's master reset, held low by R9. A momentary switch between MR_PAD and V+ is a retrigger, or leave it empty
LED2_A / LED2_KOptional. An LED here flashes with the voice, as the Opto Duet's box light does. Leave them empty if you like

Built, and heard

Not this board yet. I built Grubworks: the Grub, an APC and an Opto Duet as three boards in one box. The Opto Duet is the one that surprised me. When the Grub spits its signal back out, it makes a beat - three up and one down, that kind of thing - so it sounds rhythmic all by itself, without any other signal. I think that is because the Opto Duet has an actual tempo.

How it works, in one breath

IC2, the engine, runs slow: its timing cap is 10 µF, so TEMPO sets a tick rather than a tone. Every tick flashes the LED behind its output cap, and the LED is sealed to a photocell in IC3, the voice's timing spot, in parallel with PITCH. A flash yanks the voice's pitch up and lets it go, so it chirps once per tick. Both 555s mix at OPTO_OUT, and that is what the Grub hears.

The CD4024 counts edges. Its first output changes on every second edge, an octave down; each output after it halves that again, seven octaves in all, and the weighted resistors bring them into one bus with the low ones strongest. A chirp is not a steady tone: it is a burst of edges that starts fast and slows, once per tick. My reading of why it makes a beat, and it is a reading, not a measurement: the counter counts its way through each burst, and how far it gets before the next tick decides which octaves change, so the outputs fall into a pattern that repeats on the engine's tempo.

Three pins on the CD4024 go nowhere and that is correct. Pins 8, 10 and 13 are no-connects, and Copper Bottom's checks leave them alone.

Things to try

None of these have been tried on this board, because this board has not been built.

  • Leave MODE on the Opto Duet and play TEMPO and the switches. That is the beat this board was drawn for.
  • The eyes back. Photocells on the LDR_T and LDR_P pads instead of the two pots, the Opto Duet's way, and the room light plays the beat.
  • EXT IN from another oscillator - the Cicada or the 555 theremin - is the Grub on its own, with the Opto Duet off.
  • Jumper an SW pad to MR_PAD for odd divisions and looping patterns, the Grub's own trick.

The Opto Duet is mine: the 555 astable core is the same public circuit as my 555 Optical Theremin guides, and the opto-coupled engine and voice is my own, found at the bench in August 2026. The divider is my Grub Divider, after the classic 4024 octave divider. The layout and the mode switching are mine, drawn in Copper Bottom, and so is anything wrong with them.