I was recently at a local recycling centre and saw that they had some second hand temperature data loggers on sale for $2.50. At that price how could I not buy one to see how they worked.
If you're not familiar with the this kind of data logger, they measure the ambient temperature at regular intervals and log the data to internal memory. They're typically used to monitor the temperature of stock through a logistics chain, be it refrigerated or not. For example, if you run a grocery store and you notice that the quality of the fruit on sale isn't of an acceptable standard, you might get your supplier to put one of these in a delivery to monitor the temperature throughout the cold chain. By doing this you may be able to detect that the refrigeration in the truck isn't at the right temperature.
The nice thing about this logger is that it has a built in USB cable. When plugged into a computer the temperature logger appears as a mass storage device containing a pdf report and an encrypted file containing the logged data.
From what I can tell, the PDF report isn't actually stored on the logger, it's generated dynamically from the logged data when the device is plugged in.
|Logged Data Report|
The specs on the back of the logger are a bit lacking. It covers a temperature range of 0 to 30 degrees Celsius, and records data every 10 minutes for 111 days. If you do the math, that comes to 16 thousand samples, that's where the 16K in the device ID comes from. The SU indicates that this logger is single use, so it's not really any use to me. There is software to configure the device that may be able to reset it, but it's not free and not worth the effort. One thing that did surprise me is that there aren't any specifications for accuracy or resolution of the temperature measurements.
|Back Panel and Model Details|
As the device was of no value to me I decided to pull it apart. At first I tried to do it carefully, but when it wouldn't come apart I assumed that it was ultrasonically welded to stop moisture ingress. So I decide to destructively take it apart.
After removing the sticker that covers the front, you can see the start and stop logging buttons that are an integrated part of the plastic case. It should also be obvious at this point that they aren't too worried about moisture ingress, there are holes all over the front panel, and although they're covered by a sticker, it's not ideal. Having said that, the device isn't designed to have a long life.
|Buttons Moulded into Case|
After hacking away at it, I soon found out where the the screws were hidden.
There are little indentations on the back that I thought were part of the case, but it turns out that they are stick on covers that hide the screw head.
|Removing a Screw Cover|
|Rubber Waterproof Seal|
|Top Side of PCB|
|Back Side of PCB|
Let's have a look at the ICs on the PCB. The first is an Atmel 32 bit micro controller that handles the USB communication, and presumably generates the PDF report when the logger is plugged into a computer. It's also likely that it coordinates taking temperature measurements and storing them in memory. To meet the requirement of 111 days of operation it's likely that the micro-controller makes extensive use of sleep modes.
|AT91SAM7S256 32-bit Microcontroller|
|AT24C256C 32KiB EEPROM|
|SN74CBTLV3126 - Quad FET bus Switch|
The purpose of the Winbond 512 kiB flash memory isn't clear to me. Maybe it extends the program memory of the micro-controller, maybe it holds a template of the PDF report file, could be something else, I'm unsure.
|25X40CLNIG 512 kiB Flash Memory|
Finally we come to the actual sensor, it's a bead style thermistor. I was expecting something different, maybe having it thermally bonded to the case to get a better response. It could have been mounted a little better, but I guess it does the job.
You may have a nagging feeling that something is missing. A temperature logger that runs for 111 days should have some way to keep a stable time base, so there should be a real time clock somewhere, and sure enough, on the back, there's the expected 32 kHz watch crystal. The traces from the crystal run into the chip on board assembly that contains the the driver for the LCD.
Another thing that I'm not sure about is how the thermistor is read, as the traces run into the chip on board. I can think of two possibilities here, either there is an A to D converter that reads the thermistor and communicates the data to the micro-controller digitally, or there's a signal conditioning amplifier the feeds the signal to the on board A to D of the micro-controller.