WS2812

The Most Popular LED Controller Takes 5V, Can Control RGB LED And Daisy-Chain Using One Wire

The WS2812 was the first truly embedded LED controller integrated right into SMD (and other) LED. This was a huge success, and the controller underwent a number of revisions to further improve it.

Today the WS2812B is the most popular and widely used controller type. The SMD LED with this embedded controller are used in a wide range of LED setups such as strips, matrix displays, and individual LED.

The American company Adafruit even minted a new marketing term for it: NeoPixel. NeoPixels are no different from other WS2812B based LED, though.

When To Use

If you are looking for programmable RGB LED and you would like to run them with 5V, then the WS2812B is the de facto standard controller.

It has a efficient standby power consumption and is a perfect companion for DIY projects: there are countless examples and supporting libraries available.

When To Not Use

The culprit of this controller is its 5V supply voltage and its limit to three channels.

These shortcomings define the cases where you may want to choose a different controller:

  • Many LED: For many LED (like in very long LED strips or huge matrix displays), you should switch to a controller with a higher voltage (i.e. 12V or 24V). With **5V, the *voltage drop is considerable, and you would need to frequently inject voltage by supplying the voltage to multiple spots to keep voltage stable. Even this wouldn’t help with the immense current needed that can quickly exceed 20A.
  • RGBW: You can drive the three channels in RGB LED, but you cannot drive the four channels required for RGBW LED
  • Fail Safe: If the installation you plan is built into furniture or devices where you later cannot service them, the one data line of WS2812 is a single point of failure: should one WS2812 in your string fail, then all following LED will also fail. For more fail-safeness, choose a controller with a redundant fallback data line.

Secret Revisions

In 2017 major improvements were backported from its rarely available and expensive successor WS2813, however without changing the part number. These improved WS2812B are still sold as WS2182B, making them indistinguishable from their early siblings under the same name.

WS2812B LED can therefore have significantly different properties:

  • Refresh Rate: increased from 400Hz to 2000Hz for flicker free recordings in HD video.
  • Reduced Current: RGB port current was reduced from 17.5mA to 16.5mA. The slight decrease in brightness is not visible and may also be compensated by more efficient LED today.
  • Reset Time: increased from 50us to 280us

The change in reset time can cause breaking changes when your projects drive these controllers with extremely low reset times. To fix, review the libraries you use and make sure you increase the reset time to roubust values of >280us.

Datasheet

The original datasheet of the initial WS2812B version was published by the American company Adafruit.

Around 2017, the WS2812B specifications changed (see above), and the manufacturer released a new datasheet.

Comments

Please do leave comments below. I am using utteran.ce, an open-source and ad-free light-weight commenting system.

Here is how your comments are stored

Whenever you leave a comment, a new github issue is created on your behalf.

  • All comments become trackable issues in the Github Issues section, and I (and you) can follow up on them.

  • There is no third-party provider, no disrupting ads, and everything remains transparent inside github.

Github Users Yes, Spammers No

To keep spammers out and comments attributable, all you do is log in using your (free) github account and grant utteranc.es the permission to submit issues on your behalf.

If you don’t have a github account yet, go get yourself one - it’s free and simple.

If for any reason you do not feel comfortable with letting the commenting system submit issues for you, then visit Github Issues directly, i.e. by clicking the red button Submit Issue at the bottom of each page, and submit your issue manually. You control everything.

Discussions

For chit-chat and quick questions, feel free to visit and participate in Discussions. They work much like classic forums or bulletin boards. Just keep in mind: your valued input isn’t equally well trackable there.

  Show on Github    Submit Issue

(content created Mar 02, 2024 - last updated Mar 19, 2024)