LPD8806 RGB LED Strip - Reverse Engineer (with pics) questions/feedback

Cranium,

Thanks for the information, I thought the Data and Clock lines were passing thru and it is not the case each LPD8806 must push them to the next like a daisy chain. I will keep looking the code but then the protocol might be like sending the RGB data and then a latching command which will now allow go to the next controller and so on. I imagine that when the last pixel is reached there must be some kind of unlatch command so the first pixel is enabled again to receive the data.

Jose

Glad to help. Helps me learn more about it as well.

As I understand it:
When data is sent down the line, an IC will fill its buffer then start shifting data to the data out line regardless of whether there is actually another IC after it. Once the data transfer has been completed, it will then send up to 3 bytes of zeros to tell the ICs to latch the output pins. There is no unlatch command. It will then automatically start accepting SPI data again to fill the buffers of the ICs.

Thanks , I am having a clearer picture now as what you say seems to be exactly what the show() function does. Then, lets say I want to control pixel number three, I will need to send 9 bytes, 3 for the first IC, three for the second and the last three will go to pixel 3. However, the show() routine will go to ALL the pixels , then I imagine I will send unchanged data to the pixels I do not want to undergo any change.

In summary, even if I want to modify the color of pixel three, the routine will fill ALL the pixels with data then I need to keep same value for the pixels I want to leave unchanged. The more difficult to understand is the latching; provided there are less than 128 pixels, show() will send three zeroes at the end of the sequence. Then it must be that when the first chip receives 3 consecutive zeroes , it will latch and pass them thru and so on and so forth until the last chip. But if there are 128 to 192 pixels in the strip, then show() will send SIX zeroes at the end of the transfer. So the total number of pixels seems to affect the way the latch command ( zeroes) is decoded.

Thanks !

These have been very helpful posts. I imagine I might have some questions about sourcing and part selection in the near future.

I just ordered a 1m strip from adafruit. I also ordered a bunch of single led modules/pixels from Bliptronics. I plan to experiment with everything I have and see what works/looks best for that various projects I have in mind. In the mean time I'd love to hear any progress you guys have made.

Have you any of you seen this: http://www.passion-ledlighting.com/
Basically a Chinese knock-off of the Color Kinetics/Philips iColor Flex line: http://www.colorkinetics.com/ls/rgb/
Color Kinetics is basically what's being using in big video displays at many concerts and sporting events.
I have no idea about pricing for either one, but might look into it.

With some luck a friend of mine may be able to get his hands on some of the Color Kinetics LED strings and the PSU/Drivers and Video software to run them. These use a 3 conductor wire. I am not sure what protocol they use or how they work exactly. Best I can tell all the nodes are in parallel. They seem to be limited either by power or data restrictions to less than 72 pixels per strand. They get around this by having psu/driver units that can handle many strands. And then the drivers can be daisy chained in a rack set-up via ethernet. For one of the big video screens you might see at a show, they could have entire racks of power/driving electronics. I'm not interested in doing any hi-res video, so this shouldn't be an issue for me. One cool thing about the strands is that they are very weather proof, and you can place the pixels at any point on the wire. They essentially have little teeth on them that pierce the wire strand. I think attention has to be paid to sealing any open puncture holes. This stuff can get very expensive. I'm mostly interested in seeing if I can drive these LEDS using an Arduino.

So found this schematic of the LPD8806 chip, granted its in Chinese of course, but I have a question about the pins below. I am purchasing my own chips and own SMD RGB leds and making my own setup, but unsure how to hook up.

Firstly, why is there a ground (GND) pin on both sides? Do both need to be connected to ground?

Secondly, what do the PMODE, NC and OMODE pins refer to and what are the needed for when hooking up these chips?

THANK YOU!

I took a chance and purchased 20m of LPD8806 based LED strip from a China manufacturer. I had to do a wire transfer of funds and was very hesitant to do so since I have very little recourse if the product was sub-standard, didn't operate like I expected or I never received it.

But I was pleasantly surprised at the results. These are the exact same strips found on Adafruit for less than 1/2 of the cost. :slight_smile:

I have one of the two strips running with the same code I used from my previous project using the 2m I bought from Adafruit. I need to get a PC power supply rigged up to provide more amperage to run all 320 RGB LEDs on both strips and get my office lighting project built.

The company I ordered from is http://www.gree-leds.com/.

So I screwed up the two 5M strips I bought. Totally my fault. I put my power supply in series mode to get more from it but didn't adjust the voltage prior to pushing the button. I fried the strip and my arduino!

The second strip was after adjusting my voltage down to 5v but not realizing (nor was it well documented) that the display showed only 1/2 of the voltage in each so in actuality I was feeding 10v to the strip. GRRRRRRRR. Another strip fried but the arduino survived. I didn't realize what was going on until I put a meter to the output of the power supply.

So now I have 10M of the LPD8806 strip that doesn't work. Another project for myself is to fix these at some point. I already have plenty of ICs and plenty of 5050 RGB LEDs but have to figure out how to isolate the bad chips and replace just those. Fun, fun.

