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.

TCA9534: TCA9534 on-chip part number

Part Number: TCA9534

Good afternoon,

There is the requirement to include some TCA9534 devices on our design, and to start developing a simple driver for it, I have one IC soldered on an expansion board.

The problem is that the device does not respond to I2C messages, not does it show up on an I2C scan. I have more devices connected to the same I2C bus (no address conflict) that show up as expected on a bus scan. I have connected A0...A3 to GND. I'm using a 3.3v supply, and I've tried 1.1kOhm and 10kOhm pull up resistors.

I have ordered TCA9534PWR from the manufacturer, but the on-chip part number looks slightly different than "TCA9534". Could you confirm that the IC is correct? I'm starting to question whether I'm looking at the right datasheet...

Please find a picture attached.

Best regards.

  • Hello Amiguels,

    "Could you confirm that the IC is correct?"

    This looks correct.

    Are you able to modify your code? I believe I know what the issue could be, I assume you are sending device addresses and a read bit and looking for an ACK. If you send this device its address with a read bit then you may get a NACK instead. Please refer to section 8.6.3.1.2 which discusses how to properly do a read with this device. What I suspect you need to do is send this device address with a write bit first and look for the ACK instead.

    If you are still running into issues communicating with this device, send scopeshots with SDA/SCL in the same picture and have it do a write operation. This will help us with the debugging.

    Thanks,

    -Bobby

  • Hello! That was indeed what was happening. Once I started doing complete reads and write the IC reponded as expected.

    I'm now having trouble using the interrupt feature... The connection are being made as per the datasheet, with the proper pull up resistors (in both th e INT singla and the input port).
    What I'm observing is that the INT signal is following the input port signal. While I keep the port low, the INT signal stays low. Referring to the datasheet, this is expected, since the INT signal resets once the signals go back to the initial form.

    However, it also states that one can reset the INT detection by reading data from the port that generated the interrupt. I have tried reading the Input Port register when and INT is detected, but the result is that the whole system reboots, which seems to indicate there could be some kind of short circuit.

    However, all I'm using is the TCA and a dev board, and I have checked multiple times and there are no bad connections or bad wiring. All is done following the datasheet.

    Am I missing any detail here?
  • Hey Amiguels,

    "the result is that the whole system reboots, which seems to indicate there could be some kind of short circuit."
    Do you mean Vcc power cycle itself?
    Do you have scope shots of the I2C communication just before this happens?
    How are you confirming the system is rebooting?

    I've never heard of this happening before.
    Do you have a schematic you can share?

    Thanks,
    -Bobby
  • Please ignore my last post, it was a race condition on the access to the I2C bus that caused the system to reboot.

    Your original reply has solved my problem.
    Thank you very much.