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.

PCA9548A: Pull up resistors on SDA and SDO

Part Number: PCA9548A
Other Parts Discussed in Thread: TCA9406, , TCA9548A

Are pull ups required on both SDA (Master side) and well as SDO side channels?

Does the SDA side devices see pull ups on SDO?

In case of a bad slave device (shorted SCL or SDA) on one of the channels, can the master still talk to PCA9548?

  • Yes, you need pull ups on both sides.

    If the PCA9548 is configured to connect to the channel that has a short on either SCL or SDA then the device will stop being able to be communicated because the pass fet will always be on holding down the bus. you would have to reset the device to turn off that channel and let the bus free. I would recommend that you program your slave to be intelligent enough to know if that if it doesn't get a response that it resets the device and take note of the channel that caused the problem and not connect back to that. It would be a fault state in my mind and should be treated as such.
    -Francis Houde
  • Follow up question -

    Can the PCA9548A and TCA9406 work on the same I2C bus.

    PCA9548A channel1 connected to TCA9406 sideA. Both connected to 3.3V rail. (TCA9406 SideB connected to 1.8V)

    The VIL of TCA9406 is 0.15V and the VOL of PCA9548A is 0.4V.

  • Hello Hithesh,
    Why do you want to use the TCA9406? If you want to translate then you don't need it, the TCA9548A can do it (or PCA9548A, we recommend the TCA family of parts for expanded Vcc range for low voltage support and for errata fixes). If you need buffering that you don't want to use the TCA9406, it isn't a buffered part. I would recommend something else. Let me know what you are trying to do then I can recommend a part.
    -Francis Houde
  • Are the 2 devices even compatible? The TCA9406 VIL is 0.15V

    I am validating a system with those 2 devices already.

  • Hello Hithesh,

    If you look at just the specs then it suggests that it is incompatible.  The problem is that you are putting two pass FET elements in a row and there are cumulative losses that might cause the voltages to not be able to meet VIL/VOL requirements.  These voltages are dependent on capacitance on bus, operating frequency, the selected pull up resistors, Vcc voltage, and the series pass FET resistances when on.   The TCA9406's VIL of 0.15V is based on worst case process, temp, Vcc voltage, and current to get VOL.  If you look at the drawing below you see how everything is cummulitive, series resistance of FETs, pullup resistor values, and pull down strength (FET resistance) of Master or Slave.

  • Thanks for the explanation. That makes sense.
    Is there a level translator with VIL 0.4V?
  • If you need just translation, then just use the TCA9548A.  See the example below, which shows how to use the switch with different I2C buses with different voltage levels:

     Hello Hithesh,

    Let me know if this works for you or if you have other requirements that I don't yet understand.

    -Francis Houde

  • What is the minimum value of Pull up resistor I can use with TCA9406 ?

  • Hitesh,

    As the pull-up resistance decreases, the device's output low-level voltage increases. The minimum resistance would depend on what VOL level you need, then. You can see the relationship between VOL and load current (correlated to pull-up resistance) in Figures 1, 2, and 3 of the TCA9406 datasheet.

    Regards,
    Max
  • What about the Input low level.
    What is the min pull up value I can use and still meet VIL?
  • Hitesh,

    You need to keep IOL to 1 mA or less in order for the device to meet its VOL spec of 0.4 V with a VIL level of 0.15 V. The IOL value would be a function of the pull-up resistance and the pull-up voltage. Hope that's clear - let me know if you need more info.

    Regards,
    Max
  • Max,

    Will having a low pull up (like 1K) cause glitches on the clock lines of TCA9604.

    Would the one shot cause glitches.

  • Hithesh,

    No, a low pull-up will result in faster rise times - this will not cause issues with the one-shot circuit.

    Max
  • Hi Max,

    What is the period of the one shot in TCA9406.

  • Hithesh,

    The nominal period is about 30 ns. The maximum value corresponds to the minimum pulse duration specifications in the Timing Requirements tables of the datasheet for push-pull conditions (since the one-shot needs to be fully off before a push-pull driver could drive the opposite state).

    Max
  • Where can I read more about how the once shot works. Is there an app note.

    In the datasheet Fig.5, the A-side one shot is triggered by the B side input voltage?

  • Hithesh,

    There's a good description of the circuit's functionality in section 8.3.1 of the datasheet. You are right that the A-side one-shot would be triggered by the B-side input and vice-versa. The one-shot exists to speed up the rise times on the output, which for an open-drain architecture would typically only be driven by relatively weak pull-up resistances. Momentarily enabling a strong pull-up via a one-shot allows for the rising edges to occur much quicker.

    Max
  • Hello Hithesh,

    The minimum pull-up voltage level is determined by minimum rise times outlined in I2C specificiations. 

    Here is an app note that covers the calculations.

    http://www.ti.com/lit/an/slva689/slva689.pdf

    -Francis Houde

  • Max Robertson said:
    Hithesh,

    There's a good description of the circuit's functionality in section 8.3.1 of the datasheet. You are right that the A-side one-shot would be triggered by the B-side input and vice-versa. The one-shot exists to speed up the rise times on the output, which for an open-drain architecture would typically only be driven by relatively weak pull-up resistances. Momentarily enabling a strong pull-up via a one-shot allows for the rising edges to occur much quicker.

    Max

    Hi Max

    What is the threshold for the one shot accelerator. Is it same as VIH (Vcc-0.4).

  • Hello Hithesh,

    The minimum pull up value is based on rise times.  I am attaching the link that goes through the pull-up resistor calculations for both min and max values.

    http://www.ti.com/lit/an/slva689/slva689.pdf

    Let me know if you have further questions.

    -Francis Houde

  • Hello Hithesh,

    Here is the link to the app note that walks through in detail how to determine the min pull up resistor.  

    http://www.ti.com/lit/an/slva689/slva689.pdf

    Let me know if you still have questions.

    -Francis Houde