Caretaker is my DIY smart home automation and surveillance project

Caretaker is my DIY smart home automation and surveillance project. The aim is to create a totally wireless and scaleable system to control power switches (lamps and other electrical appliances) and measure values like temperatures, brightness and power consumption. All devices should be controllable through local devices as well as mobile devices over the internet. All devices use Microchip (formerly Roving Networks) WiFly WLAN modules , which allow bi-directional communication between all devices, so besides controlling a device it can itself send asynchronous status update messages, i.e. pressing a physical button on a dimmer to switch a lamp on, will also update a button in a remote control application, eliminating the need for periodically polling the device status.

All of the devices firmware is written using the Arduino core framework and a lot of libraries written by the Arduino community (see here and here ). Thumbs up for all the good work!

Caretaker is a completely Open Hardware and Open Software smart home solution. The main purpose of this project is to evaluate new technologies. It is in no way a finished and polished product, so it is mainly of interest to hackers, makers and developers. You need to solder (and even tweak) the devices and the software will contain bugs and is far from being a simple to use system. So use it at your own risk and don't try this at home ;-)


Github octocat The Caretaker source code is hosted at Github:

Caretaker 8-Way Socket Strip

Caretaker 8 way socket

This is a simple device that can switch 8 power outlets. It uses solid state relays that are capable of switching 8 Amps per port, but you shouldn't exceed 16 Amps in total. Each port has an LED indicating the current port state.


RGB Dimmer (SpoekaTM)

Caretaker Spoeka

This is a hacked version of IKEAs Spoeka TM lamp. It is remote controlled through a WLAN module and each of the red, green and blue color components can be set independently.


Climate Sensors

Caretaker Demo Sensor


EasyVR TM Voice Recognition

Caretaker Easyvr

This board contains the EasyVR voice recognition module: "Computer! Reduce lighting 10%!" :-)


Caretaker Setup Guide

For a quick first impression, you can start the software in a simulation mode without any physical remote devices your local workstation. How this is done is described in this quickstart guide .

Caretaker Demo Overview

For demonstration purposes I have designed five Arduino demo shields . They are quite simple so that you can also build these circuits on a breadboard.

This tutorial explains how you can create a minimal Caretaker setup with these shields and a Raspberry Pi.

Software and Architecture

Caretaker Screenshot Dashboard

The Caretaker server software is written with Ruby and Grape. The web application is written in JavaScript and uses the Polymer web component library . The firmware of the remote devices is written with C++ and utilizes the Arduino Framework.



Caretaker Dimmer

Put this between a power jack and a lamp. The brightness can be controlled in 256 steps either remote or with a local push button


Remote Control

Caretaker Remotecontrol

This is a small handy device with 10 push buttons for simple and easy control of the most important



Reflow Oven Controller

Caretaker Reflow Oven

A controller for a DIY reflow soldering oven.


An old and crude version

Caretaker Server Old

When I started to build my first home automation system many years ago, it looked like this. The base station was built with a FoxBoard and one of this sloppy remote controls that were available in most hardware stores for just a few bucks.