Hello all,
We're keen to drive a few thousand LEDs at those specs...
Either streaming video real time from a computer (Jitter?) to an Arduino based LED array and/or having the video info onboard the Arduino(s) it/themselves.
So, ideally we'd like to have an array of thousands of 24bit tricolor LEDs update at 25fps+ all in parallel sync and have full brightness for the complete frame cycle with no data/frequency/brightness tradeoff schemes.
We understand that its probably not going to happen so we can trade off some specs to get it into the realm of 'can be done'
Some factors we'd like to keep as close to ideal:
LED Brightness - we cant be losing brightness to schemes that some LED array systems I've found seem to use to keep frame rates high (e.g. Peggy 2 - where the LEDs are only on when they are being updated, then off the rest of the time) - if we request full 255/255/255 RGB brightness, this needs to be close to full LED brightness for the complete frame period
Frame rate - it needs to stay within the realm of human persistence of vision, this is hard to put numbers on as there are more factors involved than just frame rate but lets say 15fps + for now.
Factors which we're happier to reduce if need be:
Colour bit depth - 24 bit tricolour is a lot of data compared with 5bit mono LEDs for instance, almost a fifth of the data throughput - temporal resolution is a more important than level dynamics for now so we can work with nice warm toned mono LEDs if need be.
Resolution - I know I said thousands but maybe we're being unrealistic - tell us the range of numbers you think we can work with and we can likely change the concept to work within the resolutions we can make work. 1000 ? 10,000 ? 125 ? This might seem a bit arbitrary of us but the project has a few workable applications, some can work well with lower LED counts. (Power is something we're expecting to be considerable, no worries there however)
Temporal interlacing/progressive schemes - In keeping 15fps+ and keeping brightness full, we are happy to work with temporal/spatial fiddling to assist in creating the affect of POV and thereby potentially reducing data rate bottlenecks - lets say we had 3000 LEDS - they'd all have to update within 66.7mS. We could deal with with updating in a serial fashion, one after another at a rate of 66.7/3000 mS each - we could interlace them like PAL, if it worked well then maybe the frame rate could be reduced a little further.
Real time capability - we don't need to be sending realtime footage to the LEDs. If there is a way we can turn the video data into a trimmed down 'nothing but the essentials' data stream for the arduino boards, we can deal with that. Even storing a loop of data on board and forgetting the PC ??? If this is possible, how long a loop of data could be worked with ?
More than one Arduino is fine if need be (likely?) - within reasonable costs, as many as we need.
We're pretty much making a large LED video screen that you see in dvertising and large sports venues - how could an arduino fit in here ?