Arduino Project 8 (2D/3D pictures) – how to make your own SOIC-8 breakout boards from scrap (tmp175, Uno, 1.0)
Texas instruments were kind enough to provide me with samples of their tmp175 digital temperature sensor. They don’t come in the most DIY friendly package hence I had to make a breakout board before I could get the Arduino to talk to one of them.
The breakout board:
I’m sure they are available somewhere but I didn’t want to wait for another delivery and have a generous amount of IT scrap. So I set out to find something in the heap which I could chop up and which would have the same pitch as the tmp175s pins. The donor part was quickly identified as an old PCI network card, the bit that gets inserted onto the PCI slot was a perfect match in regards to pitch. So out comes the Dremel, on goes the diamond cutting disc and off comes the bit I want
The resulting bit of PCB wasn’t big enough to fit both sides of the sensor on it hence I’ve used two smaller parts, one for each side. I’ll check for more suitable cards with a wider area to solder onto at some point, AGP cards might be better for this purpose.
I’ve soldered each sensor pin to it’s own copper trail, drilled little holes, fed the cables through and soldered them to the copper trails. The result might not be pretty and would benefit from a bit of support underneath (hot glue or a bit of plastic…) but it’s free and it works
Reading from a tmp175:
The tmp175 has three address pins which means we can have up to 27 of them on one I2C strain. Quite a move up from the tmp104 I played with in Project 7 which is limited to just four. Quick glanze at the TI reference pdf (http://www.ti.com/lit/ds/symlink/tmp175.pdf) and the first address option on page 8 is to connect all three address pins to ground which sets the sensor to a binary address of 1001000 (or 0×48 in hex which is what the wire library tends to digest in sketches). TI recommend pull up resistors for sda/scl and a capacitor but for this quick test I got away without them.
Once connected up it’s straight forward to read temperatures. There are additional registers to set min/max temperatures to trigger alarms on the alarm pin if the actual values move outside the specified range but for this project I’ve decided to keep the sketch simple and just read the current temperature.
The following sketch will print the temperature from a tmp175 on address 1001000/0×48 to the serial monitor.
I like this sensor, the possibility to have 27 of them on one I2C line makes it a good candidate for getting average readings. The I2C lines will obviously limit the range but this will still be a great sensor for confined space projects and it’s very easy to talk to.