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.

TMP101 Not Acknowledging

Other Parts Discussed in Thread: TMP101

Hi all,

I am trying to communicate to a TMP101 chip (I actually have three on my board, so every address is used 48, 49 and 4A). I am using MCCs iPort USB to communicate on the i2c line. According to the iPort USB users guide, I would enter an address in the form aaaa aaa0 to read (or write to). Therefore I am attempting to read address 90, 92, or 94. Unfortunately I am not getting any acknowledge from the TMP101 chips. I set up an oscilloscope to read the SCL and SDA lines, and I see the correct addresses going out so I dont believe it is an addressing problem. I am operating at VCC = 3.3V, and the high voltage levels for SCL and SDA are 3.26V, the low voltage levels during my attempt to communicate are about 0.3V. The i2c bus clock rate is 400kHz. I checked the power pins on the TMP101 chips and everything seemed to be in order. There is a 900ns time difference between the SDA line going high (increasing past 2.3V) to the SCL clock going high.

Does anybody know what my problem could be? Any help with troubleshooting this would be greatly appreciated :)

  • Hello Heather,

    Lets debug your TMP101 addressing issue in a step by step manner. Your

    • I2C slave Addresses are correct 
    • Operating Voltage is within range.
    • I2C bus speed and SDA data set up times are within ranges

    Please perform the following steps:

    • Check the connects to A0 pin and verify if each TMP101 is connected to its respective ground, V+ and float
    • Debug one TMP101 by sending one slave address at a time eg: 0x90 instead of 3  slave addresses and see check if you get an ACK
    • When you capture the wave forms on the scope make sure you are sending the START condition before the I2C slave addrees is sent.
    • Perform Setup and hold time checks on SCL and SDA lines.

    In such scenarios, its always some thing minute that you might have failed to check or forgot to code. If you are still having trouble, do send me a scope shot of a TMP101's behavior with I2C slave address and a zoomed in version of SCL and SDA lines.

    Good luck!

    Best Regards,

    Abhi Muppiri

    Applications Engineer

    MHR- Sensing Products

    Texas Instruments

    ------------------------------------------------------------------------------------------------------------------------------------------------

    Search for answers, Ask a question, click  Verify  when complete, In the process, Help others, Learn more...

  • Hi Abhi,

    Thanks for the reply, it turns out I messed up something on my board for the messages I was sending never actually got to the TMP101. After I fixed my problem everything ran smoothly.

    Thanks again,

    -Heather

  • Hello Heather,

    Good to know that you were able to fix the problem. Thanks for keeping us informed and as always fell free to keep posting your queries on E2E .

    Regards,

    Abhi