Netduino home hardware projects downloads community

Jump to content


The Netduino forums have been replaced by new forums at community.wildernesslabs.co. This site has been preserved for archival purposes only and the ability to make new accounts or posts has been turned off.
Photo

Controlling several RGB LED strips


  • Please log in to reply
7 replies to this topic

#1 MattCotterellNZ

MattCotterellNZ

    New Member

  • Members
  • Pip
  • 4 posts

Posted 11 October 2012 - 12:45 AM

Hi guys! .NET MF newbie here, looking into the viability of building on this platform. I have a project which requires me to power (approx) 8 different RGB LED strips per Netduino (approx 30cm worth each), for a project showing the current presence status of each of the people in the office (communicated to the Netduino via Ethernet). The LEDs are placed inside a wooden block that lights up a clear pane of acrylic with each office member's name in it. I'm hoping to take advantage of PWM to make the LEDs 'throb' in certain cases, such as when the user is on a call, or is currently busy. I'm also hoping to power even more than 8 strips per Netduino, however I know this might not be possible. My question is: can this be easily achieved using what's on offer for Netduino (or other Arduino/Gadgeteer-style .NET MF devices)? Is there anything I need to use in particular, LED voltages I should be aware of, etc? Thanks for your input! Matt

#2 ransomhall

ransomhall

    Member

  • Members
  • PipPip
  • 12 posts
  • LocationBurlington, VT, USA

Posted 11 October 2012 - 12:38 PM

Matt -

Sounds like a fun project! I've been playing with LEDS on Arduino and NETMF boards for several years and never get tired of the fun.

So... what kind of LED strips are you planning to use? The answer to this will drive the answers to most of your questions.

On LED voltages - strips generally come in two flavors: 5V an 12V. While you *can* power the 5V version directly from a microcontroller, you will quickly use up all the current the board has to offer with anything over a couple of meters. Again, this depends on the strip specs. The best (and safest) bet is to design your circuit assuming the LEDs are separately powered.

It sounds like you are assuming the strips will be in parallel, with one PWM channel per strip. There are not eight PWM channels on any of the boards you mention. The Netduino has 4, so you would need two. You would have to find an external chip or board that has enough PWMs (like this which is overkill IMO).

Take a look at the strips that use LDP8806 or WS2801 controller ICs. These are pricier, but let you control each LED individually, so you could have all eight office monitors in series from *one* SPI channel (hence controlled from one micro). These strips also can be cut at intervals, so you can space out your blocks. This assumes you don't mind having all eight wired together in series.

There are various controller boards out there specifically designed to drive LED strips. You may be able to find one that suits your needs which itself can be controlled via UART, SPI, or I2C. The one I use is made for one long strip, however, and not many short strips. It handles the power nicely and can be controlled via plain old serial COM.

I suggest going with one long strip with embedded ICs where you can control each LED. This will keep the design simpler. If you want to stick with the parallel block arrangement, look for a PWM controller board that can itself be controlled from a Netduino or other micro. The final design will ultimately depend on how these blocks will be physically arranged.

Have fun and don't be shy asking lots of questions here.

#3 MattCotterellNZ

MattCotterellNZ

    New Member

  • Members
  • Pip
  • 4 posts

Posted 12 October 2012 - 01:05 AM

Thanks for the info ransonhall, that goes a long way to helping out! I definitely have to use several shorter LED strips, the strips are to be mounted into the blocks and the blocks placed next to each person's desk. Having one long continuous strip won't work here sadly! I'll go for the 5V variant, I think, however powerign them separately isn't a bad idea. How would I go about achieving this? The IO60P16 Module actually doesn't look like too much of a bad option. It's overkill, sure, but not too expensive and probably does what I need it to. I can see there's an arrangement of PWM outputs on this module in sets of three: are each of these individually controllable (i.e. can I control 16 different RGB LED strips with this board, or just five)? Can I use more than one module per Netduino Go? Again, thanks for your help, this is easily the biggest project I've done on either an Arduino or a Netduino, the advise is much appreciated! Matt

#4 ransomhall

ransomhall

    Member

  • Members
  • PipPip
  • 12 posts
  • LocationBurlington, VT, USA

Posted 12 October 2012 - 01:33 AM

Thanks for the info ransoMhall, that goes a long way to helping out!

I definitely have to use several shorter LED strips, the strips are to be mounted into the blocks and the blocks placed next to each person's desk. Having one long continuous strip won't work here sadly! I'll go for the 5V variant, I think, however powerign them separately isn't a bad idea. How would I go about achieving this?

The IO60P16 Module actually doesn't look like too much of a bad option. It's overkill, sure, but not too expensive and probably does what I need it to. I can see there's an arrangement of PWM outputs on this module in sets of three: are each of these individually controllable (i.e. can I control 16 different RGB LED strips with this board, or just five)? Can I use more than one module per Netduino Go?

Again, thanks for your help, this is easily the biggest project I've done on either an Arduino or a Netduino, the advise is much appreciated!

Matt


