Other Parts Discussed in Thread: TCA9535,
I have a TCA6416 at address 0x21 on a board where we used to run a TCA9535 at address 0x27.
Pins 18,23,24 are pulled high on the chip. On the TCA9535, these are all A0, A1, A2. On the TCA6416(A), these are A0, VCCI, and /RESET.
The software must run if we have a TCA9535 or a TCA6416(A) loaded.
In the software, I first try address 0x27 and if I get an ack, I know I have a TCA9535. If I get no ack, then I try address 0x21.
The trouble is that the TCA6416 is responding to address 0x27. At first I thought that the TCA6416 probably has "DO NOT CARE" for the A2 and A1 bits, but that doesn't make sense as someone may want to run something at 0x27 AND a TCA6416 at 0x21 at the same time.
I just checked and indeed I am sending out a start bit and then 0b01001110 (for a write) and I'm getting an ack. The relays connected to the IO lines on the chip are all switching on and off normally with that address.
Is this a known issue?