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.

TCA9548A: Can you cascade I2C Switches?

Part Number: TCA9548A

Hello E2E Forums:

I am working on a new multi-board design that uses several I2C and SMBus components.  We are planning to use several different I2C Switches to connect all the I2C/SMBus loads to Master Controller.  Can we cascade two or more TCA954x (2-Ch, 4-Ch, or 8-Ch) devices?

Regards,

Kyle

  • Hi Kyle,

    Without knowing the exact details of your system design, I can not say it will work with absolute certainty. I can however give some pointers when cascading multiple TCA954x devices, specifically the TCA9548A. 

    It should be noted that the TCA9548A has 3 address pins allowing up to 8 TCA9548A devices on the I2C bus. If you desire to use more than 8 devices, you will have to do some fancy switching solutions in order to select between I2C devices with the same I2C address. 

    Another idea to keep in mind is the added series and parasitic capacitance added onto the I2C bus when implementing cascading devices. Each device added to the I2C bus adds some type of loading including series passFET resistance and parasitic bus capacitance. You will have to make sure that your system abides by I2C standards for rise/fall times and the 400pF parasitic bus capacitance limit.

    TCA9548A is a switch device, meaning any individual SDAn/SCLn channel or combination of channels can be selected at any given time. TCA9548A is also not a buffer, meaning that SDA/SCL channel connections to SDAn/SCLn will additively load the bus.

    For example if channels 0,1, and 2 are selected, the controller(master) device will see all 4 pairs of pull-up resistors when driving to a LOW state. Therefore, you must keep in mind the strength of your pull-up resistors if you decide to have multiple channels activated at once since all bus resistors would appear in parallel to VDPUx.

    This idea is also the same for parasitic bus capacitance. If you have 100pF on the main SDA/SCL channel, and then 100pF for channels 0, 1, and 2, at the point that all target (slave) channels are selected, you would be nearing the 400pF parasitic bus capacitance spec of the I2C standard due to all channels being selected at once. 

    So in short, you can cascade as many devices as you want as long as the I2C specifications are respected.

    Please let me know if you have any more questions.

    Regards,

    Tyler