This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TXS0108E: Ti LLC vs descrete BSS138, 1.3v-5v Raspberry Pi

Part Number: TXS0108E
Other Parts Discussed in Thread: LSF0108

I built a prototype using BSS138 4 chan PCB by Sparkfun to convert Raspberry Pi Compute Module 1.3v to 5v that would pass to an open-collector bus (old DEC PDP).  The BSS138 version (with LEDs on 5v side) work 100% fine, with and without the OC bus connected.  In an effort to compact my interface bd (use SOIC) I designed a pcb to use the TXS0108E.  My TXS version works fine as long as there is NO bus connected.  If I connect a bus >~12" or try to connect to the OC devices, the 5v side is intermittent: ~2-3.5v and flickering.  The default drive for the CM output is 2ma but you can turn it up to 10ma, with a total budget of ~60ma.   I need 30 I/O's, so I can't have it drive >2-3ma/IO.   If I turn up the drive to 10ma (on a single I/O) the TXS seems like it's a little happier and the levels BEGIN to behave as expected.  The BSS138 bd works fine @ 2ma.  As you can see in my sch comparison, the TXS version is barely driving the LEDs, but it is enough for them to indicate (I hate bright LED indicators! :) ).

Could you offer some advice how to resolve?  Thank you!

DipTrace Schematic - LLC comparison.pdf

  • Hey Greg,

    So from what you said it is working with those LEDs but a greater than 12 inch bus is causing it to fail intermittently once connected. I don't know what IO you are attaching to the bus but I bet you're overloading the capacitance for the part. The TXS are designed to drive ~70pF of capacative load, which can be increased on slower speeds. Some solutions to the problem are as follows:

    - Use multiple pins on the translator. If you use multiple channels in parallel you can drive higher loads, just insure that the outputs that are tied together have their inputs tied together.

    - Switch to the LSF series of parts. This family has no drive strength at all and is reliant on external sources. The benefit of this is that you can drive heavy loads if your external supply can which may be an easier thing to do in some cases.

    - Drive discrete FETS, this is what that BSS138 is doing. It simply has 4 Fairchild FETs to handle the switching, this is the simplest form of level shifting but struggles due to imperfections in between the parts themselves.

    If this answered your question, please verify it by hitting the green "Verify Answer" button below! If you have additional questions just let me know.

    Best Regards,
    Nick
  • Hi Nick,

    I need to ultimately drive open-collector bus but the TXS can't even drive a unattached bus ~12" long with no terminators -- just individual conductors.  Not sure what the capacitance would be there but I would imagine pretty high, conductor-conductor in a plastic flat ribbon cable.  Shouldn't the TXS work with open-ended conductors like this? (Disregarding whether it would work or not in OC termination.)

    - can't really use multiple pins

    - I can look into the LSF, but it looks like it would require a new PCB layout. I'll look through the app notes on it.

    - The discrete FET solution works fine for me, but I'm hand building a small number of bds and was hoping to use ~SOIC to ease in "manufacturing."

  • Hey Greg,

    Unfortunately, I don't know of a pin to pin compatible device that will fix your issue since it appears that is what you would like. It is strange to me that it won't even drive the open ended cables that you have since they don't actually have that much capacitance (~46pF/m) according to a quick google search of something similar. The other option you have is to implement a buffer after the translator to provide more drive strength. A list of quad buffers can be found here. Unfortunately, this solution will not fix your problem of having to reroute but fortunately it should be minimal invasion if you have GND and power planes that you can drop vias to.

    Nick

  • Hi Nick,
    Agreed that it's strange that it won't even drive the open cable. I've tried 4 different cables with ~12" being the shortest I have. I need to go ~2 meters. As the cables are shorter the instability seems to be reduced. With no cable on the IDC connector it works perfectly! I thought about adding a buffer to the output but that's another level of complexity, albeit minor. I'd be ok doing another layout for the LSF0108 TSSOP 20 if was sure it would work. Looking through the datasheet on it it appears as though it would do the job, of course so does the TSX -- to me. I guess I don't really understand the difference between the two families. Can you convince me that the LSF would do it? ;) Again, I'm going from a RPi Compute Module (3.3v) to an old PDP Open-colllector bus (5v). Everything's active low, and being OC bus I guess you would call it wired'OR.
    Thanks for you input -- very appreciated!
    Greg
  • Hey Greg,

    The difference between the TXS and LSF (look at app notes hyperlinked) is that the TXS has a drive capability but the LSF parts don't. The drive of the LSF parts are totally dependent upon the pull up strength you put to your supply. So if you need to make long runs you can use small value pullups. Unfortunately I'd be concerned to give you a guarantee  that it will work because the TXS should have not trouble driving an open load like that but the LSF series could do the trick if you tie it correctly.

    I hope that helps,

    Nick