Introduction: Build a Binary LED Heart Decoration (Blinkenheart)

This is my first instructable, so definitely send me feedback. If I can make a schematic that isn't terrible, I'll add it in here.

I'm just starting to learn some basic electronics and a friend wanted to get something special for her fiance for Valentine's day. Perfect timing! So, I made up the parts list, waited for them to arrive, and started building. The unit consists of 32 red LEDs, a 555 timer circuit and a binary counter, along with a bunch of supporting components and some creative wiring.

This was my first major electronics project and I certainly learned a great deal from it. Of course, if I already knew everything that I learned, I might not have been quite so eager to begin it... It took me a lot longer than I had expected it to, but I don't regret doing it. If I have any reason to do this on a larger scale, I am seriously thinking about prefabricated circuit boards.

The end result is an array of 32 LEDs that form a heart, piece by piece, and hopefully will make a nice desktop ornament.

Step 1: Parts List

The first step for me was to prototype small parts of the project on a breadboard. I used an online calculator at to determine the values for my timer and used Ohm's law to determine what resistors I would need so the battery doesn't drain too quickly or burn out my LEDs.

I bought almost everything from Mouser (toggle switch was from Radio Shack), so I have all the part numbers available, if anyone wants, I'll post them in here, but they should be available anywhere. The resistors in the Display section are partly for current limitng and partly for convenience. I may have gone insane if I had to cut and strip that much wire.

Do yourself a favor and don't buy a package of 7 DIP switches and thing you are going to be clever and cut them into pieces and salvage 4 individual switch elements from them... Buy a toggle or latching pushbutton switch and keep away the grey hair and premature baldness.

I was a little annoyed by the cost of the protoboard in relation to the other components, but I was impressed with the quality, so I felt better about trading the cash value of a fast food sandwich for it. :-)

Here's the parts list:

Breadboard (for prototyping)
Soldering Iron (20W-40W)
Standard rosin-core solder
Wire cutter/stripper
Diagonal cutter
18-20 gauge wire for prototyping and final construction
3M/Nexcare Micropore(tm) Surgical Tape, gentle paper tape, masking tape, gaffer tape, or your favorite unobtrusive adhesive
Massive amounts of free time and patience

- Plaftorm:
1x standard 0.100" pre-drilled protoboard

- Timer/trigger section:
1x 555 timer chip
1x 0.01 uF ceramic capacitor
2x 1K Ohm 1/4 W resistor
1x 470 uF electrolytic capacitor

- Binary counter section:
1x SN74HC590AN or similar binary counter

- Display:
32x red frosted LEDs, T1 3/4 (5mm) size
8x 2N3904 NPN transistor or similar small-signal transistor
8x 56 Ohm 1/2 W resistor
8x 82 Ohm 1/2 W resistor

- Power:
1x 4 AAA battery holder
1x 100 uF electrolytic capacitor
1x PCB toggle switch or latching pushbutton

Step 2: Prototype the 555 and Binary Counter Stages

I checked out the datasheets for both of my chips and then set to wiring a test circuit up, just to make sure I was doing things right. The values I chose cause the 555 to trigger a bit more often than once per second. This should cause the binary counter to fill and overflow about every 4 minutes.

555 pinout (numbered counterclockwise, starting at upper left wrt dimple or key):

pin 1: Ground / Earth
pin 2: Trigger
pin 3: Output
pin 4: Reset

pin 5: Control
pin 6: Threshhold
pin 7: Discharge
pin 8: Vcc (Supply Voltage)

Connect a 1K resistor between pin 8 and 7 and another between 7 and 6. Connect the 470 uF electrolytic between pin 1 and 2, making sure the negative side is connected to Ground / Earth (pin 1). Connect the 0.01 uF between Ground and pin 5 (Control). Connect a spare LED to pin 3, connect the battery positive lead to pin 8 and the battery negative to pin 1. Connect pin 8 to pin 4 and then pin 6 to pin 2. This sets up the astable operation of the 555 circuit.

Verify that the LED blinks about as fast as you think it should. This pulse is going to be used to trigger our binary counter in the next step. The video shows very nicely how the binary counter is edge triggered. has a good description of the different pins and their function.

Once the 555 is working to your satisfaction, add the binary counter stage. The output pulse from pin 3 of the 555 chip will connect to pin 11 of this chip to increment the counter. You will want to consult the datasheet for your particular chip, but for this one, the SN74HC590AN, I had to connect the counter clock and the register clock together. There are ways to use this chip that involve changing the internal count but not the displayed count, which is interesting from a computing perspective, but not very relevant to this project. Pin 12 (inverted count enable) and pin 14 (inverted output enable) were both tied to ground, while pin 10 (inverted master reset/ clock clear) was connected to supply.

