loading
After making a 8X10 matrix a lot of people asked me about expanding the matrix to some thing bigger, and some wanted to write stuff to the matrix via a PC, so one day I looked at a pile of LEDs that I had leftover from a LED cube projected and I decided to make a bigger matrix with all the things people wanted.

So what are you waiting for? Get those LEDs out and heat up your soldering iron because we are about to make a 24X6 LED matrix! 





Step 1: Getting All The Right Things

So you will need the basic set of tools for this project : a soldering iron, some solder wire, a cutter, a needle nosed plier,some wire, wire striper, and some desoldering tools if you need them.

For the matrix you will:
1. 144 LEDs
2. 24 resistors( The value is determent by the type of LEDs, in my case 91 ohm)
3. 4017 decade counter
4. 6 1KOhm resistors
5. 6 2N3904 transistors
6. A long Perfboard
7. Arduino
8. 3 x 74HC595 shift register
10. some pin headers

Step 2: How it works?

The tricky behind the display is multiplexing and the idea is the same as withe the 8x10 LED matrix: It is basically a way to split information in to little peaces and send it one by one.
this way you can save a lot of pins on the Arduino and keep your program quite simple.

Now this time we have 3 shift registers which multiply the number of outputs and save lots of arduino pins.
Each shift register has 8 outputs and you only need 3 arduino pins to control almost an limited numbers of shift registers.
We also use the 4017 decade counter to scan the rows, and you can scan up to 10 rows with it because you have only 10 outputs but to control it you need only 2 pins.
The 4017 is a very useful chip and it's a good idea to know how to work with it(http://www.doctronics.co.uk/4017.htm)

Like I said the scanning is done with the 4017, by connecting one row at a time to ground and sending the right data via the shift registers to the columns.

Step 3: Schematics

The only thing I didn't specified in the schematics is the value of the current limiting resistors because they change from each type of LEDs, so you will need to calculate them by your self.

Now to calculate the value of the 24 resistors you can use this site : 
http://led.linear1.org/1led.wiz
You should first get some specs on your LEDs, you should know their forward voltage and forward current, you can get this info from the seller. The circuit operates on 5V so your Source voltage is 5V.

Download the original file to see the schematics better.(press the "i" icon in the top left corner of the picture)

I have added a PCB layout of the control board, and i want to thanks Willard2.0 who made this layout and let me use it so thanks a lot mate!

Step 4: Soldering The LEDs

Soldering 144 LEDs in a matrix formation can be a little tricky if you don't have a general idea how.
The last time I soldered a matrix I used lots of little wire jumpers which was a pain to solder, so this time I was a little more creative and came up with this way.

You need to bend the positive lead of the LED down towards the other ones and make a column, and snip off the leads you didn't use and try to make the connections as low as you can get, and you do this to all of the positive leads.
Now the negative leads are connected in a column and thats make soldering tricky because the positive rows are in the way, so you will need to make a 90 degrees bend with the negative lead and make a bridge over the positive row to the next negative lead, and so on to the next LEDs.

Now I will not explain how to solder the shift registers and all the parts because every one has hes own style and methods.

Step 5: Programming The Display

We are almost there, the only thing thats left is the program.
So far I wrote two programs for it that do pretty much the same thing.
I have added the program that gets a word or a sentence from the arduino IDE serial monitor and displays it on the matrix, my code is very basic and may be not the best in the world but it does the work, and you are free to write your own code and modify mine as you wish.

I have added an excel file so you can create your own symbols and characters.
The way it works is like so:
You create the symbol you want  pixel by pixel(don't worry it's very easy) and copy the output line like so - #define {OUTPUT LINE}

I will add in the future a code for animations and a nice game of snake as soon as I have more time on my hands.


 

Step 6: We Are Done!

Congratulations you made yourself a 24x6 matrix and now you can display anything you like on the fly.
Now try to play with it and come up with a new program and a better interface.

