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.

TMP1075: TMP1075 alert pin doesnt go low when high limit is crossed

Part Number: TMP1075
Other Parts Discussed in Thread: TMP390, TMP108, TMP119, TMP117, TMP116, HDC2080, HDC2010, TMP4718

I have a case where the temperature sensor's alert pin doesn go low even if the temperature exceeds the higher limit

I have set the following values into the temperature sensor when my device powers up:

HLIM = 0x3c00 ( 60 deg. C)
LLIM = 0xF100 ( -15 deg. C)
CFGR = 0x50ff

I also read back the value after each write to the register to make sure the setting is done correctly.

I increase the temperature of the device to cross 60 deg C. But the alert pin doesn not at all go low.
I can read back the register values, and can see the set values are still available on the registers.

At this stage, if i write to these registers again ( the same values ), then the alert pin goes low immediately.

Why is it that it doesnt work the first time?, i have to resend the values?

  • Hello Rijesh,

    You have your config register set to trigger the alert pin after 3 consecutive faults (CFGR - Bit 12). This means that the alert pin will not change until the high limit is crossed 3 separate times. Additionally, for this device once the alert pin is triggered from the high limit it will not be reset until one of the following events: the low limit is reached, a read of any register, or a shutdown command is issued. The high/low alert function on this device functions like a hysteresis rather than a typical alert.

    Best,
    Gage

  • 1). When you say "until the high limit is crossed 3 separate times", do you mean that the temperature has to go below 60'C and then cross 60'C, three times?

    What i understood with 3 faults is that - Example if HLIM is set to 60'C then the measured temperature should be more than 60'C in three consecutive measurements for the Alert pin to be triggered. Is this wrong?

    2). You mentioned that one of the condition for the alert pin to be reset is read of any register. So would you say my method of writing to the register and then ready back is not the correct way to set the registers?. Also is there is any preferred order in which the registers should be written to (ex. first CFGR, LLIM, then HLIM )?

  • Hello Rijesh,

    1) Yes, the temperature needs to go above your high limit 3 times, each separated by an instance of it dropping below your high limit. On the third instance of crossing above the high limit, the alert pin will trigger. This is implemented in order to prevent unintentional triggering due to noise. If you would like to remove this function, you can change config register bits 12 and 11 to 00. You would enter 0x40FF into your config register.

    2) The intended way of resetting these registers without reading is to allow it to cross the lower limit. This is a special function of the TMP1075 in which the two alert limits act more as a hysteresis for throttling a system. The three events I'd listed above each work for resetting the alert pin, however if you prefer an alert pin that triggers when you cross either high or low limits, then resets when you are back within bounds, you would be looking for a device with what is generally referred to as a window comparator, and can be found in the following devices -

    TMP390 temperature switch

    TMP108 die-size BGA temperature sensor

    TMP116 / TMP117 / TMP119 family of high accuracy temperature sensors

    HDC2010 / HDC2080 humidity sensors

    TMP4718 remote temperature sensor

    Best,
    Gage