A few months back Texas Instruments unveiled their latest temperature sensor, the TMP006. The cool thing about it is that it’s a contactless IR sensor, meaning it can be used to measure the temperature of a location without physically touching it. Of course I wanted to find out how well this worked.
The datasheet and layout guidelines for the TMP006 state that the PCB on which it is mounted should be designed according to some very specific rules. For example, the area underneath the center of the chip should be a copper layer with solder mask on top. Leave out the solder mask and apparently the chip won’t be able to take accurate measurements anymore. This has to do with the fact that there are actually two IR sensors on the chip, one on top and one on the bottom. The bottom one is used to measure the die temperature and helps process the data read by the top sensor, which you aim at whatever you want to measure the temperature off.
I didn’t want to wait for a PCB just to do some quick tests with the chip, so I decided to breadboard it. I didn’t know if I would get any usable data without a custom PCB, but there’s only one way to find out. However, soldering this chip to protoboard comes with its own set of problems. The TMP006 package is an absurdly small 1.6×1.6 mm BGA, its eight “pins” being tiny solder balls on the underside of the chip. The usual method of soldering such a chip is with a hot air soldering iron, but that would require a custom PCB, which I didn’t have. The image below gives you an idea of the size of the TMP006.
Fortunately, I found a nice video on YouTube here of someone soldering the TMP006 to some protoboard. I used a similar method as the one shown in the video and managed to attach the TMP006 to a piece of protoboard with a hole drilled in the center. The hole is required for the IR sensor to “see”. The connections to each individual solder ball were made with 30 AWG wire. The next problem was figuring out which pin was number one. This is marked on the chip, but so tiny that I couldn’t see it by eye. I took a quick peek with the stereo microscope at work to find it and double check the solder connections. Afterwards, I encapsulated the chip in clear epoxy, because it was very fragile just hanging from those tiny wires. The result is shown below.
In order to get the interface to the chip up and running quickly, I used the Adafruit TMP006 library for Arduino. The results I got from the bottom sensor seemed somewhat realistic, but those of the top sensor were all over the place. For example, moving my hand towards the sensor would make it report temperatures over a hundred degrees, moving it even closer made the reported temperature drop to somewhere around -40 °C. After some attempts at shielding the underside of the chip, the readings improved, but in the end, I didn’t manage to get any actually usable readings.
Although the TMP006 measurements didn’t pan out as I had hoped, it’s good to know that soldering BGAs with a small number of pins onto a protoboard is feasible. I’ll definitely get around to designing a proper PCB for this chip sometime in the future, creating a IR thermometer has been on my todo-list for a while.