Creating a smart home takes more than just reading off some temperature sensors. My home should be able to switch/dim lights, heating, fans etc. based on environmental conditions. I should also be able to remotely control everything from a smart phone and a web page and react upon scenarios. As I have mentioned before, I don't want to buy a ready to use commercial system. I want to be able to add my own made devices to the system. I had a few criteria for selecting a system, listed below.
- Switches and dimmers should be available in Norway.
- Possible to make my own transmitters (PIR/Temperature/movement/etc.).
- Easy to set up and use.
- Possible to control with other means than a remote control (automated).
- Possible to create my own controlling interface/dashboard.
Controlling lights, fans and other appliances connected to the mains require a little more than an Arduino and a soldering iron. I have, for now, decided on using Tellstick Duo, a combination of Nexa switches and Switch King for doing this. One of the reasons is that the Nexa switches are widely available here in Norway. A pack with 3 self learning switches and a remote is priced at under $40 (NOK 200,-).
With this device I can control a wide variety of light switches and dimmers, including the Nexa range. The software for this device is open source, but a bit sparse. It comes wit a simple on/off/dim interface, but it may be controlled easily with other remotes, sensors etc.
Tellstick Duo can both transmitt and receive signals at 433MHz. This makes it well suited for both remote control and as a receiver for data collection, like temperature sensors, movement detectors etc.
The Switch King software is made for Tellstick and match my criteria well. It has a lot of options when it comes to scenarios and external data sources.
One of Switch Kings strong features is that it can be controlled using REST. This means I can control lights from a web browser. Another strong point of Switch King is that it can collect data from other sources in various ways. This is very useful if I want to switch on the ceiling fan based on room temperature, for example. To top it off, it may also run scripts based on events. This is useful for sending me a text (SMS) or mail if someone is in the house when nobody is supposed to be there.