8,064 leds ,8,064 bits per frame max,3 frames per second,24192 per second
So that gives you a starting point for considering the basic feasibility of different approaches. You need to be able to transfer a bit data at about 24 kb/s. Your actual rate will need to be a bit higher because you are going to have some kind of control signals that will need to be mixed in, but it gives you something to work with.8,064 leds ,8,064 bits per frame max,3 frames per second,24192 per second
Do you have some of these 8x8 modules to play with right now? Since you aren't designing the modules, you need to comply with their interface specifications instead of being able to design the interface to comply with how you want to interface to them. So what kind of interface do they have? Serial, parallel? So you send streaming data to them or do you address individual pixels? Are they designed to pass through signals from one module to another all the way down an arbitrarily long line of modules? If so, how?I can get all the 8x8 matrices i need for around 100 dollars ,they come preassembled in a matrix structure,And as far as budget goes i have 560 dollars and i have a 6 month timeline
You can get them on dhgate for 50 cents each if you buy 100 of themWhere are you getting those matrices? You need 125 and the best price I see is Seeed's at 2.95 each. Be a little wary of Chinese quality. In that volume, expect a moderately high failure rate (at least 10%, maybe worse).
I took a look at the cheap ones on that site and they all appear to have zero smarts - just a simple row/col common cathode set up so a scanning scheme would be needed.Do you have some of these 8x8 modules to play with right now? Since you aren't designing the modules, you need to comply with their interface specifications instead of being able to design the interface to comply with how you want to interface to them. So what kind of interface do they have? Serial, parallel? So you send streaming data to them or do you address individual pixels? Are they designed to pass through signals from one module to another all the way down an arbitrarily long line of modules? If so, how?
You need to get really familiar with how to work with these modules before you design a system around them.
I'm a bit suspicious of the quality you should expect at only about 80 cents a module. I'd test them as thoroughly as you can.
Do you know how to interface to a single module? Does each module have it's own memory so that you can turn on a particular LED and then it will stay on until you tell that particular LED to turn off? Or do you need to continuously walk through the array (probably a row at a time) in order to pulse-width module the LEDs?You can connect them together in series and make a much larger matrix ,so i would need to send a x and y signal to single out which ever led i want to turn on
Does each module have it's own memory so that you can turn on a particular LED and then it will stay on until you tell that particular LED to turn off? Or do you need to continuously walk through the array (probably a row at a time) in order to pulse-width module the LEDs? In response to this ,Each module doesnt have its own memory , So its going to use PWM, Im going to use a rasberry pi so it will have enough memory for the buffer.Do you know how to interface to a single module? Does each module have it's own memory so that you can turn on a particular LED and then it will stay on until you tell that particular LED to turn off? Or do you need to continuously walk through the array (probably a row at a time) in order to pulse-width module the LEDs?
Not being able to connect them to make a larger matrix directly is going to significantly increase the complexity and the bandwidth requirements, but the low refresh rate will probably keep it reasonable. You have a 9x14 array of modules. So that means that you can address a unique module pretty simply with a 4-bit row and a 4-bit address. Now you just need to address a particular LED within a module. Probably the best way to do that is to address an entire row each time you want to change the status of one of them. That will require that you keep an image of your display in memory, but that shouldn't be too difficult, depending on how much memory an Arduino has access to. You need about 1 kB of RAM for your display buffer.
You are quickly boxing yourself into a corner by using these modules. If you want to use PWM then you have to drive a particular LED (or group of LEDs) for some amount of time and then turn them off while you go and drive the rest of the groups. The number of groups determines the maximum PWM duty cycle (assuming you don't throw a lot more circuitry at it to provide local buffers). If you have address them singly by giving an individual row and column address to a particular module, then even if you rig it so that your Arduino just has to output a pixel address (which would 13 bits) and nothing more your maximum cycle would be about 0.01%, which is going to be way to dim to see.Each module doesnt have its own memory , So its going to use PWM, Im going to use a rasberry pi so it will have enough memory for the buffer.
Then it comes back to what I said earlier -- you need to get real familiar with how to interface to these modules. For instance, can you drive more than one LED at a time (perhaps an entire row)? You haven't given us any information on the interface of the specific modules you are using, so you need to figure that out (which you need to do the bulk of that anyway, since this is for educational credit).Yeah ,thats exactly it i need it to be hardware based ,what will i need to make the row controller for the 14 modules ,Are file registers going to be necesary?
by Aaron Carman
by Jake Hertz
by Aaron Carman