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: I2C on TCA9548A not working

Part Number: TCA9548A

Tool/software:

Hello Have the below design, I am using a PIC18F87J50 for the I2C master, problem is that I can get clock/data on pins 22 and 23 but nothing on the other end, any suggestions of why this can be ?

  • Why did you choose 1.5 kΩ pull-ups? This will result in more than 3 mA pull-up current.

    How did you program the TCA9548A? Do I²C accesses to its register actually work?

  • Hello Michael,

    Could you please answer Clemens questions and we can look into this further.

    Regards,

    Kameron

  • Hello Clemens and Kameron. 

    the resistor I actually put as a place holder and did not change it; i have reworked the board to have 10K on the input and 5k on resistors R31 and R29. I have a good signal on the input but nothing on the R31 and R29, I have A0 = high, A1 = high and A2 = low, setting this with Pic microcontroller IO pins, so shouldn't I have the signal on R31 and R29? but there is nothing on them.

    I2C on pins 22 and 23

  • The default configuration after power up is with all eight channels disabled. To enable some channel(s), you have to do an I²C write to the configuration register of the TCA9548A itself.

  • Hello Clemens. 

    let me see if I go this straight, never used this part before. I I want to use channel 3 I need to set A0 high, A1 high and A2 low? then I have to send thru I2C on the TCA9548 the address 0x73 and 0x08 to select the channel 3 ? if I want to select channel 0 A0 low, A1 low and A2 low then address is 0x70 and 0x01 to select channel 0 then the next data to my device would go on channel 0 ?

  • The three address bits have nothing to do with channel selection. You need them only when you want to use multiple TCA9548A devices on the same I²C bus; otherwise, it does not matter which address you choose. In general, the Ax bits for one chip stay constant.

    Your configuration register byte values are correct.

  • last question, can the Ax bits be left floating? 

  • Hi Michael,

    No, the address pins of this device need to be tied either to supply or ground.

    The address pins being set allows you to correctly communicate to this device.

    Please let me or clemens know if you have any further questions!

  • Hello Kameron, still don't see a signal on the channel of the IC, the address and values are correct for the configuration, but nothing on the other side, i will try another board to see if I damaged something on this one with all my troubleshooting, but don't think I did, any other suggestions ?

  • Hi Michael,

    Is it possible that there could be an error when sending data on the SDA and SCL lines  on your i2c bus?

    Can you send a scope shot of the SDA and SCL lines?

    I would suggest trying another TCA9548A but if the device is not damaged the communication on the bus could be the problem.

    Check out this app note and let me know what you think.

    Regards,

    Kameron