Sort of... this is my final project at tech school, and one of the instructors indicated he wanted a large LED display to show competitor #'s at horse shows. (Show's who's performing, who's up next and such, so riders outside the showroom can see when they're up.) Basically it's a huge 30-element 7 segment display.
Just got the PCB's from seeed:

There will be ten pairs of display/driver boards, strung together by cat5 for the data lines. The xbee/microcontroller in the bottom right is only populated on the first one, obviously.
It's really just a huge string of 74HC595's driving npn bjt's wired as little CCS's for 4-element strings of LEDs. Not the most exciting thing ever but going through the whole process of circuit design, parts selection, pcb layout, firmware & PC software, while keeping under a budget and on time was really interesting to do.
The XBee radios that I'm using are pretty freaking awesome, I must say. For what they can do, the cost is pretty reasonable.
And lastly, I owe huge thanks to DP because the bus pirate and ols have been absolutely invaluable for our final project class. With seemingly everyone using zigbee/xbee or a serial accelerometer or something, they've been in constant demand in our final project class. At least two other kids have ordered bus pirates and even the instructor is getting one... perhaps part of the curriculum one day? :)
Hi Gridstop,
Great project. Please keep us updated.
Thanks for sharing the Bus Pirate with your class. We don't advertise (yet), so our sales are all word of mouth. If a class wants multiple Bus Pirates please let me know, hacker spaces and schools can go through our distributor program too.
driving npn bjt's
Did you consider a driver like the ULN2803A:
http://focus.ti.com/lit/ds/symlink/uln2803a.pdf (http://focus.ti.com/lit/ds/symlink/uln2803a.pdf)
I usually pop those into big LED projects, but maybe the discrete transistors fit your supplies or budget better.
That's it exactly. ULN280x chips start at about $0.75-0.90 each for PDIP. I would have done SOIC but I don't want to assemble ALL of these myself, other students will be helping out. And soic are still $0.40-ish.
Whereas 7 TO-92 2n3904's are all of $0.126 in these quantities. (1.8 cents each!)
Secondly, the main supply will be a deep cycle battery, so input voltages will range from as high as ~15v if they attach a charger during operation, to as low as 10.5-11 volts when the battery is nearly dead. By using discretes, I can put the current set resistors on the emitter (with a constant 3.3v on base from the shift reg), so I get a very nice constant collector current regardless of V+. Since the uln280x stuff have shared emitter connections to ground, there's no way to do this and LED current would vary much more with V+ if the resistors were just in series with the LEDs.
The cost/parts complexity was also the reason I ended up not trying to multiplex as well. With the need for high-side switching, it was hard to beat the cost & simplicity of just using 3x 74hc595 and 21x 2n3904's per board.
To give you an idea of budget, it was about $300, which got eaten up FAST:
2 sets of PCB's from seeed & fast shipping= $106.
2 Xbee Pro's $32 each = $64
1 USB/Xbee adapter (just a ft232 really) = $25 (yeah could've been done cheaper diy but I didn't have time)
900 LEDs (enough for the 11th boards seeed sent as a spare) = $42
Which leaves about 50-60 bucks (not counting shipping) for absolutely everything else, and all those pin headers, rj45 jacks, screw terminals, etc... ate up a lot of that, which doesn't leave much for the actual driver circuitry :)
I actually ended up not populating the resistor networks on the 2n3904 bases because they were only necessary when using the 74hc595's enable output to do PWM (because the outputs go hi-z, not zero, so I needed a pull-down to turn them off) But it should be possible to do brightness/pwm in software by just updating the shift regs fast enough, and resistor networks are spendy (was over 6 bucks for those).
What spawned this project was I designed a multiplexing scrolling marquee for the electronics club to buy/assemble, and one of the teachers saw it and asked me about doing this project. Here's one of the little marquee boards (there are 10, thanks again seeed!) They use atmega48v's (super cheap in qty 10), 64 kingbright LEDs, 8 trusty 2n3904s (or whatever), and are strung together by the pads at the bottom in series. Each chip acts as an 8-byte shift reg/ring buffer with the rising edge of the SPI SS line transferring the data to the display buffer so they can be synched. The code was startlingly simple, and I can't wait to see what kind of framerate I can get once all 10 are built. (I swear they're going to find me pricked to death with 3000+ clipped off LED leads that I made my classmates solder...)
Clean design, esp the marquee board. No rooms for anything else.
I assume all pins are taken to do a 8x8 matrix? You might consider doing a 2x5x7 if you have an I/O to spare. As 5x7 seems to be common for lots of cheap dotmatrix modules. Not as cheap, but will prevent some hardcore pricking to dead by you 'fellow' students :)
Yeah with the large 7-seg display, the size was kind of dictated by the led board, so I had a lot of room to play with on the driver. But the marquee was really tight. Initially I wanted to use a uln280x for that one instead of transistors, but it became too hard to route. I believe the atmega48 has one extra I/O that I wasn't using, not counting disabling the reset line, which could give me two I suppose. I also had about two months to play with the marquee design and optimize it over and over, while the 7-seg boards had to be done RIGHT NOW so I could finish by the end of the semester, so they're not as pretty.
We looked at a few dotmatrix modules, and I suggested precisely 2x(5x7)'s for exactly that reason, but cost and the intense brightness (giving me brightness headroom for multiplexing) of the kingbright WP7113SRD/D (insane deal at 500+ qty) were hard to pass up. Plus some students wanted the extra soldering practice (or at least they THOUGHT they did until they got into it).
I'm using those same LED's for the 7-segment display and they're visible in direct sunlight outdoors (with the PCB painted/covered in black, and a slightly smoked cover plexi). And in the marquee (indoor only) they have loads of brightness headroom for multiplexing without overdriving current during on time, which was impossible with the atmega doing the high-side switching.
The project is nearly done now, only software remains to work on. My instructor is building an enclosure for it so he can take it on the road this summer.
Pics:


