Opto Duet CV Rack
Two 555s, one LED, one photocell · The Opto Duet CV plus a rack block · 8 HP · By Onion Madder · Mess O' Pedals
The Opto Duet CV is two 555s that play each other: an engine that ticks, flashing an LED sealed to a photocell, and a voice whose pitch that photocell yanks. On the box, tempo and pitch come from light, two eyes on the face, and a CV jack for each lets an LFO, an envelope or a sequencer push them too. In the rack the eyes become two knobs, the CV jacks stay as they are, and the voices come out at rack level instead of out of a speaker.
What you'll need
tap to expand / collapse
On the board, counted from the layout file:
- 2× NE555 timer, 8-pin DIP (IC1 to IC2)
- 1× TL072 dual op-amp, 8-pin DIP - spot it: TL072 printed on top, notch marks pin 1. An NE5532 or TL082 sits in the same holes (IC3)
- 2× 100R (brown-black-brown; R2, R4)
- 2× 100k (brown-black-yellow; R7 to R8)
- 3× 1k (brown-black-red; R1, R3, R9)
- 2× 4k7 (yellow-violet-red; R5 to R6)
- 1× 100n ceramic disc (104; C4)
- 2× 100n ceramic MLCC (104; C8 to C9)
- 2× 10n ceramic disc (103; C2, C5)
- 1× 1u box film (105, or a small film cap; C12)
- 3× 100u electrolytic (C3, C6 to C7) - spot it: the stripe marks the negative leg
- 3× 10u electrolytic (C1, C10 to C11) - spot it: the stripe marks the negative leg
- 1× 1N5817 Schottky, the reverse-polarity diode - spot it: a fat black body, band toward the cathode (D1, on my board, protecting the 555s)
- 2× 1N5817 Schottky, the reverse-polarity diode - spot it: a fat black body, band toward the cathode (D2, D3, one per rail for the TL072)
- 21 wire links (J1 to J21) - solid core, tinned
- 1× 2×5 pin header, plain, 0.1″ - the Eurorack power connector. spot it: ten square pins in two rows. Not the shrouded kind; a shroud is 20 mm long and would cover the neighboring strips
- Stripboard, 26 strips × 23 holes or larger
Off the board
- 2× B1M 9 mm Alpha pots, tempo and pitch, each wired as a variable resistor: the wiper jumpered to lug 1, lug 3 through its 1K. A starting value; the box had photocells
- 2× 1K resistors (brown-black-red), off the board, one in series with each pot: the floor a photocell had and a pot does not
- 3× Thonkiconn PJ398SM 3.5 mm jacks: tempo CV, pitch CV and out
- 2× LED and 1× photocell (LDR): one LED sealed face to face with the photocell in heat-shrink, the vactrol, behind the panel; the other LED the indicator on the panel
- 1× 8 HP Eurorack blank panel, two knobs, and a Eurorack power cable
What is the Opto Duet CV, and what is new
Strips 0 to 9 are Opto_Duet_CV.json hole for hole, every part in the hole I built it
in; every net of the Opto Duet CV is re-derived from the new copper before this page is written.
Three pads came off: +12V, because the rack now feeds that strip, still through my D1, and the two
speaker pads. Two wires lie diagonally across the board to reach it from the block below: J20 brings
the raw +12 V up to the strip D1 starts on, and J21 joins my ground strip to the header's.
The eyes are pots. Each eye was a photocell standing in for a 555's timing resistor. A B1M pot wired as a variable resistor takes its place, with a 1K in series off the board: a photocell never gets below about 1K even in bright light, and a pot goes all the way to nothing, which would let the tempo 555 dump C1 (10 µF) straight into its discharge pin. B1M with its 1K covers about what a photocell does, bright to dark. The values are a starting point; the box never had pots.
The CV jacks are as built. Each tip goes through its 4K7 (R5, R6) into pin 5 of its 555, the control pin. More volts is slower and lower, and a cable plugged in at 0 V already pulls pin 5 down and runs that 555 faster than with nothing plugged in. A rack CV can swing below 0 V, which the box never saw; the 4K7 keeps the current small, and negative volts just push pin 5 further the same way.
The speaker is an op-amp. SPK_A, where my two 100R mixers meet, comes down on J18 into C12 (1 µF) and R8 (100K), and op-amp A turns it around at unity with R7 (100K) back, out through R9 (1K). With nothing loading it, each mixer node swings about the whole 555 output, near 10 V peak to peak, so unity lands the pair near rack level. That is arithmetic, not a measurement.
The one thing this changes about the circuit. With a speaker on SPK_A, some of each 555's pulse went through 100R and the speaker to ground instead of into the LED beside it. Into an op-amp all of it goes to the LED, so the LED sealed to the vactrol cell is driven harder than in the box and the voice may wobble deeper. The box's own page offers an output jack in place of the speaker, so the circuit was meant for this; whether it sounds the same is for the bench.
The layout file is the guide
As on every stripboard guide here, the build document is the file itself: ↓ Download Opto_Duet_CV_Rack.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.
The netlist
Quoted verbatim from the layout file. It was written from the board, 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 supposed to be doing while you stare at it. The bug board's nets keep the names they have on its own page.
The off-board wiring
26 pads leave the board. Ten of them are the power header, and two are test points or carry nothing off the board.
| Pad | Goes to |
|---|---|
| LDR_T1, LDR_T2 | The tempo pot, where the tempo eye was: LDR_T1 through the 1K to lug 3, LDR_T2 to the wiper, the wiper jumpered to lug 1 |
| LDR_P1, LDR_V2 | The pitch pot, where the pitch eye was: LDR_P1 through the other 1K to lug 3, LDR_V2 to the wiper, the wiper jumpered to lug 1. It sits across the vactrol cell, as the eye did |
| LDR_V1, LDR_P2 | The vactrol cell, sealed to LED1, behind the panel. LDR_V1 shares its strip with LDR_P1, and LDR_P2 with LDR_V2 |
| LED_A, LED_K | LED1, sealed face to face with the vactrol cell |
| LED2_A, LED2_K | LED2, the indicator on the panel |
| CV_T | Tempo CV jack, tip, through R5 to the engine's pin 5 |
| CV_P | Pitch CV jack, tip, through R6 to the voice's pin 5 |
| OUT | The output jack, tip. Both voices, AC-coupled, through the 1K |
| GND_P | Ground for the panel: the three jack sleeves. One pad, one wire, daisy-chain the rest |
| VCC | A test point on the protected side of D1; nothing leaves the board here |
| GND | Ground on my board's own strip; nothing on it in the rack, the jack sleeves go to GND_P |
| H1 … H10 | The power header, 2×5, pins down the strips. H1 and H2 are -12 V and take the cable's red stripe; H3 to H8 are ground; H9 and H10 are +12 V |
The panel
8 HP, which is 40.6 mm of a 128.5 mm blank - Amplified Parts sells reversible black-and-aluminum blanks in every width from 2 to 20 HP. The template is drawn for 9 mm Alpha pots (7 mm holes), Thonkiconn jacks (6 mm), sub-mini toggles (6.5 mm) and 5 mm LEDs, with the rack's rails kept clear top and bottom and the four M3 mounting holes where Doepfer puts them. I/O along the bottom, controls above, as everything on this site does it.
↓ opto-duet-cv-rack-panel.pdf
Nobody has drilled this one yet - the holes are the module's pads, where they sit is the format applied to them.
The rack block, under the board
The bottom sixteen strips are the rack block every module on this shelf carries, drawn under the board instead of beside it. The 2×5 header takes the rack's power cable, mounted with its pins running down the strips so each pair of pins lands on one strip: -12 V, then three grounds, then +12 V. That is the only way it can go on stripboard. The red stripe on the cable goes to H1 and H2, on strip 15. A 1N5817 stands in series with each rail for the TL072, and a 10 µF sits on each. My board takes the raw +12 V, because its own D1 already protects it. No regulator: the two 555s ran on 12 V in the box.
The IDC socket on the power cable overhangs the header by about two strips at each end. Nothing tall stands there - the generator that drew this refuses to put anything standing under the socket - so keep it that way if you move a part.
Check the cuts under all three chips before the first power-up, with a meter. A DIP on stripboard puts pin 1 and pin 8 on one strip, pin 2 and pin 7 on the next, and so on down, each pair held apart by nothing but the chip's own cut. On the TL072 that puts pin 4 and pin 5 on the same strip, -12 V a whisker of copper from ground. A cut that did not quite go through is a dead short across the supply. Cut them, then measure each one.
How it works, in one breath
The engine is a 555 ticking at a rate the tempo pot sets, and every tick flashes LED1. LED1 is sealed to a photocell, and that photocell is part of the voice 555's timing, so each flash yanks the voice's pitch and lets it slide back as the cell recovers. The pitch pot sets where the voice sits between flashes. A CV on either control pin leans on the same thing from outside. The two outputs meet through 100R each, and the TL072 takes that mix to the jack.
Things to try
- Put an eye back. A photocell in place of either pot, with its 1K left in, is the box again. Untested in the rack
- Clock the tempo. A slow LFO or an envelope into TEMPO CV drags the ticks around; a sequencer's CV into PITCH CV moves where the voice rests
- Through the Output Rack. Into the Output Rack and on to a pedal
The Opto Duet is Onion Madder's; the CV inputs are the 555 datasheet's control pin. The rack block is the standard DIY Eurorack power entry and an inverting op-amp stage. Drawn in Copper Bottom.