Now that Open Energy Monitor is up and running I need to decide on what hardware/software I shall use for the Home Automation aspects of the HAPMaS (Home Automation & Power Management System).
Currently under consideration:
Arduino – the Arduino concept is Open Source and so very extensible and there is a lot of people using it for millions of projects worldwide and so I am convinced that the HAPMaS must be Arduino-based.
It would cost only a £2-3 to put one in every sensor or actuator in the system and if I can develop a standard code library for the functions I repeatedly need it will make adding new components quick and easy.
- 433MHz – I originally wanted all the devices on our home Wifi network and I started down that route using ESP8266 wifi devices but now I feel I much change tack. Wifi works well and it makes every device directly addressable from any other but it comes at a cost. Wifi devices are quite power-hungry.Remember… I am likely to have a lot of these devices scattered throughout the house so I really don’t want to have to be changing batteries every month.So I have decided to use a 433MHz radio network. This frequency is used frequently for device to device communications in things such a weather stations, wireless heating thermostats etc. They are well known and well supported. We will use the RFM69CW 433MHz transciever from HopeRF for all inter-device communications with the ESP8266 where a direct wifi connection is needed.
- Read about the RFM69CW specifications – RFM69CW-V1.1
The Open Energy Monitor, which I installed this week, uses exactly this device for communication between the emonTX Arduino and the emonBase Raspberry Pi.
To buy in the UK the RFM69CW 433MHz is over £6 each in the UK at the moment but only £2 if bought from the USA… I can feel a bulk buy coming on!
ESP8266 – I have already mentioned this little device for Wifi communications and so this will be the standard way we connect devices to the Wifi network and the Internet. Most devices won’t need direct Internet connection so I don’t expect to use many of these but they are cheap at just £2 each!
The nice thing about the ESP8266 is that you can use the same language and development system to program is as the Arduino.
The general concept I want to follow with the software is to use existing products as a starting point and to make them fit our particular use case. Also, it must be free or nearly free and not liable to ongoing license fees.
I also want to try to keep the software as much as possible to a standard installation and only do customization when absolutely necessary.
- Open Energy Monitor – Being Open Source it is easy to change but that means it suffers as many OS products do in that the documentation is sketchy and very tech-oriented. There is a lot of documentation but very little for the beginner. Nevertheless, it is a good Energy Reporting system and so I am happy to run with it.
- openHAB – again Open Source and free. Again, like OEM, documentation is sketchy or it is very difficult to search out. However, it is probably the Home Automation system that is most used and it has a great following. It is also very manufacturer and device agnostic and so is possibly one the most flexible systems available as far as integrating with the various diverse devices.Unfortunately openHAB is almost entirely JAVA based which makes it operating system independent but it also means that I will have to ressurect my Java programming skills should I need to amend it. Hopefully I won’t.
Linux – although it will run Windows the Raspberry Pi (RPi) natively runs Linux (Raspbian in my case) and the RPi used to create the emonBase runs Raspbian with some Open Energy Monitor specific changes.Currently openHAB is running on a CentOS 7 system as a Hyper-V virtual machine on my desktop PC but I would expect to transfer it to our Windows Server 2012 server at some point. I am keeping it off WS2012 at the moment to try to isolate it from our main home server in case it all goes horribly wrong (!!!).
emonCMS – in Open Energy Monitor the power data is read in the Arduino-based emonTX and transmitted vis 433MHz to the Raspberry Pi that is the emonBase. That sends the data to emonCMS to report and record. emonCMS can run on a local computer or on the emonBase Raspberry Pi itself but I am currently sending and storing the data on an emonCMS operated publicaly by the people selling the OEM hardware. I will probably run my own emonCMS on my VPS web server but for now I will use the emonCMS.org facility.
So far I have a working OEM system reporting and recording my house power use and my solar PV generation at emonCMS.org. I have openHAB installed with the demo installed. So the first thing I did was to try a proof-of-concept and to try to display on openHAB the house and solar data collected by OEM. If I can do that then there should be little to stop me totally integrating the two systems.
That is the subject of Part 2…