Tap to unmute

Driving LED matrix displays with an FPGA

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

mikeselectricstuff

mikeselectricstuff

Күн бұрын

Пікірлер: 90
@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!
@devjock
@devjock 10 жыл бұрын
This video is singlehandedly making me reboot my 16x16 led icon t-shirt. Amazingly detailed, and super clear. Much appreciated!
@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.
@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 :)
@rogerkerr5745
@rogerkerr5745 9 жыл бұрын
Another awesome video Mike. You truly are a God of electronics. :)
@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.
@redtails
@redtails 10 жыл бұрын
Wow, this Lattice devboard is amazing! The shipping costs are pure extortion, but I'm keeping my eye on getting one
@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.
@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
@naikrovek
@naikrovek 2 жыл бұрын
This is still one of my favorite videos of all time. more FPGA videos about driving LEDs are always welcome, by the way.
@Mulletsrokkify
@Mulletsrokkify 10 жыл бұрын
Love the Young Frankenstein clips on the top left display! ;-)
@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?
@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
@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
@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.
@Mythricia1988
@Mythricia1988 10 жыл бұрын
47 min video from Mike? Wow, guess it's time to get some dinner to go with it...
@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.
@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 10 жыл бұрын
theLuigiFan0007 haha, was the project successfull ?:D
@theLuigiFan0007Productions
@theLuigiFan0007Productions 10 жыл бұрын
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.
@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 :).
@Adventures_EC
@Adventures_EC 10 жыл бұрын
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.
@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!
@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. -.-
@Vidicon31
@Vidicon31 10 жыл бұрын
thanks mike for another great video
@AliMirjamali
@AliMirjamali 10 жыл бұрын
Thanks for the Autobaud UART VHDL @ 41:33
@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.
@pickholder6189
@pickholder6189 7 жыл бұрын
There is a great pinball display project going called 'pin2dmd' online that uses two of those panels side by side.
@shaunclarke3
@shaunclarke3 10 жыл бұрын
I love LED displays - thanks for the video even though most of it is wayyy over my head :).
@diyemc7206
@diyemc7206 Жыл бұрын
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
@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
@t242p
@t242p 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.
@5hape5hift3r
@5hape5hift3r 6 жыл бұрын
Could use logarithmic intensity for the low brightness end Effectively HDR
@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.
@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.
@duality4y
@duality4y Жыл бұрын
this video is so so incredible
@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.
@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.
@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.
@shareefjalloq5462
@shareefjalloq5462 7 жыл бұрын
How reliable was that UART? Using the possibly metastable latch in the rising edge detect logic was probably a bad idea. :-)
@byakuyalight9007
@byakuyalight9007 2 жыл бұрын
very impressive friend can you explain how to control register 74hc595 with fpga please? 👏🏻
@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?
@wilfriedklaebe
@wilfriedklaebe 5 жыл бұрын
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 5 жыл бұрын
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 ?
@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.
@davidpoot3511
@davidpoot3511 5 жыл бұрын
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 :)
@douro20
@douro20 10 жыл бұрын
You can get 2.08m x 1.44m programmable 10-bit color LED sign boards for just under 2000 GBP.
@jgcertified
@jgcertified 10 жыл бұрын
Looks a lot like my old job!
@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!
@samnavarrete8760
@samnavarrete8760 9 жыл бұрын
what is this field of work called?
@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.
@fsarch7166
@fsarch7166 4 жыл бұрын
Thanks I m working on a giant screen 400x96, based on this video thanks for your help
@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 10 жыл бұрын
James Fry currency conversion is easy. 20p = $0.32
@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
@naikrovek
@naikrovek 10 жыл бұрын
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.
@stok3si3
@stok3si3 4 жыл бұрын
And now 6 years later, you can get 64x64 led panels for about $15!
@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
@JGunlimited
@JGunlimited 8 жыл бұрын
Casually coding without a syntax highlighter like its nbd
@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 10 жыл бұрын
Where do you think Adafruit gets them?
@bsvenss2
@bsvenss2 10 жыл бұрын
Nice
Screen share ANYTHING to this matrix! (Pi Pico)
8:07
bitluni
Рет қаралды 122 М.
Icestudio and Verilog project, LED Matrix FPGA driver! Part 1
18:23
Tuna 🍣 ​⁠@patrickzeinali ​⁠@ChefRush
00:48
albert_cancook
Рет қаралды 148 МЛН
The Best Band 😅 #toshleh #viralshort
00:11
Toshleh
Рет қаралды 22 МЛН
Designing a low-cost "bullet-time"  camera rig
41:01
mikeselectricstuff
Рет қаралды 40 М.
EEVblog #1044 - LCD Technology Tutorial
26:46
EEVblog
Рет қаралды 182 М.
Controlling a BIG LED Matrix?! How Shift Registers work! || EB#39
12:33
"For $35,000 I'd Expect it to be Perfect"
42:13
Blacktail Studio
Рет қаралды 4,8 МЛН
Ben Heck's FPGA LCD Driver Hack
25:15
element14 presents
Рет қаралды 223 М.
2 Retro Clocks with an ESP32 (Couldn't be simpler!)
5:37
Brian Lough
Рет қаралды 121 М.
Markem Imaje industrial CO2 laser marking systems
27:28
mikeselectricstuff
Рет қаралды 10 М.
Making OLED Displays
20:20
Huygens Optics
Рет қаралды 676 М.