WS2812B Data loss at 3.3v

Hello,

I've got a line of 27 WS2812B LEDs set up. I'm powering them with 3.3V, and all works fine when my data pins are powered at 5v. That setup that works would be, for example 3.3v power pin on an Uno, and the data pins on the Uno are all 5v.

Unfortunately, I want this to run on a LilyPad USB, which has 3.3v data pins, and supplies 3.3v power.

So, when I am fully hooked up to a LilyPad, Only the first 7 LEDs light up, then sometimes an 8th one lights up as well. It's almost as if the data isn't making it that far. I imagined that it should be okay to use 3.3v logic with 3.3v power, but this doesn't seem to be the case. If I put my data line from an Uno but power from the LilyPad, all works well -- so this indicates that it's not an issue with the power supply.

Does anyone have any ideas on what I could do here? Is there something that I'm doing wrong?
Why am I only getting 7 lighting up -- is this due to voltage drop across each LED? I was under the impression that each LED had a shift register that would boost the voltage back up.

Thanks!

More Information:
WS2812 level translator – Electro Bob states that there is signal regeneration in each LED, meaning that the 3.3v should only matter for the first LED.

In that case, I'm lost as to why I am having this issue.

Cheers

It could be that your lilypad is only running at 8MHz and so the signals are slower.
Never put a signal into a chip that is higher than the input voltage of that chip.

Are you using the pre built strips or making your own? If the latter don't forget the decoupling capacitors.

Thanks for the response and ideas.

Grumpy_Mike:
It could be that your lilypad is only running at 8MHz and so the signals are slower.
Never put a signal into a chip that is higher than the input voltage of that chip.

Are you using the pre built strips or making your own? If the latter don't forget the decoupling capacitors.

8MHz shouldn't be an issue, I don't think. Perhaps I'll verify that by running my Uno at 8MHz and trying that. All my test application is doing is outputting to the strip, so 8MHz should be more than adequate. After some google-ing, it seems like the LilyPad should work fine with these LEDs.

I am making my own, and I've got a 100nF cap on each.

Oddly enough, it looks like FastLED is the culprit here. I've switch to the Adafruit_Neopixel library and all is fine.

Neopixels have very specific timing requirements and are very sensitive to clock speed. The Adafruit libary, if you have looked at it, makes provisions for lower speed processors. The libary you were using, which you did not mention, looks like it did not.