I may be confused. Is each block going to have its own controller (Go or other)? If not, you would have an awful lot of wiring going from a single micro to blocks on many desks. There are distance limitations for low power signals like those used to power LED strips, not to mention it would probably be impractical to run wires all over the place.

On power, you can power the micro and strip separately as long as they share ground.

Gadgeteer modules will not yet run on a Go. There is an adapter in the works, but it is not released yet (November maybe?). See other posts on this forum for details. I'm not sure if you could use more than one IO60P16 on a Go adapter. In theory, as long as there is more than on I2C socket type on the adapter, the answer is yes, but that is a lot of "theory" that needs to be tested.

You should be able to control 16 PWM signals from the IO60P16 module.

Start by picking the LED strip you are going to use, THEN design your project around it. It will help immensely to have a datasheet in front of you when pondering your design and asking Qs here.

#5 MattCotterellNZ

MattCotterellNZ

    New Member

  • Members
  • Pip
  • 4 posts

Posted 12 October 2012 - 03:46 AM

ransoMhall

My bad!

I may be confused. Is each block going to have its own controller (Go or other)?

The LED blocks are going to be 'dumb', we're hoping to fit RJ45 jacks onto the sides so we can connect them to the central Netduino easily (and maybe it's own power, if that's how it works!). The block won't consist of much more than the wood base, the acrylic, and the LED strip.

We actually have about 40-50 people in the office: if the pilot goes well, we'll be employing the use of several Netduinos connected to a central PC via Ethernet (each with it's own set of blocks it's responsible for). The central PC will be responsible for sending updates to the Netduino(s) as to what blocks to light up with what status.

If not, you would have an awful lot of wiring going from a single micro to blocks on many desks. There are distance limitations for low power signals like those used to power LED strips, not to mention it would probably be impractical to run wires all over the place.

My apologies, I may have mislead you there. These are actually to be attached to the roof, so wires all over the show isn't a problem (they'll be running through the roof). I'm hoping to repurpose some rolls of CAT6 UTP cable we have lying around for this job.

On power, you can power the micro and strip separately as long as they share ground.

How would strips like this work? If there is constant 5V power seperately going to one pin, how does the PWM come into this (so we can control the colours/have glowing effects)? Sorry if this makes me sound stupid, still learning the viability of these approaches! :)

Gadgeteer modules will not yet run on a Go. There is an adapter in the works, but it is not released yet (November maybe?). See other posts on this forum for details. I'm not sure if you could use more than one IO60P16 on a Go adapter. In theory, as long as there is more than on I2C socket type on the adapter, the answer is yes, but that is a lot of "theory" that needs to be tested.

You should be able to control 16 PWM signals from the IO60P16 module.

Ah, that is unfortunate. Still, I might be able to take other approches. I'll keep an eye out on the forums on how I'll tackle this one.

Start by picking the LED strip you are going to use, THEN design your project around it. It will help immensely to have a datasheet in front of you when pondering your design and asking Qs here.

That was mostly the point of this thread: finding out what things I need to consider when picking this LED strip. This has given me lots to ponder, hopefully I will be able to make a well-informed decision by the end of the weekend!

Matt

#6 Nevyn

Nevyn

    Advanced Member

  • Members
  • PipPipPip
  • 1072 posts
  • LocationNorth Yorkshire, UK

Posted 12 October 2012 - 05:54 AM

That was mostly the point of this thread: finding out what things I need to consider when picking this LED strip. This has given me lots to ponder, hopefully I will be able to make a well-informed decision by the end of the weekend!

I believe that some of the LED strips with their own controllers per LED can be cut to size.

Digitally Addressable LED Strip


Regards,
Mark

To be or not to be = 0xFF

 

Blogging about Netduino, .NET, STM8S and STM32 and generally waffling on about life

Follow @nevynuk on Twitter


#7 ransomhall

ransomhall

    Member

  • Members
  • PipPip
  • 12 posts
  • LocationBurlington, VT, USA

Posted 12 October 2012 - 12:02 PM

Matt -

I did a little googling on PWM signal distance limitations. Check out this thread. To quote "Rule of thumb for a typical logic signal is 12-18 inches..." I'm no expert on transmission line theory, but I'm 99% sure you won't be able to run long wires "through the ceiling", or anywhere else over two feet away, for a PWM signal. Your desktop lights are going to have to be smart :)

#8 MattCotterellNZ

MattCotterellNZ

    New Member

  • Members
  • Pip
  • 4 posts

Posted 18 October 2012 - 01:48 AM

Matt -

I did a little googling on PWM signal distance limitations. Check out this thread. To quote "Rule of thumb for a typical logic signal is 12-18 inches..." I'm no expert on transmission line theory, but I'm 99% sure you won't be able to run long wires "through the ceiling", or anywhere else over two feet away, for a PWM signal. Your desktop lights are going to have to be smart :)


Sounds about fair. I'll look into the process of using these instead then, see what we can source over here in New Zealand. I'll let you know how I get on!




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

home    hardware    projects    downloads    community    where to buy    contact Copyright © 2016 Wilderness Labs Inc.  |  Legal   |   CC BY-SA
This webpage is licensed under a Creative Commons Attribution-ShareAlike License.