will this TXS0108E level shifter be good for controlling ws2812b led strip and is it fast enough? if not can you suggest me a proper level shifter from AliExpress
Although the speed of this device is adequate in 'Push-pull' mode, it actually won't quite be in an open drain setup (which you won't need there is only a very low current requirement for the data signal of a ws2812) But there are much simpler options like running the signal through 2 gates of a 74HCT14 or 74HCT04. In fact almost any 5v powered TTL logic gate of the 7400 series will work if you either non invert the signal or invert it twice.
- Maximum data rates
- 110Mbps (push-pull)
- 1.2Mbps (open-drain)
 
more info on the difference here for example
The thing is I will connect total of 4 ws2812b led strip separately. so, which one will be better and simpler?
Usually, you don't need a level shifter to drive neopixels from 3.3V logic (though you still need 5V power for the neopixels.)
The TXS010x level shifters are bi-directional, which isn't needed at all. Very much overkill.
And although the data rate of used to drive the LED's is 800KHz, the nature of the signal means that a higher relevant response rate is required. For every bit the pin goes HIGH and LOW, but with a varying duty cycle,
If you look at UART (and I2S) methods that are used by libraries like Neopixelbus (and Paul Stoffelregen 's, forgot what it's called) you will see that the use multiple bits to generate a single bit to be transferred.  (1100 == 0 & 1110 == 1) In the case of neopixelbus this is a 4 : 1 conversion and the Baud-rate is set at 3.2Mbps. Now i am not saying that this is the absolute minimum requirement, but i think 1.2Mbps may not be quite enough. Still the push=pull will work.
i would use either 2 X 74HCT04 or use a Quad-non-inverting one like a 74HCT08 (quad AND gate) where the inputs of the gates are bridged.
the led will flicker or show wrong color if you use more than 100 led from 1 data pin
can you give me a diagram for setuping 74HCT14
I have never encountered that issue, they may flicker regardless, but not over a certain amount of leds as far as i know. What board and what library are you using ?
this is an example for the 7404 but they are basically the same. This is for 1 channel, and as i have done 'officially all unused inputs should connected to GND, but personally i never bother and without issue.
check the pinout of a 7404 (which is the same as 7414)
if I am not wrong, I can get 3 input and 3 output from 7414, right?
That makes no sense, if you know how neopixel operates
If I have 3.3V and want 5V I use a Logic Level FET to switch 5V external power.
yes it has 6 gates and you invert the signal every gate. Still with a 7408 you can have 4 channels ( separating input and output on your writing is confusing )
I run a strip of 270 LED's without flicker with a 3.3V ESP32. Only the first LED will operate on 3.3V, when the first LED passes on it's info, that info is converted to a 5V signal.
I did have flicker, initially. To solve it I improved the way I powered the LED strip.
Remember only the first led in an led strip operates on a 3.3V signal. When the first led retransmits its info it does so at 5V logic levels.
This is also why i asked how the signal was created,
Oi! That's easy to see how.
Go to Adafruit_NeoPixel/Adafruit_NeoPixel.cpp at master · adafruit/Adafruit_NeoPixel · GitHub. The code is there.
Nonsense. My seasonal display has 750 WS2812 LEDs all controlled from a single data pin on a Wemos D1 Mini.
What makes a long run flicker is low voltage.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.


