Reading the blog of Robert Hekkers I’ve read he started out using a PC running a single monolithic app developed in Delphi. Only recently he completed porting al his software from a PC to an ARM-based-board named Cubieboard3 (aka Cubietruck). In my house there is a PC running 24/7 as a NAS, but I would like to keep things separate so I’m also going to use a Cubieboard.
Robert Hekkers also switched his programming language from Delphi to Node.js when moving over to the Cubieboard. Since I don’t have any experience with Node.js but would love to learn, I see this as a great opportunity to start using something new, so I’m going to follow his example.
The Cubietruck will function as the central node in the whole home-automation system. In all the rooms there will be several sensors/controls and my main idea right now is to use Arduino based controllers for the sensor-nodes. Since not all rooms have Ethernet and I don’t think a sensor should have WiFi, I’ve selected a radio-chip called the nRF24L01+ as my main communication-device between the sensors and the central-node. ManiacBug has done great work building battery-powered sensor-nodes and writing an Arduino library to transport the sensor-data to the central-node. This actually comes pretty close to what I would like to build, only I would like to add more sensors, create interaction based on sensor-values and add a nice front-end (website/mobile app) to control everything.