There are about 100 patterns, according to the prebuilt controller. Capturing the waveforms and playing them back is something we were going to try, but I had to leave town before Ian (from Dangerous Prototypes) came back with his Bus Pirate :-).

Building a completely custom controller and running custom patterns on these LEDs is kinda the point, if I can't do that I might as well use the built-in controller.

Any chance of getting some more samples of the controller output please? I know you said that the controller sends a burst of data then goes quiet but are the couple of examples you posted the entire output of one controller program select or just a subset?EDIT: More questions,If you listen to the DAT/CLK lines when the unit is doing a chase (assuming the controller does this) is the data continuous/repeated between controller and first chip and if not what about between nth & nth+1 chips?

It's a little tricky, my friends with the logic analysers and oscilloscopes are in Amsterdam and I'm now in Las Vegas (and not returning to Amsterdam until at least next year.) I'll check out SYN Shop (the Vegas hackerspace) and see if anyone there can help.

The first dump is the whole output; the second is a subset but it repeats like that the whole way. I know it would help if I could get video of the patterns synced to the logic analyser dumps and I'll try for that.

Ok, I was hoping for more examples because I am wondering if it's just plain old serial. It does not look like one leg is a clock for data on the second leg. Maybe one wire sends the speed and the other the pattern as a 7 or 8 bit RS232 serial with one start & one stop bit?

thefloyd

Doesn't explain the odd timing/waveforms, however when I was reading the datasheet for the PCA9626 chips they had a "go off and do this" mode for things like blinking/dimming and (perhaps, don't remember offhand) chasing.

Perhaps that's why the controller has a short burst of activity - it may just set the parameters and tell the D7001/D7002 chips to go off and do something. These strips may actually be more intelligent than the long chain of shift registers that the WS2801, LPD8806, and other strips are essentially made up of.

Emmeran

I can tell you guys a bit more about what I found out myself. At one point I pretty much figured out the entire mechanism behind it, it's very unusual (at least to what I'm used to).

Unfortunately this is quite some time ago and I'm unsure if I still have any of my documents to this. In the end it turned out that this strip is useless for anyone who want's to address single LEDs fast.

There is one command that just shifts in a new color from the left but there's no latch, so the shift is done at once. The frequency you can do that with is not satisfying since when you go to the max (which I belive was something like 30 Hz for 5m) you get weird artifacts due to the missing latch. Also you cannot shift any color, but only red, green or blue or any on/off combination of those (yellow, white, etc.).

To get PWM you have to send another command where you make the strip mix all of it's current colors with the neighbouring color to the right or the left. And there's some other stuff, mixing segments of the strip etc.

If anyone is seriously interested, I can look for the documents, I might still have them on another PC.

In general I got to the conclusion that this strip is absolutely useless for anything else than what the controller that comes with it does. So if you just wanna light your room this one might be for you, but if you want to address each LED to display something then you should go for a different strip, which is also what I did.

My strip now serves as a remote controlled ceiling light for a friends living room.

PS:There's no data/clock line. It's more like two intermixed serial lines with varying bit times within the single bits. And also command and value bits are mixed. It's a huge mess.

Emmeran

Well it's not the standard serial either. And in my opinion the strips are completely useless for anything else than decoration. You could disassemble the controller and try to use it as a remote switch maybe.

In another project I disassembled a cheap remote control for airplanes and found a very similar looking protocol (if you can call it that), so maybe it's some weird china standard that I don't know about.

Here's the old pde file from the software I wrote. Not sure if it's the newest version, but it contains some of the defines and timings.

It took me quite a long time of fiddling with my oscilloscope, simply trying out all possibilities and combinations and some logical thinking to come up with the stuff. I think I had a better documented file as well, I'll have a deeper look later.

Warning:some of the information in the document is probably conflicting and outdated.