Questions on Single Board Computers
I need some help trying to select a single board computer
for a project that I am engaged in.
The single board computer will be driving an array of approximatley
400 to 500 tri-color LED's that will be sewn into a piece of clothing.
Each tri color LED has emitters for red, blue, and green. These three
colors are combined to form any other color.
This means that I will have about 1200 to 1500 individual light
levels to control in real time.
Further, as this is a piece of clothing, it needs to run on a 12
volt battery. I will not have access to the mains.
I plan to use a serial packet transmission to get the brightness
information to each LED. I am currently designing the receive (using
verilog and most likely a Xilinx CPLD for the packet receive and
pulse width modulation to perform the dimming (LED brightness control
is said to be the best then done by pulse width modulation). That
part of the project I see no problem. There is already a lighting
control protocol, called DMX, for which I have already created
verilog HDL for implementation.
The areas that I need help in is finding and assembling a suitable
main processor. First of all, I need some serial bus (something like
RS485) that can have one transmitter driving about 100 receivers. I
know that RS485 is limited to 32 receivers. Can this be expanded? Is
there another serial interface that can have a single transmitter drive
up to 100 receivers? I am only concerned about one way; there is
no feedback required from the receivers (lamps) back to the
main processor. From the looks of things; I will need three or
four such serial drivers on my main processor unit.
Also, I am looking for a main processor unit (most likely as SMB) that
can do the following things:
Be able to drive up to 1500 individual light levels (0-255 steps of
brightness for each one) at a rate so that each one can be refreshed
once every 60 seconds.
Would have either a wireless or wired network port so that I can
access it to program it and make changes to the software.
It must run Linux; use open source tools and software; I don't want
to have to to $X,000's for commerical software. Preferably, I would
like to see it run/be programmed from Debian/Ubunto/Mepis or some
other Debian derivitive.
Either have, or can accomodate a module with an FPGA; at some point,
I want to incorporate an Audio A/D and audio signal analysis. I would
like to drive my display on music; both on amplitude and frequency
I have done some looking through Linuxdevices.com. I do see a wide
variety of devices there, but I cant seem to find anything with
multiple RS485 interfaces. Perhaps this is asking for a bit much
and I will have to design a suitable I/O driver (again, using CPLD's
What I don't want are disk drives, fancy graphcis controlers, fancy
audio drivers (I am doing a/d; not d/a and driving sound); CD drives;
SATA / IDE ports; whatever. Many of the devices seem to come with these
as a default. All I need would be something to drive a small (perhaps
something like a 4" by 4" inch) touch screen.
It seems to me that PC/104 is a standard for these SBC's. Is this the
case? I also see something called EBX.
Have any of you have undergone a project similar to this? Have any
one of you been particularly happy/unhappy with any paticular vendor
or device for a project similar in scope as this one?
I am willing to spend up to $1000 for the main processor, if that
is what it takes. I am a bit confused at the diversity of pricing.
I see stuff from GAO Engineering, for example, that is priced around
$1500 for something that does not look that much better than others
I see for around $100 to $200.
I am willing to do all of the programming myself (or look for other
open source programming to use). If I need to come up with a daughtor
board, I am willing to do the design myself provided I get open enough
documentation on interfacing with the SBC.
If this is not the currect forum for this kind of question, perhaps
can someone please refer me to where I can go with these types of
Thank you all for your help.