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.

TMP421: Manufacturer/Device ID for TMP421

Part Number: TMP421

The register map for shows register pointers of 0xFE and 0xFF for the manufacturer and device ID of the TMP421, and POR(Power-on reset) values of 0x55 and 0x21.

I can't get a response from those registers, but using the POR values as registers I get the register pointer value back as a response(i.e. Register 0x55 responds with 0xFE).

Am I missing something or is the datasheet transposed?

  • Hi Kip,

    I don't believe the datasheet is mistaken.

    You must perform a write transaction to set the pointer, and then perform a read transaction to retrieve the contents of the register. The two transactions should look like this when reading Manufacturer ID:
    START, Address + Write bit, ACK, 0xFE, ACK, STOP, START, Address + Read bit, ACK, 0x55, NACK, STOP

    If you're still having issues after reviewing this, please share oscilloscope images of your I2C transactions.

    Thanks,
    Ren