Welcome to my humble blog. If you have visited this blog before, you may noticed it’s now totally different. It’s no longer a personal blog about my travel and food but a blog dedicated to my passion I found 3 years ago which is smart home or home automation.
Around early 2016, I stumbled upon an open source project created for smart home known as Home Assistant. Before that, I was wondering what else I could achieve with my existing home network? I already have a Network Attached Storage (NAS) that host my files and media server, IP PBX system that enabled room to room calling and interactive voice response (IVR) when someone called my office and networked CCTVs across the house. Once I got to know Home Assistant, I fell in love with it right away. It was the final piece my home network needed to reach its full potential.
However, Home Assistant is not your typical plug and play solutions you will find in the market. Even though efforts are there to steer it toward that direction but there is still a learning curve you need to take. Even after 3 years of tinkering with Home Assistant, I still refer to the documentations whenever I work on it. That is why this blog is mostly about Home Assistant and how to make things work for you based on my own experience. This blog also serves as a log of whatever I have learnt along the way and hopefully with the shared knowledge, you will learn something from it too.
I get the inspiration for my smart home from Jarvis, the A.I. butler from the movie Iron Man. To me, it is the most realistic piece of technology in the movie. From there, I build my smart home base on these core fundamentals:
- Hands-off control – If I have to take out my phone or walk to a wall mounted control panel to turn on the lights, then that is not smart. A true smart home is an intelligent system that knows how to perform tasks for me automatically.
- Voice control – Until we have a machine that can read our mind, we still cannot automated our life 100%. Sometimes, the machine doesn’t know what I want. In such scenario, I must be able to control stuffs with my voice thus freeing myself from devices such as remote controls or phone.
- Talking computer – Other than the cool factor, a talking computer can alert me of what is going on in the house without the need to read it in a screen thus no interruption to whatever I am doing. It can also response to my queries intelligently like having a natural conversation with someone.
- Keyless living– The concept of a smart home is to simplify my life. That means one less thing I need carry, one less thing I need to worry about. The easiest thing to get rid off from my pocket at the moment is the key. Instead of a traditional key, it can be replaced by bio-metric keys such as thumbprint or facial recognition. Another option is to use PIN number. However, FOB or access card is definitely a no.
- Cloudless, only clear blue sky – Everything must be hosted locally in my own home network so that the whole system can continue to function when the Internet is down.
- Doesn’t rely on corporation – It’s too common to hear news about certain smart home devices/services become useless when the companies that sell them decided to end the business. However for my case, it will not be affected by this kind of issue because everything is hosted locally in my own server.
- Security and Privacy – Because it doesn’t need Internet and it is hosted in my own server, I can block Internet access for every IoT devices that don’t need Internet to work, thus preventing them from sending any unauthorized data to other server and block any exploitation on any known vulnerabilities.
- The house is a robot – The whole house itself is actually a giant robot. While it doesn’t move around like a normal robot, but it has all the parts and functions of a robot. For example; it can see (via cameras), hear and talk (via smart speakers), feel (via various sensors such as door sensors, motion sensors, rain sensors and vibration sensors), smell (via smoke and gas sensors), perform tasks (via smart switches and devices) and they are all connected to the brain (a computer) with wire or wireless technologies.
So what can Home Assistant do or more specifically, what can my home do? I will share the specific with everyone soon but here is the sneak peek of what is available in my home right now.
- Automatically arm home alarm when everyone left home and automatically disarm the alarm when someone reach home by tracking the Wifi connection of each occupants smart phone. No PIN number to remember. Alarm can be disarmed too when front (smart) door is unlocked by known person.
- When alarm is arm, the system will play random noises like people’s coughing, sneezing, baby crying, vacuum noise, etc… from Echos in each rooms.
- At night, other than noises, lights will also turn on and off randomly to simulate home occupancy.
- When someone approaches the house from outside, dog barking noise will be played from the speaker. Snapshot from camera will be sent to my phone.
- Any activity in the house while the alarm is armed will trigger an alert to my phone with snapshot from relevant camera.
- When the perimeter is breached, it will trigger the siren and then send alert to me and my neighbor’s phone.
- Turn off lights, fans, air-conditioners and TVs when no one is in a room using machine learning or Bluetooth tracker. Not using motion detection means no more appliances turning off by itself when I was still in the room because I stayed still for too long.
- Turn off air-conditioner when the room is cold enough.
- Detect outdoor and room temperature. If outdoor is cooler than room and the window is close, it will tell the occupant to open the window to let the cool air in and vice versa.
- TV time limit using facial recognition. If pass the limit, TV can be turned off automatically.
- Read out individual calendar events upon facial recognition.
- Start the vacuum and mop robot via voice command.
- Notify me when I have a visitor. If I am not at home, it will call my phone and let me talk to the visitor. Useful when receiving parcels from courier service.
- Manage shopping list and send the shopping list to anyone who arrived at specific locations I categorized as shops.
- Alert me when someone called my office when I am not at home
- Read my emails and send alerts on important emails.
- Turn on and turn off exterior lights based on Sun level and time.
- Turn on night light when someone is sleeping.
- Turn on toilet light when someone step into the toilet if the toilet is too dark and then turn off after a period.
- Automatically turn on air filter when the air quality sensor is not good.
- Remind me and my family members to exercise based on current weather condition and forecast.
- Turn on air conditioner before anyone reach home if the room temperature is too hot.
- Greet each occupants with words of encouragement, jokes, traffic condition, calendar events, etc… every morning based on facial recognition.
- Suggest food for breakfast, lunch or dinner at specific time.
- Start the day with soothing musics play all over the house.
- Alarm clock that will wake me up by turning on the room lights and music.
So these are some examples of what I am having at my home right now. Hopefully with my guides, you will be able achieve all the the above functions or even improve on it. But before that, you might want to know what hardware I am using to achieve them.