marky · 639
Re: the resistor, this is used to both protect the output pin of the microcontroller by limiting current into the LED data line input, and also to make the data line's square wave cleaner. Unfortunately, if you are using a 3.3v logic microcontroller like the ESP8266/NodeMCU, you're already extremely close to the limit of the logic high switching threshold of the WS2812B LEDs (assuming you're powering them at 5v). The logic threshold is technically 3.5v (0.7*VCC) - although in practice it seems they are ok with 3.3v and you might not ever see issues with it, it's down to the individual manufacturer's tolerances. As CdRsKuLL mentioned, adding a resistor in series will drop the voltage further, so it might not work at all if you're using a 3.3v micro. Using a 3.3v -> 5v level shifter is probably the best practice approach in this case.Re: the capacitor, I think that it's a good idea to have a beefy decoupling cap near your microcontroller if you're going to be switching a lot of WS2812B's. As we will be strobing them and the current draw will change quickly, I wouldn't bet on the regulation of the power supply to make sure your micro doesn't brown-out. Local decoupling caps are included next to every LED package on the strips for the same reason.Bottom line, you can probably get away with not having either depending on your situation and luck, but it's not best practice. Hope that helps,Jim