Easy LED Matrix Control: Arduino and 8x8 1088AS Matrix Multiplexing

  Рет қаралды 82,297

Mario's Ideas

Mario's Ideas

Күн бұрын

Пікірлер: 108
@marcolanza-yatta7003
@marcolanza-yatta7003 2 жыл бұрын
Thank you Mario for the inspiration. I tried another solution because I didn't understood the need of the "-abs(...)" part of code and I have also two problems with your code: the text was mirrored (as other said) and I didn't want to turn the matrix 90° to see the text in the right way. So I share here my solution: .... void loop() { movecol = 0; while(movecol
@richardjacobse
@richardjacobse 3 жыл бұрын
Tip: when looping trough the columns first SelectRow(0) which effectively deselects all rows then set the columns and after that select the actual row. This will prevent the pixels 'bleeding' from the previous row
@marios_ideas
@marios_ideas 3 жыл бұрын
Thanks for the tip. I know exatly what you mean by bleeding. I will connect the components again and see what differenence it makes:)
@ayeletfadlon9051
@ayeletfadlon9051 2 жыл бұрын
You are a genious! Thank you so much
@christophscharpf6169
@christophscharpf6169 2 жыл бұрын
My man with the good ideas😄
@xert_13
@xert_13 3 жыл бұрын
Finally a video that got my LED matrix to work, Thank You......
@marios_ideas
@marios_ideas 3 жыл бұрын
Great :) If it was off help don't forget to like it:)
@SidTheGr8
@SidTheGr8 3 жыл бұрын
You are amazing, I could not find any resource that helped me understand this concept, then I found this video :)
@marios_ideas
@marios_ideas 3 жыл бұрын
Glad you liked it!
@Matrix_Tate1
@Matrix_Tate1 4 ай бұрын
@@marios_ideas please explain c1 in se led active in row function
@RaahimAzfar
@RaahimAzfar 7 ай бұрын
this is the only video that works. if you don't have 2 breadboards try to get 16 dupont wires and connect them
@hamagui7120
@hamagui7120 4 жыл бұрын
Hi, a very good and clear explanation video. You are using common cathode matrix, but the circuit diagram at 0:36 , is a common anode matrix, right?
@marios_ideas
@marios_ideas 4 жыл бұрын
Rats ... missed that. you are right. Thanks for spotting this.
@alheeley
@alheeley 3 жыл бұрын
Very well explained - great help. NB: You have both r6 and r5 going to d7 - r5 needs to go to d6 ;)
@marios_ideas
@marios_ideas 3 жыл бұрын
Can you point to the exact time in the video.
@alheeley
@alheeley 3 жыл бұрын
@@marios_ideas I see now its already been commented on below, its at 3:48 to 4:04. NB: Im searching for code for a mini word clock using this size LED matrix, Arduino controller , RTC breakout board and no multiplexer if can assist?
@marios_ideas
@marios_ideas 3 жыл бұрын
@@alheeley Updated the video description. Thanks for spotting this.
@marios_ideas
@marios_ideas 3 жыл бұрын
This should be straight forward. You either stack 4 MAX7219 with the matrixes yourself or you can buy the modulesready to use. And then look at the Parola library. It is meant for scrolling the text but I think if you look at the library examples and figure out how to just display the content without writing low level complicated code. Then you just create string out of RTC output and send it to the matrixes. Alternatvely you can wait few weeks as this is one of the videos I am planning to do in the neerer future
@alheeley
@alheeley 3 жыл бұрын
@@marios_ideas But any way of tackling it with no multiplexer? No Maxx chip?
@JiffyDealer
@JiffyDealer 7 ай бұрын
Thanks! Why does row1 start at R2? And why do columns use hex after 13?
@debsarkar4893
@debsarkar4893 10 ай бұрын
Bro I was able to use ur logic to make my own code after looking at ur code with a raspberry Pi and two 74hc595n ICs to control a led matrix in c++ with pigpio Library. Thank you so much bro❤😊
@fuzion5467
@fuzion5467 2 ай бұрын
Thank you Mario. But our Matrix is in another castle!
@tirthvora5061
@tirthvora5061 2 жыл бұрын
this is the perfect thing I was looking for.
@marios_ideas
@marios_ideas 2 жыл бұрын
Glad you found it useful:)
@luffy27272727
@luffy27272727 2 жыл бұрын
this is the same concept of how letters, symbols or images were displayed on screens when commodore was used...... or on modern monitor screens when you press any key on keyboard?
@videocloud6722
@videocloud6722 Жыл бұрын
Thanks Mario, very helpful. this video inspired me, to create snake with the 8x8 led matrix.
@marios_ideas
@marios_ideas Жыл бұрын
Glad this video was of help:)
@Spytech334
@Spytech334 7 ай бұрын
Hi when i tried 1 +ve and 1-ve 3 to 4 led was on.i think my metrix pin out is not similar as yours can you do another metrix pin out as led metrix 1088BS
@alexanderbagus9106
@alexanderbagus9106 3 жыл бұрын
Thanx for the explaination, Mario... very clear...
@marios_ideas
@marios_ideas 3 жыл бұрын
Glad it was helpful!
@diamony123
@diamony123 Жыл бұрын
4:08 how would you map this exact 16 pin setup to a Pot is what i would like to know 4:08
@marios_ideas
@marios_ideas Жыл бұрын
I would be quite complex. you would connect the rows of both matrixes together and connect them to 8 pins of Arduino. And then connect all 16 columns to Arduino 16 pins. so you need 24 pins. I think in this case Arduino Uno and Nano are out of the question and you need Arduino Mega. It is easier with the MAX7216 :)
@marios_ideas
@marios_ideas Жыл бұрын
In this video you have the exact layout of columns from C1 to C8 so If you add another the columns of this display become C9-16. You connect rows of both displays so R1 is connected to R9 R2 to R9 and so on. But thie you ave to program multiplexing accross both matrixes. So the code would be different
@diamony123
@diamony123 Жыл бұрын
Thanks, i will be using omega and the 16 pins, my matrix is home made using one color leds . I just need your test code you did to see if all led is working to be tied or map to a Pot . The sequence will be control with the Pot . Not automatic as demonstrated here
@kusaiabuzed5534
@kusaiabuzed5534 3 жыл бұрын
thanks for your explanation i understand a little bet but may point is split into tow things first one why there's loop x
@marios_ideas
@marios_ideas 3 жыл бұрын
The loop x5 is for persistance of vision. You display a current 8x8 part of the text with the two inner loops . If you did not have the thrird loop the loop function would complete and you would go to execute loop function with the changed position. That would mean that the text would scroll way to quickly and you would not see the right effect. With that extra loop you are displaying each position 5 times slowing down the scol. You could even make this 5 a variable changed with potentiometer and theis way you can control the speed of scrolling. If it was e.g. 7 the scrolling would be slower
@fjalarsigurdarson4862
@fjalarsigurdarson4862 3 жыл бұрын
At min 4:04 you say R5 to D7 - but at 3:48 you already said R6 to D7 ...?
@marios_ideas
@marios_ideas 3 жыл бұрын
My bad ... Doing a video like that is not that difficult to make a mistake like this. You moste often notice it when video is already cut and uploaded. So not the firs mistake and probably not the last one.Please check the code and there you will find actual connectivity data .
@fjalarsigurdarson4862
@fjalarsigurdarson4862 3 жыл бұрын
@@marios_ideas :-) No problem - I just followed the video closely and saw that there was one spot you never mentioned so I stuck it in there. I never got the program to upload to the board so I had to go another way anyway.
@duartesilva3728
@duartesilva3728 3 жыл бұрын
Amazing! Thanks so mucth i learn very muthc but how can make efects for exmple the move the somthing in his body or pacman open and close the mouth?
@marios_ideas
@marios_ideas 3 жыл бұрын
Well then you need to have three or four sligtly different 8x8 maps that make the animation and display them one by one. Just like you would do any stop motion animation. If you liked this video please give it a like. It hals me a lot
@marios_ideas
@marios_ideas 3 жыл бұрын
Please check a space invaders animation I did in my different video It was not for 8x8 led matrix but the concept is the same. kzbin.info/www/bejne/jJOoeJmQfs-jmsk
@josepcalderon1087
@josepcalderon1087 9 ай бұрын
Hi, excelent video. When i tried the text scrolling, the text scroll to the other direction (move right to left). Why this is happening?
@marios_ideas
@marios_ideas 9 ай бұрын
It maybe because of the different pinout of max7219 module.
@kiwinesss
@kiwinesss 4 жыл бұрын
Wow fantastic! Thank you. Would it be possible to use your file for the 3D print?
@kiwinesss
@kiwinesss 4 жыл бұрын
Subscriber :)
@marios_ideas
@marios_ideas 4 жыл бұрын
Sure. I uploaded STL file here create.arduino.cc/projecthub/mdraber/controlling-8x8-led-matrix-without-drivers-libraries-585371?ref=user&ref_id=1474727&offset=4 under CUSTOM PARTS AND ENCLOSURES. Let me knwo if you could download it?
@kiwinesss
@kiwinesss 4 жыл бұрын
@@marios_ideas Perfect, thank you so much. It downloaded and opened in Cura just fine :)
@mikhailgrigoryev5757
@mikhailgrigoryev5757 3 жыл бұрын
Looking for some minor advice. I am working on a matrix project where I plan to create my own matrix, entirely. Obviously the concept is the same. I then plan to use the matrix on a project I am working on and am looking for an Arduino alternative. Reason being the project does not require the full functionality of the Arduino, just the clock, memory, and cpu functions. I also plan to mass produce this project (To a minor extent) with that being said I need a budget alternative to the Arduino, looking for a variation of something opensource that i could base my motherboard off of. Any tips or idea? Thanks in advance.
@marios_ideas
@marios_ideas 3 жыл бұрын
ATtiny85? It has just few pins costs below 1EUR and is Arduino compatible
@mikhailgrigoryev5757
@mikhailgrigoryev5757 3 жыл бұрын
@@marios_ideas THAT'S PERFECT, Thank you!!!
@alinaqvi2902
@alinaqvi2902 6 ай бұрын
How does the displaying of leds speed up over time in the second example?
@marios_ideas
@marios_ideas 6 ай бұрын
By decreasing the delay. I have not watch this video in a long time. But I am fairly certain there is delay(variable); line anad the variable is set to a certain value and the it is decreased so the delay inbetween frames gets smaller
@AlexandreLopez1999
@AlexandreLopez1999 4 жыл бұрын
Hello! super clear video, thank you very much. I'm a bit confused, did you mean to write C1, C1, C1... in the definition of the bottom function at 7:15 ? Because C1, C2, C3... i thought was what you meant, but im not sure. Otherwise very clear video!
@marios_ideas
@marios_ideas 4 жыл бұрын
Of course. Thanks for spotting this. I will add info in the comment section. If you go to the code link you will see that there everthing is ok.
@chidiebube3657
@chidiebube3657 2 жыл бұрын
Hi, really love your project. how do I generate my own array of bits to display the text of my choice. thanks
@marios_ideas
@marios_ideas 2 жыл бұрын
The way I did it here is very time consuming. But check my other video. kzbin.info/www/bejne/pYund5tvarmnlac
@desterward
@desterward Жыл бұрын
hi Mario. Nice video. How do you do the diffusion panel?
@marios_ideas
@marios_ideas Жыл бұрын
I have a 3d printer. Design it in Tinkercad
@desterward
@desterward Жыл бұрын
@@marios_ideas Thank you! and for the explanation in the video.
@graemebrumfitt6668
@graemebrumfitt6668 2 жыл бұрын
Cheers Mario Dude! TFS, GB :)
@marios_ideas
@marios_ideas 2 жыл бұрын
Thanks:)
@uhdrhd
@uhdrhd Жыл бұрын
Hello, for me it worked out that i had to swap the highs and lows. Otherwise it worked perfectly!thanks
@grenfish
@grenfish 2 жыл бұрын
09:58 why is there polish? (im from poland btw)
@marios_ideas
@marios_ideas 2 жыл бұрын
Moźe dlatego że też jestem Polakiem:)
@grenfish
@grenfish 2 жыл бұрын
@@marios_ideas to fajnie :) świetny poradnik, nawet dla początkujących
@ΣπυροςΜ-ν3σ
@ΣπυροςΜ-ν3σ 3 жыл бұрын
I don't understand something though. You have not connected anything to a ground pin. How can current flow? Or am I missing something?
@marios_ideas
@marios_ideas 3 жыл бұрын
If you select a row and send Low signal to it with Select row function that connects all cathodes of leds in that row to ground and then if you select a column by sending High signal to it meaning all anodes are connected to 5 v. Then for LED which is in place that this colum and row crossess electricity can frlow and it lits
@Matrix_Tate1
@Matrix_Tate1 4 ай бұрын
i am not understanding C1 in set led active row function
@GorkemYildirim
@GorkemYildirim 4 жыл бұрын
Now I understand thanks to you!
@marios_ideas
@marios_ideas 4 жыл бұрын
You are welcome:)
@mohammedkamran8559
@mohammedkamran8559 4 жыл бұрын
How can I connect 26 buttons and make a keyboard,like each button should trigger different LEDs to display different letter patterns?
@marios_ideas
@marios_ideas 4 жыл бұрын
that seems a bit too complicated and you would need. not sure why you need 26 buttons
@mohammedkamran8559
@mohammedkamran8559 4 жыл бұрын
@@marios_ideas I mean it's more accurate if there are separate buttons for letters,like can u just tell me the extra components needed to implement it,I'll try to figure out the rest😄😄, thanks for ur reply 👍🏻
@marios_ideas
@marios_ideas 4 жыл бұрын
​ @Mohammed Kamran ​ @Mohammed Kamran This will be crazy amount of work. I would simplyfy this by using something like this kzbin.info/www/bejne/f6bIlp5unbufbqc to type the message. Not sure you want to type on the display in real time or prepare the static message to display
@mohammedkamran8559
@mohammedkamran8559 4 жыл бұрын
@@marios_ideas alright I'll check it out,thanks for ur help😄😄
@gibi1269
@gibi1269 2 жыл бұрын
Why if we choose row 1 & column 1, R1 is low and C1 is high, shouldn't both of them be high, could someone explain it please?
@marios_ideas
@marios_ideas 2 жыл бұрын
The electricity flows from positive (+ or 5V) to Negative (- or GND). This is why to activate the row we send low and to activate column we send HIGH
@gibi1269
@gibi1269 2 жыл бұрын
@@marios_ideas thanks!
@kusaiabuzed5534
@kusaiabuzed5534 3 жыл бұрын
set_led_in_active_row(i+1,marios_ideas [j] [(i+position)+abs((i+position)/54)*54]); firs of all i want to thank you about the content it was useful for me and taught me the way of matrices are working but i still got problem with understanding the way of scrolling text and main thing that i didn't understanding is this line that i mention it in the top how did you dealing with columns and why there's a subtraction mark ( - )between [ (i + position )and ( i + position / 54 )* 54] i will be grateful if you explain it for me thanks
@marios_ideas
@marios_ideas 3 жыл бұрын
It is fairly simple. You always display 8x8 leds this in the video is shown by moving yellow farme if I am not mistaken. The exact 8 columns to be displayed is selected by variable position. It indicates which is the first column to display and then 7 subsequent columns are displayed as well. When the loop function is executed we increase the position by one so next time around we display 8 columns shifted by one to the right. So this is all great as long as position is within 54 columns of the Mario's Ideas bitmap. Loop is executed indefinetly so soon you may look at position being equal e.g to 1000. Then we are dividing the position by 54 and take the absolute value from that division and then multiply it by 54 and substract it from position. This way we remove equivalent of all 54 led cycles that happened before and this way we achieve the smooth transition so the text starts all over again. Did I make myself clear?
@marios_ideas
@marios_ideas 3 жыл бұрын
Don't forget to like the video if you enjoyed it. It helps me a lot with youtube algorithm. This video also shows doing things a bit harder way. Please check also this video kzbin.info/www/bejne/iXjNgmB7aLp3baN4on't forget to like the video if you enjoyed it. It helps me a lot with youtube algorithm. This video also shows doing things a bit harder way. Please check also this video kzbin.info/www/bejne/iXjNgmB7aLp3baM. I will also in the future do a video on parola library which is dedicated to scrolling text on multiple matrixes like this one
@ahmadlotfy910
@ahmadlotfy910 2 жыл бұрын
Hello Mario, thanks very much for this nice video. but I want to ask about SelectRow(j+1); and Set_LED_in_Active_Row(i+1 ,Cat[j][i]); why j+1 and i+1 I didn't got this, would you please identify it for me. thanks for your effort.
@abbasabbas-np1ct
@abbasabbas-np1ct 2 жыл бұрын
it's because the i and j variables begin at the value of 0 at the beginning of the for loop and when they reach 7 which is < 8 the loop ends so basically their values are from 0 to 7 the +1 is to enter a number from 1 to 8
@robiramandhani6149
@robiramandhani6149 4 жыл бұрын
Thanks, Mr. Mario
@marios_ideas
@marios_ideas 4 жыл бұрын
Glad you liked it
@aniket.debnath
@aniket.debnath 2 жыл бұрын
How do i convert a custom text into the integer array?
@marios_ideas
@marios_ideas 2 жыл бұрын
The way I did it here is very time consuming. But check my other video. kzbin.info/www/bejne/pYund5tvarmnlac
@ernestorivero9909
@ernestorivero9909 3 жыл бұрын
Buen vídeo lo entendí bien a pesar de q no hablo ingles
@marios_ideas
@marios_ideas 2 жыл бұрын
Thx:)Give video a like if you enjoyed it. It helps to grow my channel
@itz_abhinavv
@itz_abhinavv 2 жыл бұрын
Please give me last code please 🥺
@marios_ideas
@marios_ideas 2 жыл бұрын
The link to the code is in video description
@itz_abhinavv
@itz_abhinavv 2 жыл бұрын
@@marios_ideas yes but last program isn't available 🥺 please give me sir
@marios_ideas
@marios_ideas 2 жыл бұрын
The subscribe one? Unfortunately i did not save this Design
@dror-krief
@dror-krief 6 ай бұрын
thank you
@hokazshinitzu9042
@hokazshinitzu9042 3 жыл бұрын
thanks
@marios_ideas
@marios_ideas 3 жыл бұрын
you are welcome;)
@hishamalhajalyable
@hishamalhajalyable Жыл бұрын
Thx
@marios_ideas
@marios_ideas Жыл бұрын
My pleasure:) like and subscribe to my channal. Also consider supporting it.
@MizzardNote11s-yx1cj
@MizzardNote11s-yx1cj 7 ай бұрын
Be careful, this circuit is wrong, you need to put drivers for both the positive and negative poles of the LEDs with a resistor to avoid overloading the microcontroller with current... and then there is a problem in the software called "led ghosting" where some leds are turned on with lower brightness when they should be turned off.
@marios_ideas
@marios_ideas 7 ай бұрын
This is a very old video. I am aware of those issues. Isn’t that problem also called “led bleeding”?
@iml404
@iml404 Жыл бұрын
Автор, тебе нужно не видео для ютуба записывать а для начала научиться не писать говнокод
@marios_ideas
@marios_ideas Жыл бұрын
Give me the link to your code, I will start there:)
@iml404
@iml404 Жыл бұрын
@@marios_ideas «запахи кода» - можешь начать с этого
@code._learning
@code._learning Жыл бұрын
thanks
@marios_ideas
@marios_ideas Жыл бұрын
You're welcome.
How to control 8x8 dot Matrix with MAX7219 and Arduino
10:55
Mario's Ideas
Рет қаралды 51 М.
8x8 LED Matrix for Arduino
13:39
0612 TV w/ NERDfirst
Рет қаралды 293 М.
Чистка воды совком от денег
00:32
FD Vasya
Рет қаралды 6 МЛН
小路飞和小丑也太帅了#家庭#搞笑 #funny #小丑 #cosplay
00:13
家庭搞笑日记
Рет қаралды 17 МЛН
It’s all not real
00:15
V.A. show / Магика
Рет қаралды 13 МЛН
MAX7219 LED multiplexing tutorial
13:26
FriendlyWire
Рет қаралды 42 М.
3 engineers race to design a PCB in 2 hours | Design Battle
11:50
Predictable Designs
Рет қаралды 472 М.
Make Your Own LED Matrix !
7:06
NematicsLab
Рет қаралды 657 М.
How to make a 16x16x16 LED CUBE at home with Arduino platform
20:09
Malt Whiskey
Рет қаралды 4,4 МЛН
Make a TINY Arduino Drone with FPV Camera - Will It Fly?
20:26
Max Imagination
Рет қаралды 1,4 МЛН
I tried the Cheapest Arduino Alternative (that Nobody heard of)
13:31
Controlling a BIG LED Matrix?! How Shift Registers work! || EB#39
12:33
Run an 8x8 LED Matrix using 3 pins!
18:06
0612 TV w/ NERDfirst
Рет қаралды 118 М.