Categories
electronics remote temperature sensor sensors

Finishing phase 1 of the remote temperature sensor

So, as seems to be the way with blogs, I never did get around to documenting the next stages of the project. A bit of a catchup is clearly in order.

Currently the transmitter is hanging under the eaves on the north side of the house where it is reasonably well hidden from the sun (given I am in the southern hemisphere that sounds all wrong, but there is a tree in the right place and no sensible place on the south side of the house), and in easy reach of a power outlet which happens to be on the outside of the house there. This is sub-optimal, as the temperature it measures is clearly heavily influenced by the house itself (on still nights, it doesn’t get anywhere near as cold as it should, but on windy nights it roughly matches the output of the nearest official weather station). I do have a LiPo battery and a “Lipo Rider” board (the 0.9 version I think), but I don’t currently have the solar panel to keep the battery charged, and I haven’t built something approximating a Stevenson screen yet (although I am planning something much simpler with a couple of concentric PVC pipes).

The temp-sens-bits zip file referenced below actually includes the rf receiver circuit and layout as well; it is extremely simple, since I just use the receiver sub-board to drive the receive pin on a cheap 5v USB to rs232 breakout, with a buffer in between to drive enough current to keep the usb chip happy.

schematic for the remote temperature sensor rf receiver circuit
RF receiver schematic

The receiver doesn’t actually have 20 pins, (it has 4 at each end) but I needed it to be the right length to generate the layout correctly:

veroboard layout for the remote temperature sensor receiver
veroboard layout for the receiver

The 7-pin header is where the usb-serial widget goes (which was from Little Bird but I don’t think is sold by them any more), and the chip is a 4049 cmos hex inverter buffering the output of the receiver.

Firmware is pretty simple; I’ve use the Arduino programming environment with the NewSoftwareSerial, OneWire and DallasTemperature libraries. The source is in the temp-sens-bits zip file (warning: it is ugly and includes loads of commented-out debugging). The code on the server which processes the output will be the subject of a later post.