I'm using the tmp104 device on an evaluation kit that is our manufacture. It is connected to the USART of a STM32L4 processor (ARM Cortex-m4) configured for autobaud @ 57600,8,N,1 and I have a console application on the ARM with which I can read/write to the USART interface.
The voltage levels have been checked and can be seen in the following image. That image was taken with a scope that is tapping into the Host's RX side of the chain. There is only 1 tmp104 in this chain. The data being written to the chain is "0x55 0x90". These 2 bytes of data are being written after the application wrote "0x55 0x8c" to the chain.
I've extended the capture buffer on the scope out to make sure there is no further activity from the tmp104 on the line. What I don't see is the address value from the device. I'm a bit unclear if I should see the value coming back to the host as "0x55 0x91" or a 3rd value so that the read back would be "0x55 0x90 0x01" but none the less, I see nothing. So, When I write either the calibration string or the Address Initialize string to the device, I only get back what I wrote, never the device "count".
The electrical levels, timing and data values are quite clear in the scope trace.
I'm hoping someone can help me try and figure out what is being done wrong or do we have a dead sensor.
Cheers!!