’Tis the season for soldering! At least at my house. My son and I made some fairly LED-laden gifts for the immediate relatives last year, and he’s got the blinky bug. We were brainstorming what we could make this year, and his response was “I don’t care, but it needs to have lots of LEDs”.
It’s also the season for reverse engineering, apparently, because we’re using a string of WS2812-alike “fairy lights”. These are actually really neat, they look good and are relatively cheap. It’s a string of RGB LEDs with drivers, each dipped in epoxy, and run on a common three-enameled-wire bus. Unlike WS2812s, which pass the data on to the next unit in the line and then display them with a latching pulse at the end of a sequence, these LED drivers seem to count how many RGB packets have been sent down the wire, and only respond to their own number.
This means that if you cut up a string of 200 LEDs, it behaves like a string of 200 WS2812s. But if you cut say 10 LEDs off the string, where you cut them matters. If you cut it off the front of the string, you only have to send 10 color packets. If you cut them off the other end, you need to send 290 dummy packets before they even start listening. Bizarre, but ’tis the season for bizarre hacks.
And finally, ’tis the season for first steps into “software architecture”. Which is to say that my son is appreciating functions for the first time in his life. Controlling one LED is easy, but making a light show is about two more abstraction layers on top of that. We’ve been having fun making them dim, twinkle, and chase so far. We only have two more weekends, though, and we don’t have a final light show figured out yet, but after all, ’tis the season for last minute present hacking.
I tried to get a set of WS2812 compatible fairy lights to decorate something for my mother. Previous years I used non-RGB multi-colored fairy lights and they just weren’t quite what we wanted. I was quite surprised however, when the lights arrived, and they only had two wires. They were still addressable RGB LEDs, but they were doing the signalling over one of the power wires.
Being short on time, I didn’t put any effort into trying to control them, I just went with the built-in controller. I had been hoping to use WLED, but that doesn’t seem to be an option now. Oh well, they look nice, better than the ones from last year, and I really don’t need them to be programmable.
Those are even stranger!
https://hackaday.com/2022/01/31/reverse-engineering-a-two-wire-led-strip-protocol/
points to
https://hackaday.io/project/183709-powerline-controlled-led-strings
points to
https://cpldcpu.com/2022/01/23/controlling-rgb-leds-with-only-the-powerlines-anatomy-of-a-christmas-light-string/
I have a second set, as well as some excess I trimmed off of the set I used. I should see if I can’t work out something to control them. Interestingly enough, they are the larger blobs like in this article, than the small ones in the two-wire article. The size was part of the reason I assumed three-wire, I had just seen Big Clive examine some that looked quite similar, but were essentially WS2812.
Interestingly enough, when I bought them, the listing also had the option of several other sets that were similar but each with a different controller, and at a much higher price. I suspect they were the ones I was expecting.
Hey I recognize that picture and that blog link! Thanks for the reminder, Elliot, I gotta go find those LED strands now
:)
Yours was one of the good resources I found when I was poking around on how to drive them. So thanks back!
Sounds like you are creating some wonderful holiday memories with your son. Happy hacking!
LEDs are cold. I’ve never liked them on christmas!
I still do use oldstyle incandescent lamps for christmas light chains.
The warm light is totally worth it to me. Christmas is all about warmth and coziness, after all.
I think you would like this video ( spaced between https:[] //so it isnt a link https: //www.youtube.com/watch?v=qSFNufruSKw ->Technology Connections 7 year search for warm Christmas lights on YouTube.
Maybe in one half of the globe. In the other half we are trying to stay as cool as possible!
Little correction: christmas is not about warmth and coziness, it is primarily a birthday party. Warmth and coziness are only a byproduct.
I’m afraid I’m with technology connections Alec on this. LED fairy lights generally look awful. The phosphor ones aren’t quite as bad, but the vast majority with their overdriven bright blue and bright green LEDs look all wrong. Christmas is supposed to be red coloured in the main not garish
I seriously doubt these lights “remember their address” while still being WS2812 compatible. The simpler explanation is that OP is doing weird things with their arduino and doesn’t realize it.
Interesting assumption. How do you explain that a different person on the linked blog post made exactly the same discovery about these LEDs (3 years ago)? The blog also list even more sources that confirm this.
I have a 400 LED ‘curtain’ which is mechanically laid out as 20×20 LEDs. There is a bus that runs across the top and each strand taps off of that to connect the 20 LEDs they contain. Every LED is in parallel. The ‘taps’ at each column are just parallel connections for power, data, and ground.
You can test for continuity between the input data connection and the bottoms of any of the columns data lines. Each LED has a separate address. I had assumed noone would be insane enough to make such a system and that surely there was some clever device at the top of each column that was doing some kind of clever manipulation so that each of the 20 strands could be a normal strand of WS2812B LEDs. But that’s not the case. They are all in parallel.
Each LED controller knows how many inputs to ignore before it keeps one. They may use the same on the wire protocol, but the way they operate is unlike the giant shift register method that WS2812B LEDs use.
Unless I, my DMM, and my scope were all halucinating, that’s how these work.
Every desk in the lab at tech school had a high voltage dc supply, about 380v dc from memory, (for valve circuitry) with a circuit breaker on the front wall. so we just had to populate every desk hv outlet with colored LEDs and wait for the instructor to come in and power on all the breakers…. twas a beautiful sight burning balls of plastic arcing up like fireworks everywhere. it blew the tops right off the LEDs and launched the glowing ball of colored plastic several feet up into the air. we were in so much trouble.
A shop called KNOW SHINE on ALI sells “5V 5cm Spacing +/Data/Ground/Return as the 4 wires Dreamcolor Christmas Lights Addressable WS2812B RGBIC Lighting”. The return line lets you bring the data signal from the last LED in the string back to the start end of the string to connect on to the next string. These are great for projects like vertical sets of strings arrayed around a cone that all meet up on the top. Or a controller in the middle with two horizontal strings out in either direction. They are pretty popular with the WLED folks.