In the meantime, I ordered and received another 25M of these strips (5 - 5M spools). I got these all tested out and they are working great. I also hooked up two in series (both strips powered from both ends but data lines fed from one to the other) and the arduino controlled all 320 lights with no problem in any of my lighting routines.

I also bought a 20A, 5V power supply from eBay that is powering both strips very well. :slight_smile:

Anyhow, I was thinking of selling some of the latest order if anyone is interested. It would be the exact same as what is bought off Adafruit but cost much less. Not sure if I'll just throw them on eBay by the spool or by the meter yet.

can you sent for me about code program in arduino for drive two LED bar adversely with ULN 2803

Hello everybody!!
I bought a LED stripes a month ago from this website www.lampadadiretta.it but I don't know how to use it.
On this website the product is not anymore in the assortment and there are no information about this particular LED. It's a very good italian website for Philips lamps, full of informations but not on this product!
Please help me!

diegocava:
Hello everybody!!
I bought a LED stripes a month ago from this website www.lampadadiretta.it but I don't know how to use it.
On this website the product is not anymore in the assortment and there are no information about this particular LED. It's a very good italian website for Philips lamps, full of informations but not on this product!
Please help me!

Unless you know you have a strip that uses the LPD8806 chips, this probably isn't the place to post - apart from anything else, not many will be reading this thread. You're likely better off creating your own.

Also you're going to have to provide a lot more information - at the very least some detailed close-up photos of all the components of your strip and the connectors, if you don't have a datasheet, and then someone may be able to help.

I thought I'd better chime in on this as I recently read the post by "cranium" and took the chance myself based on that post. I ordered 15 meters of the same 5V RGB LED strip that you can find on Adafruit.com and got them for something like $13 per meter. I was a little concerned about the process since I'd never ordered from China before or used Western Union but it all went smoothly. Just tested them a minute ago and they work perfectly. This is not an add. Just wanted to say thanks and give others a little confidence in buying from the same place. Yay! Thanks.
Here's where they have them listed: http://gree-leds.com/productshow.asp?ArticleID=TS7X2X7VTP

I ordered and received 20M of the same LPD8806 strips for 117 bucks per spool. I hooked it up exactly as the tutorial describes, using an atx ps.and everything ran great by so far.

RB , RG and RR on LPD8806 Stripes has 1,5 Ohm 1R5 for all colors the same ?
Forward Voltage is for red different !
Red 1.80 --- 2.40 V
Green 2.80 --- 3.60 V
Blue 2.80 --- 3.60 V
for HL1606 use Blue - 130, Red - 150 and Green - 180 ohm ?
Forward Current is 20 mA for all colors the same !
somehow confuses me that all !

1r5.jpg

5050.pdf (277 KB)

Hi, I purchased the same LED strip as citlee. Using the library I am able to get the LED's working in sets of three. However, I am having a problem. Only red works. If I set the LED's to blue or green, they do not turn on. Any idea why this is happening? Do I need to change something in the library?

aaron_sky:
I thought I'd better chime in on this as I recently read the post by "cranium" and took the chance myself based on that post. I ordered 15 meters of the same 5V RGB LED strip that you can find on Adafruit.com and got them for something like $13 per meter. I was a little concerned about the process since I'd never ordered from China before or used Western Union but it all went smoothly. Just tested them a minute ago and they work perfectly. This is not an add. Just wanted to say thanks and give others a little confidence in buying from the same place. Yay! Thanks.
Here's where they have them listed: http://gree-leds.com/productshow.asp?ArticleID=TS7X2X7VTP

I can second this. I order a couple from gree-leds and they arrived in under 2 days (which surprised me as I was expecting 1-3weeks).

Cranium, aaron_sky and tekket

I'm desperate to buy the LPD8806 RGB LED strip from Greeleds Electronic Ltd. but I can't find any online store.

Every attempt to email them directly has gotten no response!

Please explain how I can purchase the LPD8806 RGB LED strip from Greeleds Electronic Ltd. as you did.

THANKS

Respectfully sgroen

52pixel/m LPD8806 strip: http://gree-leds.com/productshow.asp?ArticleID=T0PZ386YP6
32pixel/m LPD8806 strip: http://gree-leds.com/productshow.asp?ArticleID=TS7X2X7VTP

Or Contact Britney at sales@gree-led.com.

I'm about to order some of the 52pixel/m strips. Not that I really need them.....just want to play with them. LOL

dreging up an old topic i know, but you never revealed where your got the raw 8806's from, I need a large amount for something that isn't really compatible with buying the strip lights

Whistlerone:
dreging up an old topic i know, but you never revealed where your got the raw 8806's from, I need a large amount for something that isn't really compatible with buying the strip lights

I buy them from China. Just find a vendor on Alibaba.com. I have 200 of them in transit right now ... should be here any day.

Whistlerone:
dreging up an old topic i know, but you never revealed where your got the raw 8806's from, I need a large amount for something that isn't really compatible with buying the strip lights

I have over 100 of the LPD8806's on hand. PM me if you are interested.