Home automation is connecting many IOT devices within a house into one system, so that they can all be controlled or monitored from the internet. Home automation can be used to monitor lighting, temperature sensors, security cameras and also to control the central heating, sockets, switches and many more items.
I have a few smart devices in my house and wanted to control them from a central web application. I decided to build a server to control the smart devices in my house. I wanted to do this because most smart devices all have their own applications. This would be impractical to have to remember which apps are for which devices. I wanted to create an application for all of the devices.
Above shows an IOT 'TuyAPI' light switch to control a main light.
When connecting sensors and controls to the internet, there comes a risk that hackers could potentially view sensors or control switches. This is something to be aware of when creating a system like this. This means that care must be taken when adding controls so that no controls are connected that could cause harm or injury if put into the wrong hands.
To control the devices in my home, I set up a node.js server and installed relevant NPM libraries that could be used with the devices.
So far I am able to control 2 Sky tv boxes, a sony bravia TV, Magic Home LED Strip Lights, TuyAPI main light switch and a Sonos sound system all from the server. I will also add functionality for a nest thermostat controller.
I aim to improve this further by developing an IOS application that can interface with the Node.js Server. I also would like to add a security panel and adding live feed from IP cameras located around the house. I would also like to add a smart power meter so that the power consumption from the house can also be measured on a graph.