manhdan

Can MSP430 do this?

13 posts in this topic

That is absolutely glorious.

 

You could do a finite number of frames with an MSP430 of some sort. If you want to do the motion capture style like in that video you'll need to aim a lot higher in processing power I think.

manhdan likes this

Share this post


Link to post
Share on other sites

yea, motion capture you are going to need sometigh like a Raspberry Pi wich is a processor of 700Mhz

 

for simply making that LED matrix to do cool paterns and drawings you can use a MSP 

manhdan likes this

Share this post


Link to post
Share on other sites

Let's assume we use regular passive matrix scanning: you "update" one row at a time but in very fast succession.

You'll need as many pins as the sum of the rows and the columns. I estimate this dancing light to be 32 by 32 pixels, so you'll need 64 I/O pins. You could even get away with no extra pins to use both the green and the red light (not at once), just have the red LEDs in forward from one pin to another and the corresponding green LEDs the other way around in parallel to that.

Your scanning speed need to be high enough to look like it's continuous, let's assume you'll need about 50Hz to make it look clean.

This means you'll need to update all 64 output pins 50 * 32 times per second, or 1600 Hz.

This seems perfectly reasonable for an MSP430, except for the pin count (for value line devices that is), so you'll either need to use shift registers or multiple MSP430s to allow for this much I/O pins.

Another issue is the current draw, the row selection lines will need to supply enough current to power 32 LEDs at once. You will need to use driver ICs or transistors to allow for such a current (say 32 * 20mA = 640mA)

manhdan likes this

Share this post


Link to post
Share on other sites

Let's assume we use regular passive matrix scanning: you "update" one row at a time but in very fast succession.

You'll need as many pins as the sum of the rows and the columns. I estimate this dancing light to be 32 by 32 pixels, so you'll need 64 I/O pins. You could even get away with no extra pins to use both the green and the red light (not at once), just have the red LEDs in forward from one pin to another and the corresponding green LEDs the other way around in parallel to that.

Your scanning speed need to be high enough to look like it's continuous, let's assume you'll need about 50Hz to make it look clean.

This means you'll need to update all 64 output pins 50 * 32 times per second, or 1600 Hz.

This seems perfectly reasonable for an MSP430, except for the pin count (for value line devices that is), so you'll either need to use shift registers or multiple MSP430s to allow for this much I/O pins.

Another issue is the current draw, the row selection lines will need to supply enough current to power 32 LEDs at once. You will need to use driver ICs or transistors to allow for such a current (say 32 * 20mA = 640mA)

 

Thanks for your analysis, I do not know anything about motion capture. As you said, I just envisioned a 32x32 LED matrix is scanned with 50Hz.

I started working with MSP4302553 and 8x8 LED matrix. This is a difficult problem, I will be learning a lot more to do it.

Share this post


Link to post
Share on other sites

An MSP could easily handle the LED Matrix side. You'd need to work out some kind of arrangement for updating updating the display. A high speed UART or SPI bus might be enough. Maybe even USB HID packets.

 

A part with DMA might be useful to help ease timing requirements for the updating of the display and the input of a new frame.

 

And of course you'll need to select a part with enough RAM to buffer the screen. Maybe double if you wanted to double buffer to remove frame sync issues.

 

Also I wish our stop lights did this. We only just got new ones in our CBD which change from a green man to a 25 second yellow countdown. Great if you want to sprint across the road before it turns red again.

Share this post


Link to post
Share on other sites

There isn't much reason to use an MSP, because the energy cost of the LEDs is so high that optimizing power on the MCU seems like a drop in the ocean.  You're probably better to use one of the many open source projects that implements frame buffering for LED matrices.

Share this post


Link to post
Share on other sites

I am on a slow connection, so can't see what "this" is at the moment - but from the comments I surmise it is some sort of interactive LED matrix display.

 

If you want a 32x32 RGB LED matrix without using smart pixels,

something like this might fit the description: https://www.adafruit.com/products/420

(Not intended as advertising - they are available from a number of sources.)

 

The display panels integrate shift registers/drivers, so pin requirements are more modest.

 

There are drivers for these on a number of platforms, including Arduino

https://github.com/adafruit/RGB-matrix-Panel

 

I ported the Arduino driver to work on Energia with Tiva/Stellaris (haven't set up a proper thread for it yet).

 

But also drivers for Teensy 3 http://docs.pixelmatix.com/SmartMatrix

Beagle bone black: http://www.nycresistor.com/2013/09/12/octoscroller/

(kinda neat - uses the auxillary processor, can drive a bunch of panels)

Raspberry Pi (link is around here someplace)

Arduino Due

 

MSP430 certainly has the speed to drive one of these panels (how much color depth you get - well).

Share this post


Link to post
Share on other sites

I am on a slow connection, so can't see what "this" is at the moment - but from the comments I surmise it is some sort of interactive LED matrix display.

It's a traffic light with the usual lights replaced with 32x32 LED matrices (so the red and green matrix do not overlap, as with RGB matrices). The matrices are used to display dancing men.

Share this post


Link to post
Share on other sites

Do you want to make your own matrix or get one with the driver?

If you want to make one, I would suggest using one of the following driver chips: TLC5940, TLC5947, or HT1632C (there are more to choose from of course.)

TLCs are expensive, but include PWM. You have to take care of multiplexing however. To build 32x32, you would need 8 TLCs

HT can drive 32 rows and 8 cols at the same time, but it's only on/off so PWM is up to you (I am not sure if the display in the video uses grayscale or not.)

So, you could use CC2500 or similar to receive data, and MSP430G2553 as MCU (should be fast enough, especially if you don't use grayscale or 4bit for example.)

 

As for the camera, there are many serial camera modules available (OmniVision has a nice selection.) Find one that can scale image and output it in a small format, like SQCIF.

MSP430G2553 should be able to process SQCIF at a decent frame rate and pass it on to CC2500. If not, any MSP430 from F5 series will have no problem doing it.

Share this post


Link to post
Share on other sites

I came across this reference design tonight based on the TLC5958.

 

TI made a prototype unit to prove things would work and here is a video demonstration of it.

 

There are 4096 HT-B3053FCH RGB LEDs on it.

 

Mouser will give you 4096 of them for $0.211/each.

 

Approximate BOM cost is ~$1000 for a 64x64 Full Color (RGB) LED matrix.

 

Watch the video to see the refresh rate. Impressive.

 

No, I don't know if it uses an MSP430 to run everything.

Share this post


Link to post
Share on other sites

This seems to be using a Raspberry Pi to drive the LEDs if you look carefully at the flow chart in the "Making of" associated video...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now