I got fed up with all the silly crap people hang in their windows at Christmas, so when a big bag of LEDs that I had ordered off Amazon was delivered on Christmas Eve, it was just in time for me to build this in time for the next day to show them how it should be done.
The LEDs are mounted by poking their leads through a sheet of cardboard which used to be the side of a box that had a PC tower case in it. This provides a convenient and lightweight means of holding them in the correct positions without having to fart around drilling lots of holes. As you can see, I used green and yellow LEDs for the ballsack, red LEDs for the shaft, purple LEDs for the bell end, and white LEDs for the spunk drops.
The circuit is relatively straightforward, being a 555 clocking a cascade of two 4017s for sequencing; the 4017 is a Johnson counter, which makes it particularly appropriate for this application.
The top 4017 sequences the spunk drops. The spunk is driven all the time but is only illuminated when the lower 4017 enables it. The resistor values of 15k and 47k are not a mistake. The white LEDs I bought turned out to be ridiculously sensitive; testing them on a 9 volt battery enough current flows through your fingers to make them light up. This is very handy because they can be driven with very small currents directly off the 4017 and still light up brightly.
The lower 4017 is clocked by the carry output of the upper one, and determines whether the cock is limp or erect and whether or not to illuminate the spunk. Outputs Q0, Q1 and Q2 are ORed by connecting them all together via 47k resistors - whenever any one of the outputs is high, the junction of the the three resistors is at one-third of the supply voltage (or would be if it wasn't connected to anything else), which is more than enough to turn on the BC548. Only when all three are low can the BC548 turn off. The BC548 in turn drives a BC327 which provides the LIMP signal, active for three counts out of ten; the LIMP signal is then inverted by another BC327 to provide the ERECT signal. The pull-down resistor on the LIMP signal line is necessary both to ensure this inverter works properly and because without it enough current flows through the 47k base resistor of the second BC327 to make the LEDs glow dimly when they should be off.
Outputs Q4, Q6 and Q8 are ORed in a similar manner to provide the !SPUNK_ENABLE signal. When any one of them is high the BC337 is turned on and provides a ground for the spunk LEDs. This provides three spurts of spunk with a pause between them. The pull-up resistor on this line is necessary because the cardboard on which the LEDs are mounted turned out to be a sufficiently poor insulator that without it the ridiculously-sensitive white LEDs would still glow dimly when they were not supposed to.
There is a certain difficulty in publishing a design built with cheap-ass Chinese LEDs off Amazon in that the LEDs do not have (known) type numbers, so the only way you can be reasonably sure of getting the same ones is to buy them off the same Amazon listings. So here are the links to the Amazon listings I bought them from:
Green LEDs - White LEDs - Red LEDs - Purple LEDs - Yellow LEDs
No doubt sooner or later those listings will become invalid, in which case you'll just have to use whatever LEDs are convenient and experiment to find appropriate values for the current limiting resistors. Mind you, the values given are not entirely optimal; the choice was strongly influenced by the fact that there are a small number of resistor values, including 180 ohms and 47k, that I have stupidly large numbers of (as in a supermarket carrier bag full of the things), but they're close enough for what is in any case an extremely silly circuit.
When the circuit is first switched on the 4017s come to life in an indeterminate state which means it may do funny things until it has counted through a complete cycle and they have sorted themselves out. This could be avoided by sticking an RC circuit on the reset pins but I couldn't be arsed.
Anyway, here is the circuit, presented by my usual method of drawing it on a piece of paper and then scanning it because it is a fuck sight quicker and easier to do that than it is to draw it on the computer. It is at least something of an improvement over the original design scribbled on the back of a letter from the electricity board.
It has to be said that the main reason I have bothered to publish this circuit at all is that it means I can post a diagram of a circuit with a !SPUNK_ENABLE line in it.
Back to Pigeon's Nest
Be kind to pigeons