Digital LED Strips

There seems to be a lot of interest in LED Strips recently.  They come in 2 flavors. Some describe them as "Analog" or "Digital".  I think "Smart" and "Dumb" strips might make it a little more clear!  

Some strips contain lights that are hooked together in parallel.  You can change the RGB value of the LEDs, but it happens to all of them.  They are not addressable individually.

Then we have the "Smart" LED Strips.  These will allow you to send a specific RGB value and intensity to each light!   You can cut these strips anywhere between the contacts and make another smaller strip from it.  Amazing!  But how can they do that?

These strips are using a serial connected controller called the WS2801.  What happens is as the serial definition is sent down the line, each LED takes a segment off, runs the values in the WS2801 and passes the rest (minus the one he took) to the next WS2801 chip.

So, in simple terms, if you had 5 lights and you wanted them to be "ON, OFF, ON, ON, OFF" you would send a serial string that looked something like 1,0,1,1,0 down the line.

The final result is something like this: