Pages: [1] 2 3 ... 5   Go Down
Author Topic: Around 50 RGB Leds... Possible???  (Read 4021 times)
0 Members and 1 Guest are viewing this topic.
France
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
Wiring Board owner
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello,
I began a project here: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1207502723/5#5

I'm stduying technics about control around 50 RGB LEDs

Do I need more than one LED Driver like that : http://www.arduino.cc/en/Tutorial/LEDDriver   ???

What kind of LED must I buy??
I found a lot but several seem to have a blinking circuit (I don't need that,I'll control it with max/msp probably... via serial or other way)

Logged


France
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
Wiring Board owner
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

any ideas?
advices?

I'm a little lost..  :-?
Logged


0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 66
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Well, im quite the noob myself, but i plan to control 4 TLC5940 LED Drivers thru max/msp, and that way have 64 LED:s under my command. All thru serial programming, i still havent really figure out how to access the different drivers etc. though..  But thats a tip for you anyway, the TLC5940 can have 16 induvidual channels for LED:s.
Logged

France
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
Wiring Board owner
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

wow
it seems to be a great thing.  smiley-grin

did you already buy and test it?
Logged


0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 66
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

The TLC should arrive today or so, but theoreticly it should work. Just have to figure out how to drive it entirely thru max, with serial.
Logged

France
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
Wiring Board owner
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

ok steffensen,

and how does it go with Arduino Board (or Wiring board) ??
Logged


Copenhagen / Denmark
Offline Offline
Edison Member
*
Karma: 5
Posts: 2360
Do it !
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

The 4794 IC can only control 8 LED's and not RGB LED's.

You can connect many 4794 together to control more Led's with 4 Arduino pins.

Try to search the forum for info on controlling many RGB LED's it has been discussed serveral times.

The short version is that you have to consider each RGB LED as 3 individual LED' s and control them that way.
Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 66
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Pretty much like the link u provided above, and here is a little more information about the TLC:
http://www.arduino.cc/playground/Learning/TLC5940
Logged

France
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
Wiring Board owner
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

ok.
but for the newbie, it isn't easy.

I mean: does it exists examples, tutorial?

I have to buy one TLC? or more for my future 50 RGB Leds ?

Logged


France
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
Wiring Board owner
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

http://www.arduino.cc/en/Tutorial/ShiftOut

It may be the solution.

are my 50 RGB Led's = 50*3 Leds ??
Any advice to control RGB Leds? I mean, I found a lot of different RGB Leds. Have you pre-requisites in order to make me controlling all R, G & B channel?  I only want to have around 4 or 5 colors... no more.
Logged


Bangalore, India
Offline Offline
Jr. Member
**
Karma: 0
Posts: 77
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

The MAX7219 is a popular choice for driving up to 64 LEDs.

Assuming your RGB LEDs are actually 3-LEDs-in-one, with 4 legs, then 3 x MAX7219 would do the trick
(one 7219 for Red, one for Green, one for Blue).

150 LEDs switched on simultaneously is going to use a lot of current though.  In the worst case (all directly connected to the supply) 150 of them @20mA is 3 Amps!  The 7219 time-multiplexes them very quickly though, so you don't see them flicker, but even then with all 64 LEDs on the datasheet says it draws 330mA.  So you should supply at least 1A to your circuit overall.

Code and tutorial here http://www.arduino.cc/playground/LEDMatrix/Max7219 plus plenty of others around the web.  You need to make sure you initialise all the registers properly in your code before you do anything else.  I also recommend putting a 10k pull-down resistor on each of the 3 inputs to the chip.

Some further reading (based on basic stamp but the principles are transferrable):

http://www.parallax.com/dl/docs/cols/nv/vol2/col/nv70.pdf
http://www.parallax.com/dl/docs/cols/nv/vol2/col/nv70.pdf
http://www.parallax.com/dl/docs/books/sw/exp/sw29.pdf


Alternatively if you feel like spending US$650 (or can negotiate bulk discount) you could use 50 BlinkM's communicating via two-wire interface.  This would be super-easy to wire up: just an arduino, the BlinkMs and some wire.  Sparkfun have them http://www.sparkfun.com/commerce/product_info.php?products_id=8579

Logged

France
Offline Offline
Jr. Member
**
Karma: 0
Posts: 87
Wiring Board owner
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

thanks a lot mungbean !
I begin to understand the tips..
in the http://tomekness.files.wordpress.com/2008/01/max7219_tutorial_pre_c.pdf we can understand that

I need to know if I'm right:
with this tip, I can drive 64 monochrome LED with one max7219.
For 64 RGB LEDs, I need 3 max7219.
Conceptually, if I want to make one led of the matrix :
- blinking in red or b or g
- change from red to blue
etc
will it be possible??

I guess I'll have to code a function that "convert" data from max/msp in data understandable by the Arduino (or wiring) board.
Logged


0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 66
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

As i havent started testing this myself yet, i cant really much advice, but this seems useful regarding max:
http://www.milkcrate.com.au/_other/downloads/max_patches/Three_595s/

And of course the playground:
http://www.arduino.cc/playground/Interfacing/MaxMSP

The maxduino (a really good patch imo) seems to do most of the basics, but im not sure how i will have to edit it for work with registers, perhaps a combo of the "three_595s patch" and the maxduino would work.

Keep us updated how u get along. smiley
Logged

Bangalore, India
Offline Offline
Jr. Member
**
Karma: 0
Posts: 77
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
I need to know if I'm right:
with this tip, I can drive 64 monochrome LED with one max7219.

For 64 RGB LEDs, I need 3 max7219.

yes, and yes.

Quote
Conceptually, if I want to make one led of the matrix :
- blinking in red or b or g
- change from red to blue
etc
will it be possible??

Yes.

I'm assuming you'll use RGB LEDs like this one: http://www.sparkfun.com/commerce/product_info.php?products_id=105

It has 4 legs, one is common and the other 3 are for red, green and blue.  So it's effectively 3 LEDs in one package.  If you want red, you turn on the red and turn off green & blue.  Same for G or B.  Magenta is R+B, Cyan is G+B, white is R+G+B, and so on.

With the MAX7219 you can turn individual LEDs on or off.  Or you can vary the brightness of all of them at the same time.  You wouldn't be able to vary the brightness of individual LEDs (unless you went for the the expensive BlinkM option).

Changing from red to blue just means turning off the red LED and turning on the blue one - which is controlled by a separate 7219.  So you would have to send commands to each chip.

Blinking LEDs would be done by turning them off and on in the arduino's software, using its timing functions.

Quote
I guess I'll have to code a function that "convert" data from max/msp in data understandable by the Arduino (or wiring) board.

You haven't said what configuration your LEDs will be in, but since there are 50 I'm assuming it's not a matrix.  (the 7219 often drives an 8x8 matrix.)

Nevertheless you might find it helpful to represent the LEDs in each display as binary numbers, where a 0 in the number means off and 1 means on.  This is known as a bitmap.  You could have 3 x 50-bit binary numbers to represent your whole display.  Since 50 bits takes up 4 bytes anyway, in practice you would have 3 x 64-bit numbers, which you can send from Max/MSP to the arduino through Max's serial object.  Then read in the numbers on the arduino using Serial.read() and send the relevant commands to the 7219.

Hope this is starting to make sense!




Logged

0
Offline Offline
Jr. Member
**
Karma: 0
Posts: 66
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Is it possible to drive the TLC5940 in the same manner?
Logged

Pages: [1] 2 3 ... 5   Go Up
Jump to: