Blog

Home Assistant, the missing piece I needed to get into home automation

For a long time I’ve watched the world of home automation with eager interest in the hope that one day I would be able to apply it in my own home.

Over the years I have read about various systems and protocols used in home automation such as the X10, Z-Wave, ZigBee or Insteon. Some of them use cables or the power line for signaling and control, while others communicate wirelessly via radio waves. Some of them proprietary and others open. But usually incompatible with each other.

Unfortunately, due to their high cost, the difficulty of acquiring the components at that time, their technical limitations, their complex installation or their bad UX from inside and/or outside the home made it impossible for me to implement them in my own home. Until now.

Several changes in recent years have made home automation more and more accessible. The advent of smartphones or the introduction of new control systems such as Apple Home, Google Home or Amazon Alexa has helped us to interact with our home automation system in a more natural way, even using our own voice. The emergence of a new generation of smart home devices, from lights to sockets, thermostats to locks, some of them quite affordable like Xiaomi’s smart home product line, plus the arrival of small and inexpensive wireless microcontrollers like the ESP8266, has made me regain my interest in home automation.

But the existence of various manufacturers with different ecosystems that usually do not interact properly with each other or depend on a proprietary cloud service made me reluctant to choose any of them. The discovery of Home Assistant was the piece that I needed to jump right in and install a home automation system in my home.

Home Assistant is an open source project supported by a great community that can be installed on a small computer like a Raspberry Pi and is capable of interacting with home automation systems of various manufacturers without relying on an external service. So you can buy smart devices from different vendors, install Home Assistant on a Raspberry Pi (or other computer) and have them interact with each other without using a proprietary service that is somewhere on the web out of your home and your control. Isn’t it cool?

In the following articles I will show you how to install Home Assistant, how to configure it and how to use it in your daily life. Stay tuned!

 


Some handy links

home-assistant.io
GitHub : Home Assistant
Twitter : Home Assistant

Philips Hue
Belkin Wemo
Nest
ecobee
Yeelight
Aqara
Itead | Sonoff
Ikea Smart Home

Start using a VPN right now!

Maybe you’re not using a VPN yet. Perhaps you don’t even know what a VPN is. But it’s more likely you use a connected device such as a smartphone, a tablet or a PC everyday. If that is the case, I strongly suggest that you continue reading. It’ll be worth it.

 

What is a VPN?

First things first… What is a VPN? VPN stands for “virtual private network” and, in short, is a system that allows you to connect to a remote network via a secure, encrypted connection. It can be seen as a tunnel between your computer (or your connected device) and a server operated by the VPN service.

Typically, when you try to access a website on the Internet at home through the router provided by your Internet service provider, your ISP (Internet service provider) receives your requests and redirects you to the site you want to visit. This means that all of your Internet traffic passes through your ISP and can (and indeed is) monitored and logged by your IPS. What’s more, they can track your behaviour and sometimes even give your browsing history to advertisers, government agencies and other third parties.

When you use a VPN, all data traveling between your device and the VPN server is encrypted so only you and the VPN server can see it. Your ISP knows that you’re connecting to a server, but because all traffic between you and the VPN server is encrypted, it cannot identify what pages you are viewing, what sites you are visiting, what services you are using or from what online stores you are shopping. If you make sure to connect only to HTTPS-secured websites, your data will remain encrypted even after it leaves the VPN.

 

Why do I need a VPN?

There are many different reasons why you should start using a VPN if you’re not already doing it, but let’s look at the top ones one by one.

Privacy

From Orwell’s Big Brother to PRISM, the U.S. global surveillance program revealed by Edward Snowden in The Guardian.

From the UK Investigatory Powers Act, that allows for the collection of bulk personal datasets, gives security services powers to hack into personal devices and requires all communications service providers to collect and store web records and communications data from their customers for a year, to the Facebook and Cambridge Analytica scandal.

It seems like everyone, from hackers to governments, is after your personal information.

Without a VPN, your ISP, your employer, the owner of the coffee shop where you connect your laptop, or anyone with the right tools can monitor and log your activity, messages, etc.

By using a VPN, all your data will be kept encrypted from your device to the VPN server, protecting your privacy from prying eyes. So your ISP or the owner of the Wi-Fi router can no longer see which websites you visit. In addition, VPNs also hide the actual IP address of your device, making it harder for advertisers to track it online.

Security and Freedom

When you connect to the Internet through a Wi-Fi network at an airport, coffee shop, hotel or any other public network, your data is especially vulnerable and your bank details, credit card numbers, e-mails or account passwords may end up in the wrong hands, to eventually be sold on the Dark Web. Using a VPN when connecting to a public Wi-Fi network prevents hackers from intercepting your data using techniques such as the man-in-the-middle attack.

Some countries do not have the same protections for freedom of press, speech and expression as most democratic countries. Indeed, some regimes use oppressive measures to monitor and take action against those they consider to be a threat to the government. Journalists and political activists living in these countries must take extra precautions to protect their communications and rely on VPN services to bypass government censorship and communicate in freedom with the outside world.

Net neutrality

Thanks to all those lobbies that are pushing to kill net neutrality, your Internet service provider is likely to begin, if they have not already done so, to filter out the services and content you can and cannot access, or to serve at different speeds the data packets you receive according to their business interests.

This means that your ISP, let’s take Comcast or Sky as an example, could significantly reduce the speed of YOUR Internet connection when you access Netflix or YouTube to make them unusable because these are services that compete with other services that Comcast or Sky offer.

It means that your ISP may prevent you from using services such as WhatsApp or Twitter or playing online games like Fortnite unless you pay an additional fee on top of the fee you already pay them to have Internet access on your device. Isn’t it a nonsense?

It may also happen that your ISP chooses to prevent you from using file sharing services, such as BitTorrent, even in a country where these services are completely legal and for legitimate files such as downloading the latest version of Raspbian to install it on your new Raspberry Pi.

By tunneling your traffic through a VPN, your ISP won’t be able to push you into slow lanes or block access to certain services.

Geo blocking

There are providers that allow their content to be accessible only from certain locations, so if you are not physically present in one of those locations you will not be able to access the content.

For example, let’s say that you subscribed to a streaming video service such as Amazon Video that is available only in the country where you live. When you are on holidays in another country, you will not be able to access this service even if you are paying for it because Amazon will detect through the network you connect to that you are located in another country.

A VPN will help you avoid this restriction by connecting to a VPN server in the country where you normally live, so the content provider will see you as if you were physically there, even if you are on the other end of the world.

 

Choosing a VPN provider

If you’ve read up to here, you may have understood the benefits of using a VPN and might be interested in starting to use one. And so you’re asking yourself the question of which VPN provider to use. First of all, be careful with free VPNs! You know, nothing is really free, so if a provider gives you a free VPN service, they might be selling your data and browsing habits, your bandwidth or even worse.

Do your homework by comparing different VPN providers and read their legal notes. Choose one that puts privacy and security first with a zero-logs policy and provides enough quality servers.

My recommendation is the VPN provider I’ve been using for several years, NordVPN. A secure and reliable VPN provider with a zero-logs policy that has a large network of servers around the world and continues growing, providing quality service and good customer support at a very reasonable price.

NordVPN Best Deal

Do you want more details?

  • Being based in Panama, NordVPN falls under the country’s jurisdiction and Panama has no data retention laws.
  • A strict no logs policy. We want to ensure user privacy and security, therefore we never log user activities.
  • Military-grade AES-256-CBC encryption and a variety of protocols to choose from: OpenVPN (UDP and TCP), PPTP, L2TP/IPSec, IKEv2/IPSec
  • Risk-free 30-day money-back guarantee
  • Unlimited bandwidth and data
  • 4865 servers located in 62 countries (the server number is always growing)
  • Fast speed servers that are also reliable and consistent
  • Multiple ways to contact 24/7 customer support (live chat, email, ticket system)
  • A CyberSec feature that blocks dangerous websites and lets users avoid annoying ads
  • An automatic kill switch (can kill individual processes or kill whole internet connection)
  • 6 simultaneous connections
  • P2P friendly
  • Works in countries (China, the Middle East countries) where internet access is restricted, and strong censorship is in place
  • Double encryption to ensure top level privacy and security
  • VPN Apps for all major platforms, including iOS, Android, Windows, macOS
  • Compatible with Raspberry PI, various routers, Smart TVs and more
  • Encrypted proxy extensions for Chrome and Firefox browser

If you finally decide to subscribe to NordVPN click on the link below to get the best deal:

NordVPN Best Deal

 


References

NordVPN : What is a VPN?

Wikipedia : PRISM (surveillance program)
The Guardian : NSA collecting phone records of millions of Verizon customers daily
The Guardian : NSA FILES : DECODED

GOV.UK : Investigatory Powers Act
Parliament : Investigatory Powers Act 2016
WIRED UK : What is the IP Act and how will it affect you?
The Guardian : ‘Extreme surveillance’ becomes UK law with barely a whimper
BBC : Details of UK website visits ‘to be stored for year’
TechCrunch : U.K. Users’ Online Activity To Be Logged Under New Surveillance Law

The New York Times : Cambridge Analytica and Facebook: The Scandal and the Fallout So Far

PC Magazine : Trump Officially Hands Control of Your Data to ISPs

The WIRED Guide to Net Neutrality
CNN : The end of net neutrality is here
The New York Times : The Internet Is Dying. Repealing Net Neutrality Hastens That Death.
SaveTheInternet.eu : net neutrality fight in Europe from 2013 to 2016

Wikipedia : Geo-blocking

 

How to upgrade DD-WRT

Sooner or later after installing DD-WRT on your router you will need to upgrade it. Fortunately this task is easier than the initial installation.

First, you will need to download the appropriate file for your router. To do this, you can go to any of the following addresses and look for the model of your router:

ftp://ftp.dd-wrt.com/betas/

https://download1.dd-wrt.com/dd-wrtv2/downloads/betas/

https://dd-wrt.com/support/other-downloads/?path=betas

In my case, as I have a Linksys WRT1900ACS, I browsed up to this folder:

ftp://ftp.dd-wrt.com/betas/2018/07-28-2018-r36410/linksys-wrt1900acs/

In the corresponding folder you will find two files. The factory-to-ddwrt file is to flash the router from OEM to DD-WRT, which is the one we used in the first installation. The webflash file is to upgrade when already running DD-WRT and is the one we need now. In my case I downloaded:

https://download1.dd-wrt.com/dd-wrtv2/downloads/betas/2018/07-28-2018-r36410/linksys-wrt1900acs/ddwrt-linksys-wrt1900acs-webflash.bin

Next, access the router’s GUI (by default is at 192.168.1.1), go to the Administration tab and click the Firmware Upgrade tab.

Click the Browse… button and select the file you have previously downloaded.

Finally, click the Upgrade button and wait until the router restarts.

 


Some handy links

Wiki dd-wrt: Upgrading to a Newer Version of DD-WRT
How to install DD-WRT on the Linksys WRT1900ACS Wireless Router
Linksys WRT1900ACS product page [Amazon UK]

 

How to install DD-WRT on the Linksys WRT1900ACS Wireless Router

The Linksys WRT1900ACS is a good wireless router, but one of its best features is that it is supported by different open source firmwares including dd-wrt. So, if you’re like me and want to use this router with the OpenSource router firmware to unlock all of its power instead of the limited factory firmware, read this guide to learn how to install it. It’s not a hard process but I had several issues when I installed the firmware on my router so I’ve written in this guide all the solutions I had to apply. I hope they will help you too.

Read More

Block Coinhive from mining coins for others

Some days ago I noticed while I was browsing the web with Firefox Quantum 57.0.4 (64-bit) how the fans of my Macbook Air started running at full speed. Immediately I opened the Activity Monitor and I saw that the process responsible of this anormal CPU use was “Firefox Web Content”.

Afterwards I used Little Snitch to investigate who was responsible for it and I found out that a website was connecting to the domain coinhive.com to do JavaScript crypto coin mining.

The solution was simple, I added a new rule in Little Snitch to deny any outgoing connection to the domain coinhive.com

Now my Mac will not work mining to others via coinhive 😃