LED Matrix Again

Well I’ve been working hard on those LED boards. I now have 12 fully working boards! I couldn’t fix the badly damaged board, but that’s fine- I have been using it for parts to fix the others. After some bad setbacks, I finally got 12 fully working and debugged boards running.

I learned something pretty valuable from the experience though- do not use a hot air rework station to attempt to remove LEDs! At least not these LEDs. I tried to remove 1 defective LED and the hot air killed 11 LEDs around the bad one. Turns out the epoxy cracked or pulled away from the substrate taking the bond wires with it, rendering a bunch of LEDs dead. I am not sure if it was a heat problem that did it, or popcorning where traces of moisture in the plastic package caused the plastic to crack as it turned into steam.

The solution to removing the LEDs turned out to be pretty simple. I took a piece of 1/4″ copper tubing and carefully bent the end into a square shape that fit around one LED. Then, I jammed it on the tip of the iron, tinned the copper, and proceeded to heat up all 6 connections on the LEDs at once. This neatly removed the LED without damaging the traces or anything around it. Of course it destroys the LED, but since it is already bad it’s no loss.

To remove good LEDs from the parts board took a bit of doing. I ended up using hot air, but I heated the board from the BOTTOM instead of the top. This melted the solder nicely and I could just pop them off with tweezers. I tested each LED of the 20 or so I removed and all worked fine proving that the technique is pretty decent.

After removing the bad LEDs from the boards and obtaining new ones, it was a simple matter to clean the boards up and stick new LEDs on. Except the connection pads are fully UNDER the LEDs. I tried some solder paste but this didn’t work. It ended up shorting out underneath. Turns out the solution is to go in hot and fast. Similar LED datasheets say to reflow at 260C, but at 260C the copper was sucking the iron’s heat away and it wouldn’t melt worth a damn. I turned it up to 400C and went in fast and it worked VERY well. I got good enough to put in 1 LED a minute near the end of the work. After their treatment all LEDs worked the first time.

One of the boards though had been reworked before I got it and whoever did it ripped three of the pads off one side of the LED, killing red and blue drive for it and the 3 LEDs below. I used some 30 gauge thermocouple wire as mini “zip cord” to route some wires around the break to get the lower 3 LEDs working, then some more soldered to the bottom of a new LED to replace the missing pads. The LED is crooked a tad but when viewed head on it looks fine.

Here’s a pic of the wired fixes:

It’s kind of hard to see but the wiring sits between the LEDs and when they are on, you cannot see it at all.

Soo, that was the fixing fun. I also have some more pics of the back side showing power/programming hookup since a few people wanted to see that. And now that I have 12 fully working boards the real project can begin: connecting all 12 together to make one massive 144*144 LED matrix. That’s 20736 LEDs, or 62208 LED dice! This week I will design and make a board for the controller. It will be a cyclone 3 FPGA, some RAM, video decoder, external input (for digital video sources), and a 2*8 jack ethernet patch bay with some LVDS transmitters. I *really* wanted 14 boards so I could make a giant gameboy resolution screen, but I have to take what I can get. The person I bought the boards from ran out and I bought all he had.

Oh yeah, I sawed up the remaining boards too so now all the boards have been sawn down to the right size for tiling.

Laying out the boards to get an idea of the finished size (40″ diagonal, 72*72cm). Some of the boards have rework marks on them, but this does not affect operation when they are lit.

Power and JTAG hookups

Back side overview

Another pic w/ closeup

LED Project Update

Wellll I have the goods all figured out now on gamma correction and LED drive levels so that it closely replicates a CRT-like response curve. This means that my test palettes look pretty much like they do on the PC. I have obtained 13 of these boards in total, and soon I will be putting them on a table saw to carefully remove about 3mm from the edges so that the boards can be tiled.

I tested the saw on 4 boards and it works very well. The boards continue to function after their ordeal and the boards fit together properly so that they can be tiled to make one super array without any gaps… at least in the Y direction. I will have to make a special cutting jig to do the cuts in the X direction, since the boards are so oblong. I will get a piece of wood or plastic and square the end, then screw the board to it and use this as a cutting guide. The cut has to be very precise so I do not saw through anything I want to keep.

Fortunately, the board is designed so that all the “stuff” is UNDER the LED array completely, so cutting the useless edges off does not impact anything at all. The two ends where a route can be seen inside the board is no trouble, it’s just a ground to the mounting holes. I will cut off one set of mounting holes so that the boards will tile properly on the Y direction.

After all 13 boards are properly cut and still work, I will then proceed with designing the system controller board. No sense wasting money on that if I screw the boards up.

Speaking of that, one of the 13 boards I have is really screwed up. About 100 of the LEDs don’t work right, and some of the driver lines are shorted. I will have to do some surgery on it if I hope to make that one work properly.

On two of the boards, the 5V and 3.3V drivers are shorted together on the output of the FETs, so I fixed that by lifting the 3.3V driver input.. This puts 5V on one row worth of red and green, but it doesn’t affect anything. The drivers get a tiny bit hotter is all, but since it’s constant current no other troubles arise.

Four of the boards have from 1 to 3 LEDs that don’t work either, but pressing on the LEDs causes them to light so the fix there is to put a little solder paste on and reflow it and those will be fixed.

So that’s the status on that project. Here’s a video of the thinger in action!

More LED fun

Well I worked a bit more on it and I have achieved 24 bit colour… though it has issues. The LED’s “gamma” is all wrong, so that will be the next thing to work on. At first I was worried about getting the PWM to work, but that proved to be simple. I finished that up and got the first light with the new PWM system.

And now… it’s plasmatime! The plasma here bubbles and roils and moves around at about 40-50 fps. Pictures don’t do it justice.

In the last picture, it looks like some LEDs don’t work. This is just because the first palette entry is 0. I forgot to edit it to replace it with the right colour. The next step I guess is to correct the brightnesses somehow since all the colours are waaay too bright except green. Whenever blue is on with another colour it overpowers it and washes it out. Yellows become somewhat orange, too since red is too powerful also.

So, that’s all for now!