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.

[FAQ] TPS23861: When using I2C scan to discover I2C devices on the bus, why do we receive extra ACK from address 0x30?

Part Number: TPS23861

When using I2C scan to discover I2C devices on the bus, why do we receive extra ACK from address 0x30?

  • 0x30 is the broadcast address of TPS23861 which cannot be any PSE device’s I2C address. If there’s a command to scan address 0x00 to 0xFF to discover devices on the I2C bus, it is possible to receive extra ACK from address 0x30 which would mislead you that there’s a device at address 0x30. After writing to 0x30, an unlock code(0xAAh) is expected to continue slave address programming, but it doesn’t look for a match unlock code 0xAA before ACK. Meaning if the unlock code doesn’t match, the device will still ACK. To avoid this, a 100ms delay after writing to address 0x30 or skipping address 0x30 (0x30 can never be a PSE’s address) is recommended. Additional Resources