Shop OBEX P1 Docs P2 Docs Learn Events
LED Video Screen/monitor — Parallax Forums

LED Video Screen/monitor

Areal PersonAreal Person Posts: 197
edited 2007-09-07 18:45 in Propeller 1
·
Could someone tell me what would be involved with building a multi LED video display
(320 x 240 or smaller) circuit (like for a led video monitor etc.)? Should I use the video signal for this or something else.
·
How would I go about doing this with the propeller ? Is it possible ? What general type of circuit would be needed ? TI and others have 16-channel RGB drivers with DOT correction (TLC5940NT) etc.. Would I use these in the circuit along with the prop chip ? This would be just for displaying images on the LED matrix, like a slide show, not full motion video.
·
·
Thanks,
-Areal
«1

Comments

  • BergamotBergamot Posts: 185
    edited 2006-11-16 21:22
    That's 76800 pixels, each with three LEDs (or one tricolor LED, which is no easier to control).

    You're insane.
  • Areal PersonAreal Person Posts: 197
    edited 2006-11-16 22:45
    Thanks for the compliment !

    I was thinking 5mm LED's (Actually, they make whats called a LED "Lamp" that uses some kind of filament
    not electron generated photon) It would need to be segmented design, say 16x16 pixel groups (or so)

    seems to me the design needs to be segmented, scalable with some kind of synchronization betewwn
    pixel groups that are cooradnated by the processor(s) that are mapping the display signals.

    How does that sound ? What do you think

    -Areal
  • Paul BakerPaul Baker Posts: 6,351
    edited 2006-11-16 22:53
    You realize that requires 14,400 TLC5940NT? Thats $35,136.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.

    Post Edited (Paul Baker (Parallax)) : 11/16/2006 10:59:28 PM GMT
  • Areal PersonAreal Person Posts: 197
    edited 2006-11-16 22:55
    My question was not about cost. It was about electronics design. many signs cost $250,000.00+
    just ask daktronics.
  • Paul BakerPaul Baker Posts: 6,351
    edited 2006-11-16 23:00
    Yeah if you aren't looking for motion video, it's possible. It would require storing the image data on an SD card or something similar. BTW I was off by a factor of three in my cost estimate, I forgot to account for the 3 colors. You could actually get limited video up if you did an array of propellers that each updated subsections of the display.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • Mike GreenMike Green Posts: 23,101
    edited 2006-11-16 23:56
    There's a wide variety of LED drivers out there like http://www.allegromicro.com/sf/6276/ which is a 16 LED driver with constant current outputs.· Most of these are serial input and cascadable (and are latched).· You could get somewhat better power efficiency if you multiplex the LEDs.· The eye is more responsive to peak brightness than average brightness, so you can use less average power with multiplexed LEDs.· You'd probably have to use discrete drivers for the anodes since most high current drivers switch to ground.· You could load up 16 bits in well under 16us and even load several of these simultaneously.
  • Areal PersonAreal Person Posts: 197
    edited 2006-11-17 00:00
    Mike, thats just wonderfull information ! Cool.

    But what general type of circuit would be required to actualy transfer the image/image pixel(s)
    from the memory (SD, Modified RAM, Hard drive or whatever) so that the proper LED was
    turned on (or mapped, whatever) to the source image pixel located on the SD ? Should it be
    some kind of memory mapping circuit ? or should it be somthing else ?

    Does it just need to be serial ? or is there more to it than that ?
    "discrete drivers" Whats that ? smhair.gif

    I'm not concerned about cost as long as the solution will scale, that way I can spend what I want to.

    Thanks
    -Areal

    Post Edited (Areal Person) : 11/17/2006 12:22:40 AM GMT
  • paulmacpaulmac Posts: 51
    edited 2006-11-17 00:25
    Areal,

    Check out the Good thread index. Especially the 3rd message down under 'Programming bits' you get to SD/MMC cards.

    Paul.
  • LawsonLawson Posts: 870
    edited 2006-11-17 15:24
    http://www.sparkfun.com/commerce/product_info.php?products_id=683

    8x8 tri-color LED matrix.· might make the physical design easier.

    http://www.sparkfun.com/commerce/product_info.php?products_id=760

    the above matrix plus a serial controller.

    Post Edited (Lawson) : 11/17/2006 3:29:15 PM GMT
  • BergamotBergamot Posts: 185
    edited 2006-11-17 17:19
    Lawson said...
    http://www.sparkfun.com/commerce/product_info.php?products_id=683


    8x8 tri-color LED matrix. might make the physical design easier.



    http://www.sparkfun.com/commerce/product_info.php?products_id=760



    the above matrix plus a serial controller.
    That was my first thought too, but still, you need 480 units, and the means to control them...
  • Areal PersonAreal Person Posts: 197
    edited 2006-11-17 17:56
    Thanks everyone ! I'm going to be required to work on·this stuff.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2006-11-17 21:24
    You might consider buying a bunch of BetaBrite Prism displays and disassembling them so the LED arrays can be placed adjacent to each other. To get the resolution you want, you'd need 136 of them and some way to coordinate them all. (They have both RS232 and USB interfaces.) 'Not a project for the faint-hearted, but it might be cheaper than buying all the parts separately.

    -Phil
  • Paul BakerPaul Baker Posts: 6,351
    edited 2006-11-17 21:56
    Areal, let us know how it goes, its a very interesting project.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • BTXBTX Posts: 674
    edited 2006-11-20 01:33
    Areal.
    Did you look for MAX6974/6975 ?
    Those are very cool drivers for big LED screens.

    Regards.
    Alberto.
  • Areal PersonAreal Person Posts: 197
    edited 2006-11-20 16:39
    Thanks BTX, I had not seen this chip, I'm looking at it now, so far I'm waiting for my
    prop demo board to come in, then I going to start working with the LED driver chips.

    I've got to figure out how the memory buffer that holds the the image is going to map
    to the actual LED's on the big display. I'm not sure if the word "map" is the correct term.

    For example, lets say that I have a picture of a bird or whatever loaded into memory.
    The LED video controller must use that image to Illuminate each LED so that there is a picture.

    What I'm trying to figure out in general is what kind of circuit(s) does that job. And what is the best
    way to implement it. Can anyone answer that question ? Maybe an electronics expert ? Can I just
    use NTSC ? I dont think so. but what would I use?

    Thanks,
    -Areal
  • Paul BakerPaul Baker Posts: 6,351
    edited 2006-11-20 19:15
    Wow very nice chip Alberto, too bad it's a QFN, makes using reflow a requirement. But you need the heatsinking capabilities for current driving 24 LEDs. The LVDS interface is a bit of a bugger too.

    Areal, it depends on the format of your image(s). Since you want to do a slideshow, you are going to need to use some external memory like a SD/MMC card. Since these have alot of capacity (and hence space isn't much of an issue), you should choose a non-compressed format such as BMP. Here is a brief page describing how the format is organized. You would use the 24 bit color option which permits any color for each pixel. You would read off the data from the memory interface row by row and feed them out to your drivers. All thats required of the Propeller is to fetch the data from the memory card, rearrange the data into the format expected by the drivers, then send the data out to the drivers. If you design the chain of drivers correctly, the only amount of rearrangement that should be (possibly) necessary is the reording of the rgb bytes. IOW the mapping basically boils down to how you organize the drivers and thier associated LEDs, you should mimic the way BMP does it as much as possible to make it easier on you software-wize.


    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • Areal PersonAreal Person Posts: 197
    edited 2006-11-20 20:18
    Paul, (And whoever else)

    your right, I think I was over complicating somewhat. What about an async serial data stream LED driver
    that could switch a data packet based on the address it contained. That way the driver could
    route the color information to the correct LED. The packet might look like this.

    (START 0x81)(RED PWM)(GREEN PWM)(BLUE PWM)(ADDR)(CHECKSUM)

    The START just starts a new packet
    The next three frames are the color info
    The formated address for switching
    The checksum (2's complement of the sum of the other frames, modulo 256).

    and some pseudo assembler might look like this.

    movlw 0x81
    addfw RedPWM, W
    addfw GreenPWM, W
    addfw BluePWM, W
    sublw 0x00
    movwf chksum

    Do you think I could get it fast enough to work ?
    if so, what kind of switching circuit would I use for the routing ?
    And, could I not tie this circuit(s) directly into the Propeller(s)
    and that work ?

    -Areal

    Post Edited (Areal Person) : 11/20/2006 8:24:34 PM GMT
  • BTXBTX Posts: 674
    edited 2006-11-21 02:04
    Sorry guys but I've a hard week this time.....in the future I'll have more time to share in this thread..
    But a little suggest.....
    To show video in 320x240 (ie) with this format.... (START 0x81)(RED PWM)(GREEN PWM)(BLUE PWM)(ADDR)(CHECKSUM)
    ·you'll need· about 12/14 bits per pixel (MAX6974/75) per color RGB, more the start bits, by 320*240 pixels, by 25 or 30 times per second (fps)....
    so basically a lot of bytes of info per frame, at a very high pixel frequency..........think...
    I·think BMP could not ·be a good idea......sorry...
    Paul said...

    Wow very nice chip Alberto, too bad it's a QFN, makes using reflow a requirement. But you need the heatsinking capabilities for current driving 24 LEDs. The LVDS interface is a bit of a bugger too.
    You're right Paul.

    Regards.
    Alberto.
    ·
  • PJAllenPJAllen Banned Posts: 5,065
    edited 2006-11-21 02:17
    I can't help but think that LED-TV would be totally awesome.· I think the stumbling-clocks are: element/die geometries and viewing angles.· If you could place them consistently, in a small-enough area (as close as R-G-Bs on a "CRT"), and be able to see it all from 45deg either side of perpendicular --·you'd really have something.

    Strive onward, dude.
  • BTXBTX Posts: 674
    edited 2006-11-21 11:57
    PJ.
    You'll need at least 60deg LED or more.....( each pixel making a triangle ....one with the vertex of the triangle up, and the next down...that could be one choice).
    In a 256x192 pixel screen, the distance between pixels about 15mm is fine.

    Regards
    Alberto.
  • PJAllenPJAllen Banned Posts: 5,065
    edited 2006-11-22 02:38
    Yes, I've figured.· If it gets done, it won't be with discrete LEDs, as such, but with the elements place on a mega-matrix (all those little dies/elements next to each other, very nip & tuck.)· Probably a bridge too far.
  • BTXBTX Posts: 674
    edited 2006-11-22 12:23
  • Areal PersonAreal Person Posts: 197
    edited 2006-11-22 16:54
    Thanks Alberto ! Thats a very good general example of what we are trying to design and build.

    I think it is very possiable to do this with the propeller. However, thats currently just my
    opinion. And its based on everything I've read. We still have allot of lab work to do.

    I'm trying to get enough information together to design and prototype a scaled version for a proof
    of concept. We'll have a website in a few weeks (I hope) and I'll post it so everyone can see whats going on.

    So everyone please, please continue to post resources, ideas & suggestions about how to pull this off using
    the propeller, And I'll keep everyone up to date on progress.

    It looks like this project will be going forward.

    Thanks again.
    -Areal (Mark)
  • BTXBTX Posts: 674
    edited 2006-11-23 00:57
    Areal said...
    We still have allot of lab work to do.
    ···· ·Of couse Mark..
    Areal said...
    So everyone please, please continue to post resources, ideas & suggestions about how to pull this off using
    the propeller, And I'll keep everyone up to date on progress.
    I will.

    But at this point...I would like,·if Paul Baker, could explain, or give a link where read.·Why is so difficult ??·to·manage the LVDS signals.
    It's about talking of the PCB design ? or what ?????.
    In the other side ..... I think could be useful at this time, to begin·to think in a frame grabber....

    Regards.

    Alberto.
  • BTXBTX Posts: 674
    edited 2006-11-24 22:02
    Paul.
    We're waiting for your explanation..!!·yeah.gif

    Regards.
    Alberto.
  • m1tch37m1tch37 Posts: 1
    edited 2006-11-26 02:39
  • BTXBTX Posts: 674
    edited 2006-11-28 04:26
    Dear Paul Baker.
    Please, read this comment by me ... (Sent 22/11/2006) in this thread..

    Thanks.
    Alberto.
  • Paul BakerPaul Baker Posts: 6,351
    edited 2006-11-28 04:58
    Sorry Alberto, I was away for the holiday and just returned today, I was told to post my AFF (away from forums) notice in the Sandbox because it was not directly related to the Propeller. In theory theres no issue for using LVDS, you just need to provide an interface chip for each channel you implement, not a biggie just an incremental cost/complexity addition to an already non-trivial project.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Paul Baker
    Propeller Applications Engineer

    Parallax, Inc.
  • BTXBTX Posts: 674
    edited 2006-11-28 13:07
    Thanks so much for your explanation, Paul.
    Sorry, LVDS use was eating my mind....

    Regards.
    Alberto.
  • GreyBox TimGreyBox Tim Posts: 60
    edited 2006-12-01 21:46
    Areal,

    I'd suggest if you're going to do still images - decide on your color depth (8-bits per color to 16-bits per color), then find a dual-port RAM that will fit your frame (this will be your frame buffer). For 8-bit color depth at 320x240, you'll need about 2MB. Next you'll want to figure out your refresh rate (Film-like 24/25Hz, PAL-like 50Hz, or NTSC-like 60Hz). You need to make sure your memory is fast enough to dump its contents within that time frame. For the 320x240 resolution at 60Hz, you'll need memory that has at least 13MHz 8-bit wide bandwidth (you want more headroom so that timing constraints aren't a pain in the butt).

    This way you can write to the memory at the processor's pace, and the display can use the pixel information at its pace (and they will be different smile.gif).

    I'd also suggest looking into some Xilinx CPLDs and creating your own 12-channel PWM generator. I built a 4-channel PWM generator's logic in MS Excel for demonstration purposes (16-bit input bus, an address decoder, [noparse][[/noparse]4] 16-bit data latches, 4 channels of 16-bit depth comparators [noparse][[/noparse]driving output pins, and a 16-bit counter and input clock divider), so it's not too hard to do - but you need to learn VHDL to use the Xilinx stuff.

    The ammount of power this will draw may also shock you... unless you can multiplex the "pixels" (think of it - 3 [noparse][[/noparse]red, green, blue] LEDs @20mA each [noparse][[/noparse]assume 2.25 volts for all] X 320 wide X 240 high = 10,368 Watts!!)

    -Tim

    Post Edited (GreyBox Tim) : 12/1/2006 9:50:44 PM GMT
Sign In or Register to comment.