Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Problem with recently Purchased WS2812B Products using the Teensy 3.2 and the Teensy 4.0 MCUs with FastLED #944
I recently received an order from Ray Wu’s Store. I tested the following products:
In testing these products with my FastLED test sketch (which was slightly modified for the number of pixels and using the WS2812B chipset):
I have found that they work as expected with the Arduino Nano, Wemos D1 mini Pro and the Lolin D32 MCUs. They do not work correctly with the Teensy 3.2 MCU at CPU speed of 96 MHz but do work correctly when I lower the Teensy 3.2 CPU to CPU speed of 48 MHZ.
For the strips, the cd77_colorwipe_dot function did not work properly (five or more pixel lite up at a time, not only one pixel at a time as it should) but the fill_solid function did work correctly at the 96 MHz CPU speed. For the 16*16 panel, it did not work correctly at all for the fill_solid function or for the cd77_colorwipe_dot function at the 96 Mhz CPU speed.
All of the products do not work correctly at all with the Teensy 4.0 MCU at any CPU speed using my new product test sketch for the Teensy 4.0 MCU:
My prior WS2812B strips and panel that I purchased from Ray Wu’s Store in 2018 work correctly with the Teensy 3.2 at 96 MHz, with the Teensy 4 and with the other aforementioned MCUs.
“the WS2812B has been upgraded to the V5 version this year, so it is a little different than before.”
Has anyone else experienced this type of problem with recently purchased WS2812B products?
Does anyone have any suggestions on how to make these products work at the higher CPU speed for the Teensy 3.2 and to work for the Teensy 4.0?
Here are the pictures of the three products:
Use the zoom feature at the bottom in google pictures to get a closer look.
Here are the links to the three products that were just purchased from Ray Wu’s Store:
1M long 144leds/m WS2812B(5050 rgb led with WS2811 IC built-in) led pixel strip,DC5V,waterproof in silicon tube;BLACK PCB:
4m 60LEDs/m DC5V addressable WS2812B led pixel strip,waterproof in silicon tube,60pcs WS2812B/M with 60pixels;BLACK PCB:
P10mm WS2812B 1616pixels led digital flexible panel light,size:17cm17cm,DC5V input:
Also. I just tested the 4 meter - 60LEDs/m strip with the Teensy 3.2 at 48MHz and:
It does work with no level shifter and a 3 ft length of 18 gauge cable with JST connectors between the Teensy and the strip.
It does not work at all with no level shifter and a 15 ft length of 18 gauge cable with JST connectors between the Teensy and the strip.
It does work with level shifter and a 15 ft length of 18 gauge cable with JST connectors between the Teensy and the strip.
I am using the following two resistor protection circuit between the Teensy 3.2 and the LEDS as seen in:
I am assuming that without the level shifter and the longer cable, the “D in” voltage drop to the LED is such that the strip did not work. While with the level shifter and the longer cable there is a “D in” voltage drop but the “D in” voltage at the chip is still high enough due to the level shifter so that the strip did work. I will continue using the level shifter for insurance.
The chip inside looks pretty tiny... the actual WS2812B-V5 should look like this, per WorldSemi's own listings on Alibaba looks different (edit: but perhaps their photo is just of an older model... getting more info before I commit to that determination)
Also, the fact that this works at all for you is telling: you really ought to be having bad timing issues with a V5 based on the new specs. The apparent need for level shifting despite the redesigned input block on the V5 is also odd to me.
Based on all that, I really wonder if what you have are V5 devices at all.