Arduino LED table demo and pict.
HTML-код
- Опубликовано: 16 сен 2024
- A better video demo of our Arduino LED table project.
-
While you are here, consider checking out my latest project, Webcam Plus, a free iOS app that lets you use your iPhone as a 1080p webcam for your Mac.
You can find it here: webcamplus.app
So rad! I bet that's a killer talking piece when you have guests
This is incredible! When I first saw the lit up blocks, I thought to myself 'oh man, you could totally make them move and play tetris!'. Then you sir delivered like never before. Good show!
Love how he used the original tetris theme
Nice project! Really wish you had a tutorial on it, would love to do something similar.
WHAT THE FUCK MAN?! WHY CAN'T I DO COOL SHIT LIKE THAT!
anton adamson because awesome things cost monies
julian lujan money, time, knowledge, and skill
+Meccarox Patience and passion to get through the debug stage :P
Ni Yao haha true
phrase of the year
You are correct! The arduino does not have enough outputs, which means that you have to use some sort of MUX :P The key here is to cycle over the different LED's turning them on and off one at a time. I use one led driver/16 LED's which means that every LED is only turned on 1/16 of the time, but if you cycle them fast enough your eyes wont notice it! I hope that answers your question. And also since i use 3 LED's in every square (Red/Green/blue) you have to divide the time by 3...
i thought at the beggining: wow this guy wasted a ton of time making such an elaborate table that just lights up in random patterns.
end: holy crap this is incredible!
Well you are correct in a way. I use 3 transistors (one for each color) that I feed to the LED's. As long as you make sure that only one of them can be turned "on" at the same time (by hardware or code) you'll be fine. I think I mentioned this in another post, but the transistors are connected to the R/B/G-powerlines of the whole table. So I would first turn on the red power for the whole table and then go through all leds and set the brightness (PWM), then switch to green an do the same etc..
Wow, freakin awesome! The mario and tetris demo was crazy too, you have the sound effects and everything playing as well. I would like to learn how to multiplex LED's like this someday with my arduinos, but what I tried to find out about it for learning how it is done was really confusing. Great job!
Amazing. Tetris on a tabletop.
The super mario made me giggle, but it's still awesome.
YOU EVEN PROGRAMMED MARIO INTO IT GENIUS!!!!! :D
pixel kam hai mario game ke liye .
WohWohWeeWah!!. Sweet build! I love the look of how each block/pixel is lit. It's got that perfect candy like shine.
Fantastic... I got to build a tetris / snake table now...!
Which micro controller did you use? Arduino, Rasberry pi?
Did you write the code yourself?
Thanks. I used two Arduinos, one for controling the LED's and one for running the applications.
i could see so many possibilities in your game of tetris that would make things easier
the search is finally over, I found someone who suck at tetris more than I do! :)
You're forgetting something: Tto achieve that increase in color depth one needs only 4*3 more bits per pixel and he achieves many many times more the color depth.
After that you can do some calculations to find out that 1024 x 768 @8bpp @60fps needs something like 141.557.760bps data transfer (little over 140 Mbps).
But when the screen is only 10x16 @12bpp @60fps the amount of data needs for 60fps is 43.200 bps (little more than 43 kilobytes per second) even at 12bpp color depth.
A very ambitious and cool project. Fantastic creativity. Thank you for sharing it.
Awesome 16x10 graphics! Can't wait until a high res display comes out of this!
I'm kidding of course. It's an awesome project. I wish I had the time to do this sort of thing.
I liked your project so much. Do you sell the kit?
Pretty incredible for the limited power of an Arduino. Nice work!
Well in order to display the different colors you have to have 3 LED's in every square (red, green and blue), but they are all in the same "casing" if you know what I mean. It is like a 3 in 1 LED. Of course, you have to power each color individualy and, as I said before, they can only be turned on once at a time.
I agree this is loads cooler than just laying a TV on it's back...
When you think to yourself, 'Ooh, maybe it might be cool looking to stick some flashing led lights making patterns under my glass table, I wonder if RUclips might have a video of someone doing something like that' then you find stuff like this and think 'I'm a total amateur'.
i lost it when mario came on...
+Alan ikr
This is cool, but imagine if you quadrupled the resolution. you could get so many more effects, and allow for more varieties of games on it.
did you see the rat's nest of wires at the beginning? I'm guessing that this much processing is stretching the limits of those display chips already! xD
Ryan Jensen You could make a simpler one these days using WS2812b integrated 5050 LEDs, only one wire from the Arduino to draw on every LED (Look up Neopixels on Adafruit, they're super useful for this kind of thing)
Buy a TV if you want higher resolution.
Imagine you are asked: - What are you playing?
And you say, - on the table. :)
SHUT UP AND TAKE MY MONEY
Looks great! This would be perfect for the Breakout game.
I run the games on a computer and send the info via a serial connection = no need for syncing.
As you can see on the pictures I have two arduino's.
The function of the first arduino is to control/cycle/sync the LED's to adjust their color/brightness. That is it's only task.
For the second arduino I have written a syntax that I use when communicating with it over the serial connection. The second arduino will then pass that information about the LED colors over to the first arduino via I2C....
this is an awesome table! its amazing that it has games built in
Ah... harmless typo, I meant 36bpp but I made the calculations right none the less ;)
Atmega328 can certainly push quite a bit of data with proper coding an usage of internal hardware modules and interrupt driven code. I'm in process of making LED cube that has 512 LEDs with 12bpp WM gray scale control so I have made the calculations and I could update that LED cube almost 4000 times per second if I needed to, so it's considerable amount of raw data throughput. :)
I'd recomend that you run one arduino to render the table and a second one to run your application. You could of course run both on one but then your update frequency would depend on the speed of your application and if it starts to run slower for some reason your table would start flickering, like you said. Also if your app crashes then your whole table would crash :( I recently also made a music visualizer for it and that would be kind of hard to do on an arduino with the sound and all...
This makes me feel like *puking-rainbows* gr8 job
most disappointing thing about this is that they got the tetris theme wrong... other than that, pretty neat!
With some multi channels LED drivers. Each square need 3 channels for a RGB setup ;)
@MaxMastaSmash
I have 10 multiplexers that control one row of LED's each.
Every multiplexer will loop through it's 16 LED's and adjust the color of them one at a time.
Since the three colors (Red, Green, Blue) can not be turned on at the same time i also have to switch between the colors. First I update the whole table with only the red color, then I turn off the red color and turn on the Green color.. and so on..
I
I was like "No you fool! The staircase block should go to the right!"
Then I was like "No you fool! The snake should move in a forward and reverse motion!"
And finally I was like "Hello Mario. Did you lose weight?"
Really cool! How did you manage to set the brightness of the LED's with the multiplexers? PWM?
Keep up the good work!
That's some serious arduino right there.
Cant completely see the number on those chips, is that a TLC5940? i have been trying to make something like this for months but i cant get past the breadboard because i cant get a chip to work. How did you work around the problem that the TLC5940 can only sink 120ma, but it needs to control 16 cathodes at 20ma each? Is it multiplexed? Sorry for so many questions at once, would you mind sharing your code too? You could really help me out here
***** Yes they are TLC5940. I do multiplex them, row by row, so every chip will only have one LED illuminated at any given time. I dont have the code available at this time, sorry, they are on some backup somewhere :P But if you have any particular questions I might be able to help you.
antomeie right now my biggest problem to solve is the colors mixing. im just trying to multiplex two leds right now, and even with a 5ms delay, the colors from on led mixes into the next. Seems like the TLC5940 isnt switching at the same time as the anode pins. any advice?
***** The way I do it is to have 3 transistors controlling the 3 color-powerlines to all LED's. I turn on the first transistor and then go through the whole table with that color. After that I turn off that color and turn on the next one and update the whole table with that. This is repeated for as long as it is running. My recommendation is to do it this way rather than to try and mix all the leds one by one with all colors. Does that help you? The ms delay that you talked about is not a "set in stone" value, instead you have to experiment with different values to find the one that works best with the current setup.
Multiplexing by color was my first plan, but then I would need common cathode leds, correct? So the tlc5940s would control the common cathode while the colors are multiplexed? For the delay, I found that even if I set it to a whole second, the color still switches later than the anode. I think I'm doing my code wrong. Could you take a look at it and see what's going on? It's only about 30 lines so far
antomeie^^^^
Thanks for the reply!
Ah so you're using common cathode RGB LEDs? The cathode connected to a channel of the TLC5940 and the anodes connected each to one of the 3 transistors?
I didn't think of that since the TLC5940 is designed to be used with common anode LEDs since it's a current sinker.
Did this run Battlefield 4?
You're real good, that's awesome! Congrats from Brazil
you should deffenitly add a couple things to it like a draw that slides out with a joystick and buttons and put it to where you can play pacman as a game that would be amusing you already have video and sound
Haha, because I added a delay in the code at some point for debugging purposes.. Then I did not bother to remove it because I think the game is hard enough as it is :P Might fix it later though..
I don't quite get what you mean with "Will the arduino multiplex fast enough".. The only reason why I am using multiplexer is because the arduino itself does not have enough output pins to control the 160*3 = 480 LED's that I am using.
The LoL shield that you mentioned seems to be using a totaly different method of controling the LED's. It look's like some kind of x,y - coordinate system where you activate x and y coordinates to light up one LED at a time. I have not looked in to it though....
You should make a tutorial on How programming leds work :)
Highly excellent.
i wish adafruit would mass produce these like other screens
Impressive....u keep me entertain....
very nice mate.
I was going to say that you should make the response of completing a line on Tetris quicker, but I have to give you some slack. I mean, you're playing Tetris on a TABLE. That's not something you see every day.
lol brb ppl. Gunna play Tetris on my living room table! bitches love Tetris on a table!
You are amazing good sir. on a serious note. you have a creative ability to make some awesome inventions there.
Helt fantastiskt!
How did you control each led individually? My friend and I are working on a similar project. Did you use shift registers?
Hooray for multiplexers!
I used 10 TLC5940. I cant remember what frequency i run the tlc's on.. I remember that I tuned it as low as I could before the LED's started flickering. Since the LED's are not on all at the same time you want to use a low frequency which will allow the LED's to shine longer before turning them off. A higher frequency will therefor lower the light intensity..
The tlc's frequency is much greater than the speed i get over the serial connection anyway! On my music visualizer i get around 40-50 fps.
Hi, this is awesome! I have been obsessed with multiplexing since the first time that i watched it.
Could you pass me the code? please, is only for study it.
Thank you.
In what language has the program been programmed? Congratulations, great job
Can you show the code?
Currently building a similar project. How did you manage power distribution while multiplexing the LED's?
I lost it at the end
What driver are you using? Max7219? TLC5940?
use a row of proximity sensors on each side so you can play pong with your own hands :)
Actually I tried that on a few squares before I put the table together but it did not make that much of a difference so I skipped it. It also looks cooler in real life this way.
Wow! those are a lot ofmultiplexers if i am seeing it right. Do you control every led simultaniasly?
Incredible brother!
that was way kool... i like it .. very nice job.
Very nice! But why a full raw in tetris disappear soooooo sloooooooooow?
Thats awesome! But you need to brush up on your Tetris skills. :P
ppl used to play tennis table, now they can play tetris table :D
Do you have a Blueprint for this nice Led Table? I think it's pretty cool if you take some touch sensors or something like that to Controll it.
the flickering - i am wondering if its just from the cam ? or is grounding a problem ?
I know this is old but I have a question.
You say you only use one TLC5940 for each row of LEDs and you switch between the red, green and blue really fast... How are you doing this? Do you have actual switches that change between each of the pins of an RGB LED? How does that work?
I just don't understand how you are only using one TLC5940 (16 channels) per row, when each row actually has 16x3 = 48 LEDs...
How are you controlling this? I have an Arduino UNO + Mega. I have been trying to make this EXACT setup for some time now, but I don't want to order a bunch of parts that are not needed. Are you just using Shift registers? How are you driving the LED's? Any info would be GREATLY appreciated!!
how did you program all these games into the arduino?
+Kurt Barcelona he must have made different functions for different games or must have uploaded then one after the other lel
Note that the" graphs" are all the same, so he might have reused many functions for different games. Each game as its own logic and music but the basics are all the same. Still I dont know if he have done it with a Arduino Uno or other how mutch memory he was running on. But its possible ... I'm also starting a game using just a led matrix. You can see it on my profile, I dont have an official channel...this is just for fun.
Great work!!!
I would love to buy one of these
he built it.
BuilderBoy2701 and building it is all the difference
ya
Is there a project page? How do u do tetris? Can you do it to the music? And why didnt u just use WS2812Bs (addressable leds)?
+zerocool60544 I dont have a project page. I programmed Tetris myself. Regarding the WS282B, I made this table in 2010 and I am not sure if they were available back then. If they were then perhaps I did not see them. I probably wold not have gone with them either way..
+antomeie Ya, didnt know about them back then either.
Thanks, Check out some of my LED stuff with the WS2812Bs.
-Joe
How many Adruino board you use in this project? Just one or many?
Two. One for controlling the LED's and one for serial communication. I use an I2C buss between the two.
Ic. Thanks for the info
Antomeie what did you use as a controller?
Is there only one LED in each square that displays all of those colors? Or is it several in one hole? I want to get an arduino and an Arduino LoL LED shield for my birthday. One more quistion lol. Will the arduino multiplex fast enough or will I have to get a chip? Please reply. Thx :)
Awsome! Congrats.
Nice Video
Make also LED Videos
I want one NOW!!!
lol very creative. i love it.
Amazing
awesome dude!
Pretty Amazing !
WOW, perfect work =)
Very nice!
Fantastic.
That morie game lookes funnie on the boord. Can you maak a totorieo on how to make te boord plz?
Light Emitting Diodes but not Diodic Light Emitters? I just basically said the same thing with the exception of one missing typing space. Is it an Em or En? M is for MOR€ MON€¥.
It's AWESOME!! I want to know what code you use at tetris game!
Well Done!
snake und tetris aufen tisch zocken des isch ja mal geil :) good job
What is the music when you play tetris please? It' awesome
any way of you uploading a schematic of your PCB and a parts list? would love to build on my self
Do it with a regular led screen tv
wow! this is amazing!!!!
Did you use RGB LEDs or 3 LEDs (Red, Green and Blue colored)?
AMAZING !