I’ve been trying to create a bunch of little low-powered sensors for a month or so now, so I can use them to track various metrics around my house.
I want to measure simple things like when the light is turned on/off, what the ambient temperature is, the times of doors opening and closing, etc. I also want to install a little sensor on my electricity meter so I can “count” the “pulses” (i.e., count the time it takes for the little wheel to go round - from this you can work out the amount of electricity usage across the day).
Of course, having sensors measure things is one thing - getting the data is just as important.
It was a very lucky coincidence, but the other day SparkFun released an awesome little service that is perfect for what I want. I’ve written a little bit about it here. Incidentally, I’ve also expanded my PHP class, PHPePhant, since then too.
The transmitter sends data from two sensors - a light sensor and a temperature sensor - across the room to my receiver. That then pushes the data up to SparkFun. From there, I can plot the various changes in values.
The links above will take you to the GitHub repositories where the code is. It takes two arduinos, one with an ethernet shield.
There’s a lot more I need to do. Firstly, I need to introduce more sensors into the network. That way I can have multiple sensors around the house doing different things. Secondly, I want to investigate the use of a better radio transmitter. I’m using a very simple one at the moment that only sends data one way. It’d be nice if I could mesh them in some way, or at least have a two-way radio channel. Thirdly, I need to condense them down from a breadboard into a more permanent solution. I might start with a simple single-sided copper PCB prototype board, and once I’ve done that learn how to make a PCB board in Eagle and send it off to a manufacturing house for printing!