Driving LED matrix displays with an FPGA

  Рет қаралды 81,373

mikeselectricstuff

mikeselectricstuff

10 жыл бұрын

Detailed look at methods for driving LED matrix displays, including simple LED displays and full-colour video screen modules.
Lattice XO2 devboard : uk.mouser.com/ProductDetail/La...

Пікірлер: 90
@devjock
@devjock 10 жыл бұрын
This video is singlehandedly making me reboot my 16x16 led icon t-shirt. Amazingly detailed, and super clear. Much appreciated!
@Tadesan
@Tadesan 6 жыл бұрын
Mike, the beauty and thoroughness of your understanding of this stuff is a joy to behold. You are a true professional. You can tell a true professional by the aplomb they exercise, no matter what the activity. You've got it sir!
@theianwoodbridge
@theianwoodbridge 10 жыл бұрын
Great video, thanks for taking the time to make it. There is nothing like a real word project with all the details explained to be interesting and informative. I don't know if you set out to create an instructional video but this is one of the best. Again, thanks.
@Falcrist
@Falcrist 10 жыл бұрын
I'm not going to tell you you have to make more videos, but I will say I'm glad to see you're getting more active. Thanks for the uploads! :D
@frollard
@frollard 10 жыл бұрын
I always think I'm clever when I come up with some solution for coding an arduino 'efficiently'...then I watch one of your videos...This is fascinating. Wiring, fpga, component selection, and code routine...all splendid.
@donpalmera
@donpalmera 10 жыл бұрын
coding an arduino efficiently == dumping arduino and just using avr-libc right?
@frollard
@frollard 10 жыл бұрын
donpalmera Agreed - like I implied...I'm a total nub and finding ways to sneak a little proper-C or asm into the code makes me happy. Seeing how far I can stretch the very limited IDE is kinda fun.
@SirArghPirate
@SirArghPirate 10 жыл бұрын
donpalmera Is the difference big? I've noticed that codes I write in Atmel Studio tends to use less space than the equivalent code written in Arduino IDE, but so far I've only written fairly simple codes.
@Bob_Burton
@Bob_Burton 10 жыл бұрын
frollard No need to 'sneak in a little proper C' because the Arduino IDE uses C++ anyway, and with very few exceptions all normal C functions are supported.
@naikrovek
@naikrovek Жыл бұрын
This is still one of my favorite videos of all time. more FPGA videos about driving LEDs are always welcome, by the way.
@cybhunter007
@cybhunter007 10 жыл бұрын
Great video on showing the practical applications of FPGAs. One of the required courses I need (that I completed this semester) for a double E degree involved using Altrea DE1 boards and low res VGA outputs (due to limited memory). To codify frollard statements (and to paraphrase my professors philosophy) " There are many ways to approach the problems, the key is knowing what you trying to solve."
@tttuberc
@tttuberc 5 жыл бұрын
Thanks for creating this excellent video Mike. I have been wondering for a long time how these LED panels work and how to drive them
@jboard146
@jboard146 10 жыл бұрын
Great video! My head hurts after watching the VHDL stuff. I'm trying to learn Verilog in my spare time. Going from "normal" programming to HDL is hard to wrap my head around. I also enjoyed your iPod screen video series.
@rogerkerr5745
@rogerkerr5745 9 жыл бұрын
Another awesome video Mike. You truly are a God of electronics. :)
@DrenImeraj
@DrenImeraj 10 жыл бұрын
I wish you could do a series of tutorials on VHDL. Great video, as usual, thank you!
@mikeselectricstuff
@mikeselectricstuff 10 жыл бұрын
Problem is I'd need to actually know it properly... I'm still very much in "winging it" mode.
@DrenImeraj
@DrenImeraj 10 жыл бұрын
mikeselectricstuff You could improve your own skills in the process :)
@AppliedScience
@AppliedScience 10 жыл бұрын
Great info! I've heard that VHDL is the standard in Europe. Did you actively decide to use it instead of Verilog, or just picked it up because resources were easier to find? Thanks for the detailed video.
@mikeselectricstuff
@mikeselectricstuff 10 жыл бұрын
Fairly random decision many years ago when I was doing the high-speed camera project - found a good VHDL book. Probably the wrong decision as some of VHDL is a PITA but I don't do enough FPGA to justify changing.
@ProtonReversal
@ProtonReversal 10 жыл бұрын
VHDL is generally taught in UK Universities and it seems to be the standard HDL in Europe. I was expecting a VHDL vs Verilog "outbreak" with that comment :).
@dercncplaner
@dercncplaner 9 жыл бұрын
correct. I work with VHDL and it is very nice to write and very good to read.
@Nikkuuu69
@Nikkuuu69 9 жыл бұрын
I'm in europe but I started learning FPGA in my own spare time, so I picked up verilog because the VHDL syntax scared me off instantly...
@comodozin
@comodozin 7 жыл бұрын
VHDL syntax is something scary and unnecessarily verbose in my opinion. I worked with it for a couple of years and converted myself to Verilog.
@redtails
@redtails 10 жыл бұрын
Wow, this Lattice devboard is amazing! The shipping costs are pure extortion, but I'm keeping my eye on getting one
@jonathanwhite2303
@jonathanwhite2303 10 жыл бұрын
thanks mike we need more vids like this really enjoyed this, more please and would love to see your pic and place in operation cheers
@Mulletsrokkify
@Mulletsrokkify 10 жыл бұрын
Love the Young Frankenstein clips on the top left display! ;-)
@WizzRacing
@WizzRacing 10 жыл бұрын
Glad I watched to the very end. I was wondering how you got the 8 bit and not 7 plus 1 check on your baud rate, now I know. Great stuff
@Mythricia1988
@Mythricia1988 10 жыл бұрын
47 min video from Mike? Wow, guess it's time to get some dinner to go with it...
@arcadeuk
@arcadeuk 10 жыл бұрын
Thanks Mike for an excellent video as always. Some of the techniques you have described were new to me and I am sure would be useful to me at some-point in the future
@SilvaentysFyrerux
@SilvaentysFyrerux 10 жыл бұрын
Extremely interesting stuff, thank you for sharing!
@JensAndree
@JensAndree 10 жыл бұрын
Very good video indeed!!! I'm a software guy who in later years found hardware and have now combined the two in order to make really useful projects. Just like you I'm spending a lot of time to develop visual gadgets and I have outgrown my trusted microcontrollers purely due to their lack of speed. (I develop visual feedback devices for autistic kids) I have thought about going down the FPGA route for a while now but didn't know where to start, and everything seemed a lot more expensive, so this video was very informative to me! I would really appreciate if you could make available the code you demonstrated in the end so people like me can have a working boilerplate or similar to analyse whilst learning VHDL. I have made quite a few of my own LED panels and the costs you are mentioning are way below even my cheaper solutions so perhaps one should look closer to see what's available in China already?...
@ElGatoLoco698
@ElGatoLoco698 10 жыл бұрын
That is really cool. I wish I had the wherewithal to play around with LED displays like that. I'd have the coolest Christmas lights on the block.
@anthonyroby296
@anthonyroby296 10 жыл бұрын
Very informative. I thought all would be revealed once I saw the code, but knowing nothing about VHDL, it was rather impenetrable! Mike - any chance you could publish the code so we can look through it and figure it out?
@Vidicon31
@Vidicon31 10 жыл бұрын
thanks mike for another great video
@duality4y
@duality4y 9 ай бұрын
this video is so so incredible
@90SecondsofAviation
@90SecondsofAviation 10 жыл бұрын
Good evening Mike ! Love Your stuff, in my eyes, Your god of electronics :D
@theLuigiFan0007Productions
@theLuigiFan0007Productions 10 жыл бұрын
I would say so too. Never seen anyone be able to talk so fluidly about something so complex. If there was one, it would be him. He is able to figure anything out it seems. I though my parallel port driven 16*16 was awesome, this = OMG. I want to try making a Pentium 4 compatable 16 core CPU with one of the $40 FPGAs and wire to the socket 478 and run at a few GHZ (at least 3). Learning from this guy will definitely give me a idea of complex engineering. I know its possible to put a ARM CPU in a cheap FPGA, why not make a P4 compatable one? Plus wouldnt it be awesome to brag how fast your 2001 era PC was LOL.
@90SecondsofAviation
@90SecondsofAviation 9 жыл бұрын
theLuigiFan0007 haha, was the project successfull ?:D
@theLuigiFan0007Productions
@theLuigiFan0007Productions 9 жыл бұрын
use the force Not yet, it takes a while to reverse engineering the instruction set of the P4 before you can build a compatable one. The early intel 80* series chips were relatively easy to clone with less thatn 200 pins, now its a real feat if one can pull it off. Or I could build a translator interface that translated P4 data formats and instructions to ARM. It will take a lot of work to get it running, but its one of those goals I feel has to be completed while im still relatively young. I wish to design a series of CPUs someday (if I ever start or get a high position in a semiconductor manufacturer) that simply needs a pin adaptor to run on a Intel or AMD based board. I think it would not only be a good thing for competition, but it could cause other companies to take on the idea. If all components were mix and match with the current technology, making a system built specifically to one's needs and budget would be really easy. Wow, this was more a letter than a reply, maybe I said too much LOL. I also have a few other projects relating to high voltage and LED driver circuitry I occasionally work on. Just though I should reply even though I havent logged in for a while, as you asked a legitimate question which has a fairly important meaning to me.
@movax20h
@movax20h 6 жыл бұрын
That is excellent. I am looking for a FPGA board to drive 4 RGB LED panels each 64x32. 24 bit per pixel should be enough for my application, that is 4*64*32*3*8=200kbit per frame. I can drive them by daisy chaining panels, or wiring them in parallel to FPGA as separate panels. I do not need more than 10 Hz framerate, but 30Hz would be prefered so things like scrolling and synchronization between panel is better. I also need a double buffering so I can upload new frame for entire display, then swap a content quickly and atomically. That is because I am planning to use Raspberry Pi or other network connected micro / SBC to drive these, and UART timing isn't going to be the best. Future upgrade to 16 panels (4 x 4 matrix of 64x32 RGV LED panels) would be awesome for me too. (800kbit per frame). Or a 16x320 display that can display about 24 characters (16 pixels tall each) at the same time. This video is 4 yeras old, so I am assuming there are better FPGA boards available these days, for projects like these or similar. Lattice iEC40, i.e. www.mouser.co.uk/ProductDetail/Lattice/iCE40UP5K-B-EVN?qs=KeU%2faRU0YVWVQ39q7XFcHg%3d%3d looks like reasonable choice for this.
@shaunclarke3
@shaunclarke3 10 жыл бұрын
I love LED displays - thanks for the video even though most of it is wayyy over my head :).
@sigusr
@sigusr 10 жыл бұрын
Great video, thanks. What row driving MOSFETs did you use? I'm trying to understand your comment about driving a higher voltage by working out how you hooked that part up.
@berni8k
@berni8k 10 жыл бұрын
Great video, i'm really starting to like these long rambling about stuff videos. Oh and I'm also curious what made you chose VHDL. Personally i got in to Verilog because the syntax seamed nicer and more C like.
@mikeselectricstuff
@mikeselectricstuff 10 жыл бұрын
Fairly random decision few years ago - found a good book that happened to be VHDL. Also I was told VHDL is more likely to catch stupid errors at compile time, whearas Verilog would compile almost anything & let you figure out why it doesn't work. Possibly the wrong decision as VHDL can be a PITA, but I don't do enough FPGA stuff to justify learning another language
@berni8k
@berni8k 10 жыл бұрын
mikeselectricstuff The Verilog i learned was due to a freelance project needing a CPLD, month later had to learn VHDL in a uni class, hated it for its complexity and just kept using Verilog for my own stuff. If i have not gotten in to Verilog on my own id probably be using VHDL too.
@diyemc7206
@diyemc7206 10 ай бұрын
Hi! You mention gamma correction and problems with number of bits. Have you looked into implementing the gamma function in the enable signals? So you could have just 4bit data, but the bit-"weight" is scaled according to the gamma function. I could see using 16bit PWM to generate the bit-weight while outputting just 4bit gray-scale. Regards
@flpsht
@flpsht 10 жыл бұрын
Hello Mike! When i saw the black 64x32 RGB board i started playing with the idea of making lots of them in to a table top with a plexy plate on top. but how hard is it to make it work as a computer screen? Lets say it is doable... If you mount a camera in the cealing you can have software picking up stuff like a glass or a cellphone, generally an object, and make it interact with stuff put on the table.
@GADELHAS82
@GADELHAS82 10 жыл бұрын
Thank you for the video Mike. Love your videos. I know that is asking too much, but can you do a video on rs485? Things like hardware design, number of units per bus, firmware aproach, etc. I see some of your videos that you use 485 to comunicate beetween boards, and i always curious how you implemented that. Thank you for your contribution to my knowledge with your videos.
@pickholder6189
@pickholder6189 7 жыл бұрын
There is a great pinball display project going called 'pin2dmd' online that uses two of those panels side by side.
@AliMirjamali
@AliMirjamali 10 жыл бұрын
Thanks for the Autobaud UART VHDL @ 41:33
@fsarch7166
@fsarch7166 4 жыл бұрын
Thanks I m working on a giant screen 400x96, based on this video thanks for your help
@Nikkuuu69
@Nikkuuu69 9 жыл бұрын
Thanks for the video mike! Do you know if the software to program Lattice FPGA's is free to use? I'm really intrigued by that Lattice FPGA that has most components built in, and it's also a QFP! I'd like to build my own FPGA board but soldering BGA's is something I'm quite worried about.
@lillydoye7418
@lillydoye7418 8 жыл бұрын
I believe some of the basic lattice software is free but does require registration. I also think their is an open source option being developed.
@DamirUlovec
@DamirUlovec 10 жыл бұрын
07:31 While carefully listening and learning from Mike, I've been distracted by incoming mail sound. I thought it was from my computer. -.-
@ebmmdawguy
@ebmmdawguy 10 жыл бұрын
Decided to grab one of these panels off AliExpress - I have a little project Idea. Though I'll be driving it with an Arduino, might be time I got an FPGA dev board.
@reotrb
@reotrb 10 жыл бұрын
Just came across the PCA9955ATW chip from NXP. Check it out if you haven't already. It can be used to drive RGB LED's. Can't wait to try it myself. Of course it's not available from distributors just yet but it looks like you can order samples
@mikeselectricstuff
@mikeselectricstuff 10 жыл бұрын
Digikey have stock. Only 8 bit though so no good for monochrome. Also a bit expensive
@jgcertified
@jgcertified 10 жыл бұрын
Looks a lot like my old job!
@tetradb_
@tetradb_ 10 жыл бұрын
is that your own plasma routine? Great vid btw, love these led matrix displays
@mikeselectricstuff
@mikeselectricstuff 10 жыл бұрын
If you mean the flame effect, yes it's burning lighter fuel shot at 1000 frames per second.
@tetradb_
@tetradb_ 10 жыл бұрын
mikeselectricstuff Ye the first effect you show on the chinese rgb video wall tile. I'm a programmer, that likes electronics :) more specifically, graphic effect programming, which is my true enjoyment. I would call that a plasma effect(google those together) more than a flame, but its your routine so its your call ofc :D. 1000fps is just insane by any standard. It cool to see your programming streak :) it always overcast by the wealth of your electronic knowladge.
@5hape5hift3r
@5hape5hift3r 5 жыл бұрын
Could use logarithmic intensity for the low brightness end Effectively HDR
@shareefjalloq5462
@shareefjalloq5462 6 жыл бұрын
How reliable was that UART? Using the possibly metastable latch in the rising edge detect logic was probably a bad idea. :-)
@douro20
@douro20 10 жыл бұрын
You can get 2.08m x 1.44m programmable 10-bit color LED sign boards for just under 2000 GBP.
@policyprogrammer
@policyprogrammer 10 жыл бұрын
How do you get those MBI devices? I can't find them on digikey or mouser. I like the idea of a $0.20 16 channel constant current driver chip. I have used the TLC5921. Similar, but like $1+
@naikrovek
@naikrovek 9 жыл бұрын
James Fry currency conversion is easy. 20p = $0.32
@bsvenss2
@bsvenss2 10 жыл бұрын
Nice
@gamccoy
@gamccoy 10 жыл бұрын
You are never one to do a video half way. That was great. I am pretty weak at understanding FPGA synthesis. What percentage of available gates were used by your project?
@video2k007
@video2k007 10 жыл бұрын
Hey Mike, very cool video. Especially the technique the different length OE-pulsewidths. Made the method I used look quite idiotic. :) Can you tell me, where you got this nice RGB matrix from? Keep up the nice videos! Greetings :)
@mikeselectricstuff
@mikeselectricstuff 10 жыл бұрын
Search P3 RGB LED on aliexpress
@video2k007
@video2k007 10 жыл бұрын
mikeselectricstuff Great, Thanks! I'll give it a go! :) Have a nice evening!
@stok3si3
@stok3si3 3 жыл бұрын
And now 6 years later, you can get 64x64 led panels for about $15!
@byakuyalight9007
@byakuyalight9007 2 жыл бұрын
very impressive friend can you explain how to control register 74hc595 with fpga please? 👏🏻
@davidpoot3511
@davidpoot3511 4 жыл бұрын
Hi!!! Great Work. I need to create a controll for a RGB Matrix with ESP32 microcontroller. How Can I Start the code? I hope that you can help me :)
@wilfriedklaebe
@wilfriedklaebe 4 жыл бұрын
The current Lattice iCE40 FPGAs are really useful for open source projects because there's a completely open toolchain now - but that only "speaks" verilog. Might that be a reason to learn verilog for you?
@wilfriedklaebe
@wilfriedklaebe 4 жыл бұрын
Came here via github.com/smunaut/ice40-playground/blob/master/cores/hub75/README.md btw
@n3tpr0b3
@n3tpr0b3 10 жыл бұрын
From where do you source those MBI5026 chips ?
@victornpb
@victornpb 10 жыл бұрын
I thought one would program a fpga by placing logic gates, or modules together something like you design a circuit in a eCad program. silly me. now I wonder if complex chips are designed by code like vhdl that compile into a silicon layout.
@mikeselectricstuff
@mikeselectricstuff 10 жыл бұрын
You can do it from schematic, but HDL is so much more powerful that nobody really does it that way, and schematic entry in the tools is not being developed or has been dropped.
@JGunlimited
@JGunlimited 8 жыл бұрын
Casually coding without a syntax highlighter like its nbd
@TheMarkaay
@TheMarkaay 4 жыл бұрын
Could you do a new video with newer and cheaper parts, please. I would like to build a big Videowall for watching Television.
@Zauviir
@Zauviir 10 жыл бұрын
Mike, I love when you do fundamentals types of videos talking about data buses and the core mechanics of this stuff, its super interesting. I notice you don't seem to use logic analyzers at all, can you comment on this? Keep up the good work, iceisfun@eevblog
@byakuyalight9007
@byakuyalight9007 2 жыл бұрын
I understand that register need a latch clock and data pin while latch 0 clock from 0-1 and valor data performance
@samnavarrete8760
@samnavarrete8760 9 жыл бұрын
what is this field of work called?
@DavidStonesystem24seven
@DavidStonesystem24seven 10 жыл бұрын
Theoretically you could use the lattice board with your code and these boards. Slightly lower resolution and well known supplier. www.adafruit.com/products/420
@naikrovek
@naikrovek 9 жыл бұрын
Where do you think Adafruit gets them?
@naikrovek
@naikrovek 9 жыл бұрын
Would you mind sharing that code somewhere, GitHub maybe? Anywhere, perhaps? I find this entire video a freaking gold mine of information, and I'm doing lots of FPGA-driven LED stuff lately. Every single time I watch this video, I learn something I missed previously.
@Lion_McLionhead
@Lion_McLionhead 10 жыл бұрын
Still a small fortune for a wall size display.
Controlling a BIG LED Matrix?! How Shift Registers work! || EB#39
12:33
Ben Heck's FPGA LCD Driver Hack
25:15
element14 presents
Рет қаралды 223 М.
I Can't Believe We Did This...
00:38
Stokes Twins
Рет қаралды 54 МЛН
ОСКАР ИСПОРТИЛ ДЖОНИ ЖИЗНЬ 😢 @lenta_com
01:01
Making OLED Displays
20:20
Huygens Optics
Рет қаралды 658 М.
EEVblog #496 - What Is An FPGA?
37:44
EEVblog
Рет қаралды 757 М.
Icestudio and Verilog project, LED Matrix FPGA driver! Part 1
18:23
Introduction to LED Panels
16:01
panelsrus
Рет қаралды 81 М.
Driving a VGA Display?! Getting started with an FPGA! (TinyFPGA)
11:26
Driving hub75 LED panels.  (including free test software)
21:42
bigclivedotcom
Рет қаралды 117 М.
Top Fifteen Mistakes People Make When Designing Prototype PCBs
12:26
Cosplay Light and Sound
Рет қаралды 133 М.
Holographic FlexLED
5:32
Carl Bugeja
Рет қаралды 3,7 МЛН
64x64 RGB LED Matrix Panel - SmartMatrix and Teensy 3.6
15:52
Gadget Reboot
Рет қаралды 82 М.
Best mobile of all time💥🗿 [Troll Face]
0:24
Special SHNTY 2.0
Рет қаралды 2,7 МЛН
1$ vs 500$ ВИРТУАЛЬНАЯ РЕАЛЬНОСТЬ !
23:20
GoldenBurst
Рет қаралды 1,5 МЛН
Simple maintenance. #leddisplay #ledscreen #ledwall #ledmodule #ledinstallation
0:19
LED Screen Factory-EagerLED
Рет қаралды 21 МЛН
Мой инст: denkiselef. Как забрать телефон через экран.
0:54
Main filter..
0:15
CikoYt
Рет қаралды 14 МЛН