Please someone help me out to complete this.
Please send the code for 24*6 matrix that you have explained above. I want to make it
Can I have code for 48*8 matrix thanks in advance
Finished
Is it possible to expand the amount the amount of letters or numbers that i can scroll across the 24x6. I would like to scroll my address for the mailbox. mrebarnas82@gmail.com if anyone has any ideas
hai Syst3mX, how to modify 24x6 to 128x6, if you can help me to modify the source code??<br>let me know via email: nurhadiahmad88@gmail.com, thanks and success for you
<p>GREEN LED</p>
<p>CODE NOT WORK</p>
<p>How do I use the serial monitor to display typed text?</p>
<p>What type of LEDs did you use?</p>
<p>not work properly later like <a href="http://www.instructables.com/member/Miggyparas15" rel="nofollow">Miggyparas15</a>made it! please give me schematic and code</p>
<p>What would need to change in the code if a 24x10 Matrix was constructed instead of 24x6? </p>
<p>All of these variables below need to be changed to 10. </p><p>[6] r&lt;6 p&lt;6 y&lt;6 i == 6 h&lt;6 k&lt;6</p>
<p>Could the same code be used if I were to add an additional 16 columns to the 24? I would add an additional 2 595 shift registers and cascade the date from the first to the next allowing 40 total outputs or 40 total LED anode columns. I would imagine something in the FOR loop would need to change. Any comments would be great! :)</p><p>-Sky</p>
<p>I am afraid his code is limited to 24 columns, however I have been able to modify, his code to work with more shift registers. Send an email to gplyr8@gmail.com</p>
<p>hey I made it 24 x 8! but I seem to have encountered some problems.. only columns of led show up with no visible movements or animations. Do you know what might have caused this problem? I tested all my leds after soldering, all works fine. btw, I'm using the loop code. and great instructable though.</p>
<p>Could you send me some photos, of your shift registers, the decade counter, and your Arduino hookup, I will be glad to see if I can help you. My email is gplyr8@gmail.com</p>
<p>I'm using an arduino UNO and forgive my circuitry skills..I'm still new to this. could it be the decade counter or shift register fried up? </p>
<p>Hello guys, Can anybody explains me the code ?</p>
How can i use this matrix to make a clock(12hr) please give the code
<p>excuse me. if this running text expanded to 48x6 with just adding more register is possible?</p><p>and the matrix module is needed a zener to secure led from broken?</p><p>thanks</p>
<p>I have a code that has been modified to recognize the additional shift registers for the 48 x 6 display and would be happy to share it with you, if you contact me at my email address; gplyr8@gmail.com. Also I have not found the need for the zenerk, but you will need to add some small capacitance capacitors to your ground on the shift registers, to avoid trouble. I also have an updated schematic for the display.</p>
<p>I know this is a bit old but do you still have the code for a 48 x 6 display? I'm hoping to adapt it to a 32 x 8 display that I've made. My email is: Sharon97Q@gmail.com. Thank you kindly.</p>
<p>No problem. I sent it to you.</p>
<p>thanks for the information and instruction. it's helpful. now i'm will develop it to 48x6 running text.</p><p>maybe i'm need to exploring the variation of the animating movement of text,hehe</p>
<p>actually, I'm still onworking progress on board. i made the PCB based from 24x6 with additional expansion for 24 lines. </p><p>does it will be ok?</p><p>oh, plus, the board that i will use is arduino nano. is it capable enough for the display?</p>
<p>Not sure about nano, but it should be able to handle it.</p>
<p>In the code the words &quot;byte&quot;, &quot;bite&quot; and &quot;bit&quot; are all used in the comments. Does &quot;bite&quot; refer to bytes or bits? </p>
<p>I made it, the hardware design is solid, but im running into problems with the code. im using an arduino uno, and when I upload the WORKS file i get nothing... When i use the LOOPING file, my array wont get larger than 8, im just adding letters and increasing the array size. any ideas what I might be doing wrong? The attached immage says &quot;DONE&quot; camara frame rate is just too fast...</p>
<p>Figgured it out, when you change the array size you also need to go down to the void and change the size there. I created a var that way there isnt 2 changes.</p>
Hi i have made the project buts instead of letters i am getting square boxes. I am not able to find the solution please someone help me. Please!!
<p>Thank you Syst3mX , i made it :)</p>
<p>can you please send me the code !!</p><p>mashael.h.alharbi@gmail.com</p>
I want to build 6x24 led display. But I don't know how to build Please help me. style_1992@inbox.ru
Can someone tell me where to find a large enough perfboard? I can only find small ones online
<p>I couldn't find a perfboard online either. However, I acquired mine from a local electronics store so try looking up some around your areas and call to see if they have the right size.</p>
<p>hey, this might fry the arduino board. what if all leds is in high state. how can arduino handle that too much current?</p>
<p>Using an External supply will do the trick. Check my schematic and i have used 2 amps 12v to drive LEDs with out any issues. Depending on the current one can select appropriate NPN transistors and i used TIP 31 so i can use in the future for bigger loads.</p>
<p>how do we provide the power supply ??</p>
<p>yes. i'm wondering, this might fry the arduino board. what if all leds is in high state. how can arduino handle that too much current?</p>
<p>Anyone have a time estimate on about how long this takes? </p><p>Thanks</p>
<p>I don't know if anyone is still here, but does anyone have code for either a game like snake or an animation? Thanks! Send it to thecomix01@gmail.com</p>
<p>Great project! Can someone please send the improved code for the 24*6 to me as well? sarcho77@gmail.com</p>
<p>Can someone please send the improved code for the 24*6? And does anyone have got some good ideas to add extra's to the matrix?</p><p>kevinveijden@gmail.com</p>
<p>Can you put in this code č,ć,Đđ,š and ž and send me on email: </p><p> zadosadnestvari@gmail.com I need it for my school project. Thank you.</p>
<p>Hello, I'm trying to make a 48*8 and 56*8 scrolling LED matrix. Could anyone provide both of the code please. My e-mail is constantine_9530@yahoo.com. </p>
If you are using low side row and high side column using 74hc595 for both than i could help you.
<p>hello sharmapukar ! could u plz send me that code and ur hardware part .thank you</p><p>my email :arsysimbi@gmail.com</p>
<p>i need code 8*24 plzz help (y) </p>
<p>i need code 10*24 plzz help </p><p>elamraniamine9@gmail.com </p>

About This Instructable

598,512views

968favorites

License:

Bio: Electronics and LEDs what can be better ?! :D
More by Syst3mX:Make a Desktop Tamagotchi LED Binary Calculator Make a 24X6 LED matrix 
Add instructable to: