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.

TMP401: TMP401

Part Number: TMP401

Hello FAE,

       I am trying to set the temperature range to extended range. According to the data sheet, it's simply set RANGE = 1. I had done that and verified RANGE = 1, but the data read from pointer address 00 still is in  standard range. What did I miss.

Thank you in advance 

Tom Tran

  • Hello Tom,

    When changing the RANGE bit in the configuration register to '1', what was the SD bit (D6) set as? Also what is the temperature being set as to be measured for which the data read from address 0x00 (Local Temp) shows that it is in standard range?
  • Hello Amit,

        The SD bit is set to "0". The Local Temp High limit 0x05/0x0B is set to 0x12. Local Temp Low limit 0x06/0x0C is set to 0x02. I use a thermo stream to change the ambient temp as follow.

    23C   read pointer address 0x00  get 0x17   which is 23C

    105C  read pointer address 0x00 get 0x69   which is 105C

    -10C   read pointer address 0x00 get 0x00   which is 0C 

  • Hello Tom

    Thanks for the confirmation on the reading of the temp register. That does confirm it is standard range.
    Can you try by setting the SD='1' when setting the RANGE bit to '1'. Once done and verified, set only the SD='0' and see if the data is read back in the extended range.
  • Hi Amit,
    I did the following
    Set pointer address 0x03 to 0x44 SD and Range to "1"
    Read pointer address 0x09 get 0x44
    Read pointer address 0x00 get 0x17 23C Standard range

    Set pointer address 0x03 to 0x04 SD = 0 Range = 1
    Read pointer address 0x09 get 0x04
    Read pointer address 0x00 get 0x17 23C Standard range

    I still can't get it into extended range

    Tom
  • Hello Tom,

    To write you need to use pointer address 0x09 and to read you need to use pointer address 0x03. In your sequence above, it is the other way. Also as indicated by my colleague, you would need to wait for one conversion cycle, before a change may be seen, since the update to the configuration register may have been done during a conversion and will not take effect till the next proper conversion.
  • Hi Amit,

          I forget the default conversion period is 8 sec. I had updated the conversion period. The reading in pointer address 0x00 is correct. Thank you for your help. My next problem is the remote senor. Shall I start another tread, or I can ask you here.

    Regards,

    Tom 

  • Hello Tom,

    Sorry for the delayed response. Yes, please open a new thread.