A problem reported in a german forum:

A problem reported in a german forum:
Teensy 3.2 + Arduino1.6.5 (Win) + Teensyduino 1.25 + FastLED3.1
WS2812 Leds (http://www.flikto.de/products/sparkfun-led-rgb-addressable-pth-5mm-clear-5-pack)

The lib examples seem to work fine only with 24MHz CPU-Speed. At 48MHZ many distorted frames, at 96MHz no frames at all.

Additional Info: With the Adafruit lib results also only with CPU speed <96MHz.

Any ideas?

I don’t have any 3.2’s with me (traveling) to test right now - but they should make sure that they’re using the latest master pull of the library. Also they might need to try level shifters.

Thanks, Dan - I’ll forward this. A level shifter is used. APA102s work fine as well. Good travelings!

Wait, what are they using for level shifters? If they are using something that is too slow it will mess with the signal timings (especially if it’s signal raising time is different than the signal dropping time). The reason why the lower clock speed would work is that it would slow the signal down enough to compensate a bit (eg a slow rise/fast drop would end up treating 1’s like 0’s where a slower clock speed that slightly dragged out how long the line was held high for a 1 would compensate for that)

Ha, good point! He’s using a BSS138. That board: http://www.adafruit.com/product/757

Without the level shifter it works fine now…

He should be using something based on something like the 74AHCT125

The BSS138 is not an appropriate level shifter for WS2812. It has fast high-to-low performance due to the transistors, but slow low-to-high response due to the resistors and capacitance of pins and cables. The non-symetrical speed distorts the waveform, which is terrible for WS2812 where the relative width of pulses is used to communicate!

The guy asked me to thank you guys for the profound explanation, @Daniel_Garcia and @PaulStoffregen !