WS281x LED Status with NZXT Hue+ Light Strip (type WS2812B)

After hours of trying to figure out what the problem was, I managed to get my left over NZXT Hue+ light strips working perfectly with the WS281x LED Status plugin made by @Charlie_Powell. The reason it wasn't working initially is because I had already tried other plugins like 'RGB Status' and even though they were uninstalled there were still leftover parameters in the boot config.txt file (such as gpu_mem, core_freq, etc). I restored the config.txt file to it's default state (bit more googling) by deleting all non-default entires, some of which were likely still required by 'WS281x LED Status' but I did it anyway. But luckily @Charlie_Powell must have thought of this and when the plugin boots up again it will prompt you to set the required entires back in config.txt.

So for anyone struggling to get WS2812 (or any other LED strips) working properly and trying heaps of different plugins without them just glitching, staying white, etc - give that config.txt file a damn good enema and use the WS281x LED Status plugin.

I now have my NZXT Hue+ light strip (appears to be 5 Volt - printed on the strip input +ve port) running perfectly from the 5V power pins on the Pi (Pi 4B 8GB) and using GPIO 10 for the light data. No clunky separate power supply + cables nonsense - a clean installation which gives heaps of light for my timelapses and remote monitoring.

Test wiring:


1 Like

Make sure you have a good power supply if you do go the route of direct wiring to the pi for power. You risk having undervoltage issues if not.

2 Likes

It is great this is working for you, but you are probably not using the strip "to spec". If you put too many LEDs on the 5V pin, and run them all at full brightness, you run the risk of burning the raspberry pi.

Officially you would also need to "level-shift" the "in" signal to 5V. To control the LEDs, that signal is now alternating between 0 and 3.3V, whereas the strip likely expects 0 and 5V. You could get intermittent failures.

Good news that you got it working! The configuration is designed to be as easy as possible, detecting problems and letting you know as soon as possible.

I do have to agree though, the GPIO pins will not stand for more than a handful of LEDs, especially not at full white 100% brightness. They can draw up to 60mA each, so it doesn't take long for the 1.2A or so rated for peripherals (which includes any USB devices such as cameras) to be used up.

I have this part in the setup guide, WS281x strips data input needs to be 0.7*VIN, so when running at 5V they need ~3.5V to spec. Some strips take it, some don't. I have a few at the moment here, one level shifted and the rest without.

A better solution than to use the 5V pin of the raspberry pi is to use the 5v line of a different power supply and tie its gnd line to the gnd pin of the raspberry pi. That way the power the LEDs uses doesn't affect the power of the raspberry pi.

You're all having a laugh right? 3A power supply to the 5V rail (this is a Pi4B with USB-C). I ran 4x of these NZXT strips connected together on the 5V rail, and the 3V/USB was powering the microsoft Webcam I have + the Ender 3's screen through the USB connection cable (when the AC power supply for the printer is turned off). All working great for a 7 hour print yesterday with 4 strips running and the camera feed. I certainly agree with the comments about the GPIO-IN possibly having switching issues since it shares a neutral with 5V and I've seen these comments ad infinitum on just about every forum post about LEDs - but since it's working correctly it's simply not required.

If the copper board traces on the Pi burn up from a few LED strips on the 5V rail I promise I will let you all know and admit I was very mistaken.

Cheers

We're not just talking to you here. Apparently you know what you are doing. Not everybody has a raspberry pi 4 with a 3A power supply.

Your post sounds like a guide: "Hey guys, it is really simple, just connect everything to the GPIO". We just want to tell other people it may not be so simple; many other people are at the verge of underpowering their Raspberry Pi with a cheap phone charger as it is, and powering an LED strip like you do will likely get them into undervoltage territory, or worse.

2 Likes

Okay, fair call. I've somewhat lobbed myself in here without much awareness about the part these forumns play in communicating info about Octoprint. Consider me chastened and rebuked.

2 Likes