Don't leave this connected too long, as we don't have any current limiting resistors in place. That, and you will want to get on to the next steps!

Step 3: Make Rough Layout of Component Placement

Before I started anything, I put the LEDs on the protoboard just to make sure I wasn't insane and 32 LEDs would indeed fit on the board in a nice pattern. I decided that the negative leads would be best on the outside, so I could connect them together easily, forming a common cathode for my display. I din't think it would have worked out too well if I had made the negative leads closer to the inside of the device.

I wasn't quite sure that the control circuitry was going to fit, since I thought 32 LEDs was a lot, but it all worked out. The wiring, as you will see later, proves to be the most time-consuming part of the project.

Step 4: Place 555, Binary Counter and Transistors

This is where the paper tape or other adhesive comes in handy. Once you've placed your components, tape them down to the protoboard and flip it over to solder the components together. Having a clear idea of what you want your layout to be certainly helps, or you could be like me and wing it, praying that everything will fit.

I bent the leads of both chips down to be as flush with the protoboard as I could make them. If you want to be smarter about the design than I was, you could use sockets for the chips, but the construction would have to change significantly if you wanted easy access to replace the chips if they failed.

The white wires in the picture are the output (555, left) and the trigger (counter, right). If I had planned a little further ahead, they would be a single wire.

After both of the chips are in place, add the current limiting resistors to the binary counter. These aren't technically necessary, but I certainly appreciated having sturdy ready-made wires that I didn't have to cut or strip. You'll want to tape these down, too. In a lucky move, I've alternated the ending pin placement across the board so that I could have some hope of getting the transistors to fit. Once they are placed, tape them down and solder them to the pins of the counter and the bases of their respective transistors. Don't use too much heat for too long or you'll fry the chip, the transistor, or both.

After the first set of resistors are connected, add the second set, tape, solder. These will be connected to the collectors of the transistors and provide most of the power for our LEDs.

The 56 Ohm resistors from the binary counter will be connected to the base of the transistors, which will sit underneath another set of resistors, this time the 82 Ohm ones, which will go directly to the power supply and into our LEDs. It just won't look very pretty.

This particular binary counter chip can provide enough current to light 8 20mA LEDs, but since I was going to be running 32 in parallel sets of 4, I decided to use transistors. Besides, transistors are neat!

Step 5: Prepare the LEDs for Connection

Here comes the most time-consuming part of the project. Getting the LEDs in position isn't too hard, but soldering them all together in just the right way, making sure not to short anything out or screw up previous soldering is quite a delicate task. Right about now I wished I had a few more weeks for this project, and maybe some double-sided pre-made printed circuit boards.

There isn't too much brainwork to this step, but there is plenty of labor.

First, lay out the LEDs in your desired pattern, and decide which ones you want to be triggered at the same time. In this case, I'm choosing groups of 4 to be activated by the same pin, starting at the top and bottom and continuing around the edges to the sides.

Once you have placed them all where you want them, tape them to the board with your adhesive of choice. Flip the board over and begin the ordeal.

It is a good idea to stop and test individual and groups of LEDs to make sure they are still functioning. This method of construction doesn't exactly lead itself to simple repairs.

I positioned all the negative leads so that they would go around the outside of the shape, and then laid the positive leads flat where I could and bent the others into a ladder structure. To make the gaps in the insulation in the middle of wires, I bent the wire and carefully snipped away the insulation at the tip of the bend, then bent it the other way and carefully did it again.

SEVERAL HOURS LATER... I was done. After all that, make sure to connect the respective leads for your LED groups to the appropriate emitter pins of the transistors. 0-7 are arranged from left to right on the component side, so just poke it through and solder it up. Tape helps here, too.

The pictures should tell you all you need to know about this time-consuming step...

Step 6: Connect Power and Generally Finish Up

Well, that took longer than it should have... but it is done now, and the last steps are in sight!

The large clump of resistors that are connected to the respective collectors of the transistors are going to be connected to positive power, along with both chips. In order to make the circuit, we also need to connect the ground leads of the LEDs to negative battery connection and make sure the chips get connected, too.

I chose to put the toggle switch on the bottom for easy access, although I would have liked something a little more easily mountable for stability. There are plenty of things I would have improved if this were a kit or something requiring more design, but for now, superglue holds it on in a fairly stable position.

There's one component that I left out in the pictures but added it back in later: the 100 uF capacitor connected between the two battery leads. This is to help compensate for any large current drains that might spring up or any other strain that the battery might not be able to keep up with later on. It also helped to bring that long green wire into a manageable position.