It's really hard to photo super high powered LED's in operation... I don't have the smoked plexi home with me this weekend so it's just blinding to look at.
Everything went pretty well. No problems with the hardware or circuitry. I was surprised to find how few power supplies in the lab could handle 5 amps continuous at 12 volts, so we ended up stealing a computer power supply and using that temporarily. Eventually I hope to get one of the smaller Xbox 360 power supplies and use that (they're easy to jump-start, just tie the PWR_ON wire to +5v stdby, they're active high instead of active low like an ATX). A 360 supply will be nice and rugged and portable. The system can still operate on batteries if need be, as long as it's a large (100+ amp hour) deep cycle.
Had some flakyness burning the AVR with the bus pirate. STK500 mode worked fine, but the binary mode using avrdude didn't work (though it has worked for me in the past on other boards). I'm not sure if maybe the binary mode is using Hi-Z and I didn't have Vpu wired into the target or what, the signatures read fine but I could never verify the code (and it wasn't running so it didn't burn right either).
I'm hoping after school is out to do some more of a writeup for here & hackaday but since the circuit itself is not so crazy I want to talk more about the part selection process I went through, because I know for me finding what you need can be daunting on mouser & digikey.
Hi,
That is a very cool project, and nicely done!! You must, however, have a machinist working for you at dirt cheap rates if you were able to do all that mechanical work and still keep the project cost under $300! With that in mind, would you mind passing on his/her name - I've got a few projects that could use their help ;-)!
John
I soldered all the driver boards myself, and about half of the LED boards. A few classmates helped with the rest of the LED boards. The metal frame took about 2-3 hours messing around in the Fabrication Techniques lab at school. Just some bolts, washers, and pop rivets used with 1" wide, 1/8" thick aluminum stock.
Once the outer frame was done, the crossbars were drilled with a template, then assembled in place, and the pop rivet holes were simply drilled straight through the main frame and crossbar at once. Then lots of canned air to get rid of the metal dust.
Front page!
I hope to sometime in the next couple weeks do a bit more of a writeup/post mortem, including parts selection. As I mentioned above, the circuit itself is not particularly exciting, but the process itself was more interesting. But if anyone has any questions just post them here and I'll try to keep an eye on it!