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.

tmp006 values on cc3200 touch oddities hoping for explanation

Other Parts Discussed in Thread: TMP006

I added tmp006drv.c and .h to i2c_demo with a "getTemp" added to commands using the tmp006drv functions, linked with vfplib for floting point support on a cc3200LP and got the following results:

 

Command Usage
-------------
write <dev_addr> <wrlen> <<byte0> [<byte1> ... ]> <stop>
         - Write data to the specified i2c device
read  <dev_addr> <rdlen>
         - Read data frpm the specified i2c device
writereg <dev_addr> <reg_offset> <wrlen> <<byte0> [<byte1> ... ]>
         - Write data to the specified register of the i2c device
readreg <dev_addr> <reg_offset> <rdlen>
         - Read data from the specified register of the i2c device

Parameters
----------
dev_addr - slave address of the i2c device, a hex value preceeded by '0x'
reg_offset - register address in the i2c device, a hex value preceeded by '0x'
wrlen - number of bytes to be written, a decimal value
rdlen - number of bytes to be read, a decimal value
bytex - value of the data to be written, a hex value preceeded by '0x'
stop - number of stop bits, 0 or 1
-----------------------------------------------------------------------------


cmd#getTemp
GetTemp = 74.501472
cmd#getTemp
GetTemp = 32.864563
cmd#getTemp
GetTemp = 33.981861
cmd#getTemp
GetTemp = 72.361816
cmd#getTemp
GetTemp = 78.808800
cmd#getTemp
GetTemp = 82.950294
cmd#getTemp
GetTemp = 77.524170
cmd#getTemp
GetTemp = 79.685715
cmd#getTemp
GetTemp = 77.442101
cmd#getTemp
GetTemp = 82.193268
cmd#getTemp
GetTemp = 22.307100
cmd#getTemp
GetTemp = -6.418549
cmd#

the low numbers were obtained when my finger was touching the sensor or very near it. Why would the values be so low? Shorting/altering data? I read datasheet and get that it reads an infrared radiation bandwidth, but I don't see how the skin would mess such up? Emissivity?

  • Hi mwindham,

    If you have questions about the source code, you'll need to direct them to the SimpleLink forum as it was not written by the Temperature Sensing team. e2e.ti.com/.../968

    That said, I'll try to answer your question about TMP006 operation. The TMP006 is a thermopile that is very sensitive to all thermal changes around it. In order to operate correctly as an infrared temperature sensor, it must be isolated from device temperature changes such that it only receives radiation as a heat source. It is capable of correcting for changes in device temperature, but significant error occurs whenever there is a large change in device temperature. This is because the thermopile requires cold junction compensation.

    Thanks,
    Ren
  • It was not a question about Simplelink, but one about the physical properties of the device, but thanks for your explanation that I was changing the device temperature.