1 channel alternative to 74HCT245

Status
Not open for further replies.
Another option is mosfet-based circuit like this: https://www.sparkfun.com/products/12009. Don't know about "recommended" but it is widely used one.
Also, depending on input impedance and voltage levels of your target you might be able to use cmos output as is. I would add resistor in series though, to protect output somewhat.
 
Last edited:
SN74LV1T125 is on the Teensy LC

The 74LVC1G125 is not good for 3.3V to 5V level shifting. With 5V Vcc, the min input high level for the 74LVC1G125 is 0.7xVcc (3.5V). max output voltage from the Teensy 3.2 is 3.3V (with 3.3V supply)
 
Another option is mosfet-based circuit like this: https://www.sparkfun.com/products/12009. Don't know about "recommended" but it is widely used one.
Also, depending on input impedance and voltage levels of your target you might be able to use cmos output as is. I would add resistor in series though, to protect output somewhat.

However, the Sparkfun and Adafruit i2c level shifter are not recommended for applications like WS2812B LEDs that need to send a signal in a specific time period. If you are looking for something to add for through hole setups, I tend to like this level shift from pololu.com for WS2812B LEDs: https://www.pololu.com/product/2595.

Here is the original article that talks about the problems of using generic level shifters for Teensies: http://happyinmotion.com/?p=1247.

As HWGuy says, the LC contains a single level shifter that is appropriate for WS2812B LEDs (mapping pin 17/A3 to VIN). The low cost prop. shield contains two level shifters (mapping pins 11 and 13 to VIN).
 
Both of PRJC's Teensy LC and the Prop Shield use 1-gate level shifters.

Teensy LC uses a 74LV1T125 - non-inverting buffer (see the Teensy LC Schematic).

Prop Shield uses two SN74AHCT1G08 - Single 2-Input AND Gate (see the Prop Shield schematic).

Be forewarned that these are in tiny surface mount packages. Can you use the 74LV1T125? Or another gate in the same families as the 74LV1T125 or SN74AHCT1G08?
 
Great thanks for all the suggestions!

I guess I can't go wrong with the one used on the Teensy LC, and having the schematic is a great help.

The SN74LV1T125DBVR being SOT-23 should be fine.

Cheers,
David
 
I might be missing something but the schematics of Pololu level shifter is identical to Sparkfun one.

I would imagine the schematics would probably be roughly the same (pull-up resistors on both sides to the respective base voltages, and a voltage smoothing capacitor), but the parts used would be different, and would might behave differently. Sparkfun offers at least three voltage shifters (one with a TXB0104, a second with the PCA9306, and a third with BSS138 MOSFETs). I cannot see the writing on the Pololu shifter to see what it uses (and pololu does not mention a datasheet).

The Happy In Motion study from 2 years ago that I quoted said that the TXS-0102 based shifter (the DSS one) had some flickering on the first LED, but otherwise was fine. The TXB-0104 shifter from Adafuit (and presumably the first Sparkfun one) did not light the first LED at all. The PCA9306 shifter (2nd Sparkfun shifter) could not handle WS2812B's at all. Neither could the Sparkfun MOSFET shifter. Now it is possible that Sparkfun or Adafruit have revised their shifters since the study was done.

I asked on the pololu forum, and they said if I needed the pololu shifter to go faster, I could add additional 10K pull-up resistors on each side. For the amount of neopixels/ws2812b's that I do, I have found I don't need the pull-up resistors.

For prototype/breadboard usage, I prefer the Pololu shifter because it only takes 5 rows, and there is no overhang on the PCB, so you could have something in the next row. I can use 2 shifters for i2c, 1 for ws2812b, and 1 left over, and use the 6th row for ground.

The DSS shifter only provides 2 pins that are shifted, and each of the outer row over hangs into the next row on the breadboard (and it is currently out of stock). I tend to have either male/female headers on a breadboard, and attach cables to the LEDs. I tend to prefer keeping to the same wiring layout (ground, power, data) so I can mix and match LED rings, and the DSS shifter has the power and ground on opposite sides.

However, I get the sense that the OP really wanted a SMT part that he/she could design into a PCB, rather than a through hole setup like I use. But in case other people are wanting something similar, I figured to flesh out my answer.
 
Last edited:
what would be the difference, or a good reason not to use HC version?
I asked because I went and bought a 74HCT245 from a local (arrow electronics) store, and they gave me 74HC245 and charged me for higher HCT price. I was home when I found that out. I tested it anyway and it seems to work. The datasheet shows minor difference in input high/low level which I think works with teensy 3.2 output, and the rest appears to be the same. I also found online the HC version costs about half of HCT. I am using it to drive 488hz and 50hz pwm.
 
However, I get the sense that the OP really wanted a SMT part that he/she could design into a PCB, rather than a through hole setup like I use.

That was my understanding as well, that is why I pointed out that schematics is identical. Taking it as starting point OP can experiment with pullups and mosfets to get required switching time. Of course one channel IC with acceptable characteristics and no external parts would suit him even better.
 
what would be the difference, or a good reason not to use HC version?
I asked because I went and bought a 74HCT245 from a local (arrow electronics) store, and they gave me 74HC245 and charged me for higher HCT price. I was home when I found that out. I tested it anyway and it seems to work. The datasheet shows minor difference in input high/low level which I think works with teensy 3.2 output, and the rest appears to be the same. I also found online the HC version costs about half of HCT. I am using it to drive 488hz and 50hz pwm.

I guess I answered my own question. The only difference is the hi/lo input level, but does not make any difference using teensy 3 as input. So it is not really necessary to use the chip with the "T" as the other thread that says.
 
I asked on the pololu forum, and they said if I needed the pololu shifter to go faster, I could add additional 10K pull-up resistors on each side. For the amount of neopixels/ws2812b's.....

I always advise against using the mosfet-based level shifter with WS2812 or other addressable LEDs. The TXB0108 and similar bidirectional chips should also be avoided. These sometimes work with short wires, but they can be quite problematic. Unidirectional buffers should always be used. Bidirectional ones are full of design compromises which cause all sorts of headaches.
 
I always advise against using the mosfet-based level shifter with WS2812 or other addressable LEDs. The TXB0108 and similar bidirectional chips should also be avoided. These sometimes work with short wires, but they can be quite problematic. Unidirectional buffers should always be used. Bidirectional ones are full of design compromises which cause all sorts of headaches.

Fortunately, you have given us some alternatives, such as using the LC prop shield or the Teensy LC. I find for simple neopixel setups, I'm more likely to use the Teensy LC these days, unless I want to add mono sound, in which case, I'll use the prop shield.
 
Status
Not open for further replies.
Back
Top