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.

TMP107 code example

Other Parts Discussed in Thread: TMP107EVM, TMP107

Hi,

I buy a TMP107evm, and I installed the associed software. 

With the provided software I success to read all temperature. I tried to do the same by myself by reading the documentation, and every packet I send seems to don't have any effect.

I didn't find any example in C or other language to explain how to communicate with it, I have only the provided software which is provided without source code.

So I dedided to spy the serial line with an ftdi pluged just on the TMP107evm (pluged just after the usb serial adapter, not at the end of the daisy chain because it seems that some messages are transminting between the TMP107)

I spy the comment sent at the init and they are :

0x55 0x95 0x5 0x3 0xb 0x13 0x1b 0x55 0x57 0x1b 0x55 0x19 0xa1 0x0 0x18

The command sents for reading temperature are 

\x55\x19\xa1\x00\x18\x55\x1b\xa0

And the temperature seems to be  somethinck like :

0x08 0x19 0xdc 0x18 0x2c 0x19 0xd0 0x19

I succes to do write own software and have the same result, but my difficulty it that is seems the data ti send don't match with the tmp107 documentation I have.

For example if I take the temperature get 0xd0 0x19, to convert to a valid temperature I have to do 0x19 => 25 degrees and  0xd0 => 208 => 208/256=>0.8125 degrees and if I finally did the sum  I have 25.8125 degrees which is what the provided software do.

But In the documentation (sbos716b.pdf) I read, the temperature is a 14 bits value that I have to convert in int and multiply by (0.015625°C / LSB), but it is not correct.

It is just an example of mismatch about temperature, but for the commande it is the same, I don't understand what is the siginification, I just know the first 0x55 is the baudrate calibration Byte, since the Command phase and after the address byte, but the value inside don't seems to match the documentation I have

I'm really dissapointed, maybe I did sometinck wrong or I read a bad documentation, so I need your help to understand what append.