Home Monitoring

Over the past few months I’ve been slowly stocking up on all the equipment needed to properly get back into electronics. As I was gathering things together I discovered Arudinos. These are an easy entry into microcontrollers, much simpler in my opinion to PICs, and cheaper than most other developers kits. The fact that they’re open source and open hardware just seals the case. The standard Arudinos are rather nice to work with, but since messing with them on a few mini projects to teach myself about them, I came across a guy who was selling his own custom design, utilising the arduino bootloader and interface, but in a much smaller form factor and inbuilt wireless communications.

These JeeNodes are about the size of a pendrive, and have an inbuilt RF12B wireless module. Along with the nice hardware design, there are also some easy to use libraries, and a great website to accompany them, with lots of nice tutorials, information, and general geekiness.

Home Automation

So, where does home monitoring come into this? One of the addon boards that Jeelabs sell are little room monitoring nodes that detect temperature, humidity, and light level. Add a PIR and you’ve got a motion sensor too. The guy behind the JeeNodes, Jean-Claude Wippler, has done some great work on power consumption meaning that these room nodes can run off a single AA battery for nearly a year. There are about a dozen or so of these nodes now spread across my house, logging into a database, and I’ve done some basic graphs to display the data.

Home Automation

Now I’d also noticed another project using arduinos to monitor electric consumption that was also based on JeeNodes, and reporting back to a central server to log into a database. This got me thinking, could I combine these, and maybe more. The beauty of open source is the fact you can tweak and edit to your hearts content. The fact that both these projects used JeeNodes, and more importantly, the RF12B library from JeeLabs, means that I only need one receiving station and a few small edits to the nodes.

To the transmissions I added a node type to the beginning of the data. This defined whether the node was a room node, power node, or any other future node types I may define. Most of the rest of the code was left untouched, except to assign a node number to each node. That was the easy bit.

Next I needed a receiving station, and some way to get the data it received into a database. For this I once again turned to the JeeNode. Handily, JeeLabs also sell a nice case for the JeeNode, along with a Ethernet add on. This gives me a very small self contained module that simply needs power, and an ethernet connection. Both the energy monitor project, and the room node project had their own code for a base station, and for getting the data into the database. In the best traditions of open source, I have stolen from both these projects and combined my favourite ideas out of both.

The houseNode sits and listens for any broadcasts from any nodes. It knows about the different types of nodes, and the data structure to be expected for those nodes. When a data packet is received then the node type is stripped out, and the rest of the data put into a structure definition depending on the type. Then a JSON structure is constructed, and sent via HTTP POST to a web server. No acknowledgements of data being received are currently sent, but with future expansions that I have in mind, this will be a requirement.

Home Automation Home Automation

The web server will receive the POST command, and basically dump this information into a database. From this database, a front end can draw graphs and report on anything you want. The front end is very much still in construction, but can be viewed at http://home.22balmoralroad.net/

Future developments I am considering are a thermostat node, to control our central heating, and RFID entry/exit nodes to log in and out of the house. The RF12B modules have a limit of 32 addresses, two of which are reserved. However, 30 nodes should be enough for most of my ideas! It does have the other benefits of very low power, very simple, and the JeeLabs library even has encryption built in. Below are the Arduino sketches for each of the nodes.



My Cellar

My Cellar, AKA the command center!

I’ve had a fairly productive weekend sorting out my cellar, ready to crack on with some of my projects, although strictly speaking sorting out the cellar was actually on my list of projects. Besides the standard cleaning up of all the mess, including a good hoovering, was the final vanquishment of the cable monster. I know he’ll come back at some point, but I’m hoping that with enough will power from me to actually put things back where they belong, his return will not be for a long time.

Before (Already was beaten down from his full might about 3 months ago!):

The Cellar


The Cellar

Next on my list of projects down here is the construction of my workbench panel. I want to embed a load of my equipment permanently along the back of the workbench, so for this I knocked up a quick frame that allows me to start mounting some of my tools. So far I have my digital power supply and OpenBench logic sniffer. The digital power supply is one built from a kit available online from Tux Graphics, which is a nice little variable current/voltage power supply, powered by an old laptop PSU, and controlled with an Atmega8a microprocessor. It will also hook up via usb to a computer, but unfortunately a slight design error in the placement of the power switch prevents me from doing this at the moment. The OpenBench logic sniffer is an open source logic analyzer hardware design.

The Cellar The Cellar The Cellar

I also want to embed a few other tools into this panel, such as a multimeter, frequency counter, usb hub, signal generator, and just about anything else that is useful and will cram in here.

In other projects, still waiting for me 3d printer to arrive. RepRap Central said to allow 3 weeks for delivery, but so far it has been over 5 weeks. I’m not impressed at all, and if they weren’t the only place I can find in the uk to get the complete kits from I would be going elsewhere. I’m hoping it arrives next week at some point, as I want to document the build process for this web site. On the quadcopter front, I’m beginning to think I’ve got a faulty controller board, or at least a faulty gyro on the board. I’ve ordered another one to give this theory a test, and if the new one works will get it replaced. Not really going to be a waste of money getting another as I’m sure I’ll be building a few. Once I have this first one off the ground, a bigger better one will be in the pipeline with full arducopter control, which includes gps, telemetry, and full autopilot!

So, thats two posts in to weeks. So far so good! 🙂

Blog writing

OK, I admit it, I’m useless at writing on here. So, now I’ve admitted it, I’m going to try and do something about it. Baby steps at first, but I’m going to attempt to do at least one post or page a week. I’ve plenty of projects going on, and always have an opinion on things, so finding subjects shouldn’t be hard.

Just a few of the things I’ve got on the go at the moment are:

Quad copter – I’m building my first quad copter, and hopefully my next post will be about the first successful flight, and maybe even a video, probably of me crashing it! Just waiting for some replacement parts from eBay. After the first one is built, I’ll be looking at building a bigger and better one, hopefully with a camera on it.

House monitoring – this will be another post, or collection of posts, in my never ending task of proving just how much of a geek I am. I’m aiming to be able to not only monitor the house (and thus make it more efficient),  but also control it remotely. The initial stages can be found at home.22balmoralroad.net. Very much a work in progress.

Electronics – Going pretty much hand in hand with the above two, is my renewed interest in electronics. At the moment I’m very much in the stage of getting the tools together that I need, and learning the cad type software for PCB design. I should have some info to write up on my work area soon.

3d printer – last, but by no means least, I’m awaiting the delivery of my Huxley reprap printer. Have you realised I’m a geek yet?

As well as all this, I’ll no doubt have a rant about various things, including a bit of a write up about my new Nexus Galaxy, when it finally arrives.

Oh, and I’m writing this using the WordPress app on Xoom, which seems quite a nice simple app, and lets me write things whilst I’m in bed without my laptop, because lets face it, everyone thinks best when they’re trying to sleep!

That’s all for now, lets see if I keep my promise!