I have been interested in "home automation" for years. In fact, it started with writing a php library for x10 in 2012. I bought some x10 modules after writing that library, but x10 was very unreliable and slow. This made me look for other solutions
After dealing with x10, i noticed z-wave. I bought a Raspberry Pi and a razberry board. I bought some power plugs to test it. That was when i wrote my own automation scripting library in PHP. I worked, it could turn on and off my few lights based on dynamic conditions. But a great GUI was missing and this solution required a server running php.
But that fact that i only owned a small appartment i felt no use for automations. I had like 4 lights, that was all i was able to control.
But we are in 2020 now
This is a picture of my technical "room". It consists of several devices and most of them are connected into one single system. Im not proud of the cable management BTW
IoT is starting to really catch up. There are now tons of devices that can be controlled via either some custom made http api, z-wave, zigbee and so fourth.
Currently these are the devices that I can control via some kind of communication:
- My new kitchen appliances (Siemens with home connect)
- My sound system (Sonos)
- All my lights (Philips hue)
- My survailence cameras (Ubiquiti)
- The bedroom TV (LG with WebOS)
- Temperature in the floors (heatit zwave)
There is only one problem, how do I control all of these devices using a single automation library when they use several forms of communications?
Home assistant to the rescue.
Home assistant is what I have been looking for since the early days. The beauty of home assistant is that you can control tons of devices, and it has lots of plugins that you can install to control your IoT devices.
You write generic automation scripts based on the state of all the devices you have connected to Home assistant.
My current and only automation is that I turn off the lights in the bedroom when i turn on my LG TV.
But more automations will be written once i find some suitable automations.