Hacker News new | ask | show | jobs
by fullstop 2107 days ago
I made lights using ws2812b leds and simulated sunrise, sunset, and a dim blue throughout the night.

I used ws2812b leds, wemos d1, and a level translator since the d1 has 3.3v gpios but ws2812b technically requires a 5v signal.

2 comments

I’ve been looking at something like this myself, did you use RGB, RGBW, RGBWW, RGBCCT or what to dynamically set the warmth of the light? I got really confused when I started looking into all these different types
I used rgb but would like to try RGBW in the future because to get bright white on the current strip it consumes about 60 mA (@5v) per led. That's 20 mA for R, G, and B.

I have two rows of 32 lights, so a beefy supply was needed along with a few places where VIN was fed to the strip.

That sounds awesome, can you do a write-up about it please?
For the software part, WLED [0] really does just about anything you’d want to do with those led strips.

I drive the wemos d1 and led’s from a 12V battery with a 12-5V stepdown converter. I attach the 5V to the esp and the led’s. The 3.3V logic level works on the first led and is repeated at 5V to all subsequent led’s.

[0] https://github.com/Aircoookie/WLED

Apparently 3.3v doesn't always work with the strips, and newer ones are less likely to work, especially if you're working with a lot of lights.
My assumption was the each individual led chip will re-transmit the signal to the next led, which in effect will turn the 3.3v signal into a 5v signal between the 1st and subsequent leds.

The power lines do sustain voltage drop over longer sections, so you'll want to add extra power every few meters.

Right, that is exactly how it works. If your signal to the first IC isn't perfect, and it isn't with a 3.3v signal, you can end up with incorrect colors or shifted patterns.

As you add more LEDs you have a greater chance of one at the end not lighting up or having incorrect colors throughout the string.

0.7 * 5v == 3.5v, and 3.3 < 3.5. You're out of spec for the part and can't expect it to work reliably.

I'll see what I can do.