Multiplexing 500 LEDs from computer serial port

Thread Starter

Chrys

Joined May 23, 2011
1
Hi All,

I'm a complete newbie here. I haven't bread-boarded a circuit since the late '70's, but figure I can still read a diagram and I can solder. Nonetheless, I'll need to have my hand held a lot on this one.

I'm building a project for a (very poor) developing nation in Africa that will show the status of non-networked remote computer stations on a big light up board. These computers will periodically send their operational status via cellular GPRS to an MSSQL database. I will define certain triggers on the database to report their status.

What I want is to be able to represent each computer using a tri-color 5mm LED on a large black board (one LED per computer) to show each computer's basic status. If the computer reports all functions ok, it's green. If it hits some error threshold, it's red. If it hits some warning threshold, it's yellow. This way we can have a bird's eye view of the nation. EVENTUALLY, the display will be a series of large computer screens, each representing a province in the country, so that we can click on a dot and get more detail about that particular computer station. For now, it'll just be an LED with a number under it, and we'll have to go to the computer and run a query on that number to get the details.

There are currently 500 of these computers scattered across the country. We can't afford to have an LCD computer screen large enough to show a whole nation, so I'm willing to wire a board the size of a wall with LEDs. I know it'll be a big hairy pain, but that's ok (Besides, it'll look cool to my African colleagues--think Lite Brites from when we were kids). We don't have the money to hire someone to do this. All our computer development and deployment is being done in-house.

I guess I need three things (perhaps this forum can only provide me with the first one?):

1. A circuit design that can drive 500 5mm LEDs with any of three possible states for each individual LED: Green, Red, Yellow. This board should take USB or COM port serial input, although it would also be fine to use the RJ-45 jack on the NIC.

2. A computer application that can consume output from an MSSQL report, multiplex that output, and send it to the computer port specified above.

3. The format that the SQL report should be for #2. I will write the SQL query to produce that format.

If #2 and/or #3 are beyond the scope of this forum, then I would need input specs for #1.

Thanks all for helping this poor newbie!

Chrys
 

someonesdad

Joined Jul 7, 2009
1,583
Well, it's certainly possible, and in a gazillion different ways. You don't give any ideas as to the money you have to spend on this project (the parts and tools you'll need to build it will cost money). And it's still unclear to me why this big lighted board is needed. It seems overkill for something a single person sitting at a monitor can do (e.g., shout out "Number 134 just went red!"). It sounds like part of the motivation is that it will look "cool".

It appears you're asking someone to donate their time to do the design work. Someone might volunteer. The usual role of this forum is that people do their own design work and ask for help on things they're having trouble with.

Why not have, effectively, a big blackboard that someone just modifies as needed with a piece of chalk? Or, make low-tech colored markers from cardboard and hang them on small wire hooks (or just use thumb tacks). Organizations did this kind of thing in World War 2 and managed things orders of magnitude more complex than what you're trying to do. The person who maintains the board would then just look at the output of a small video monitor. It would be straightforward to write a script that would query the database periodically and only print out the relevant information that needs to be changed on the board. I would imagine you have plenty of people resources to volunteer their time. The construction of a manual display board like this is still going to take some time and resources, but it's more straightforward than telling someone how to build and debug some hardware halfway around the world.
 

kubeek

Joined Sep 20, 2005
5,795
Why not just display a list of red and yellow computers on a smaller screen? You can also have a scrollbar :)
Surely easier than 500 LEDs and definitely costs 0.

You can then easily implement stuff like "acknowledge" to remove the one that is being worked on from the list of newest, or anything else. Also, if it is likely to have more than 20 bad at a time, how will you notice a change?
Just the idea of soldering 500 3-color leds with a few hundred transistors and resistors makes my hair stand.
 

Markd77

Joined Sep 7, 2009
2,806
If they are just 20mA LEDs one way would be to use a cheap microcontroller like the PIC10F200 for each LED. Each could have it's own ID number and so could all be controlled from the serial port.
The cost would be about $180 for the microcontrollers and not much more for capacitors, resistors and everything else. Not sure how much the circuit boards would cost but they would each be pretty small.
Obviously it would require some programming, but not too complex.
 

THE_RB

Joined Feb 11, 2008
5,438
It sounds a bit funky to me. 500 bi-colour LEDs for a start will cost a lot more than 500 red and 500 green LEDs. The wires and drivers will be the same either way.

Why not just get a screen? Surely a "control room" that has to monitor the whole country has SOME type of budget?
 
Top