A smart home system consists of a set of interconnected devices that can be controlled either automatically (e.g., automatical response to an event such as temperature change) or manually from anywhere by another device (e.g., a mobile phone) over the internet or a local network. The interconnection can be established in a wireless or hardwired or hybrid manner.
Nowadays there are several smart home systems available in the market. All of them are based on cloud service, which raises the issue of privacy. For instance, audio data for voice control or video clips from your home security camera need to be transported to an external server (that is outside of your home network) for analysis. In this case, the smart home service provider has access to your privacy-sensitive audio and video data. Similar, when home devices are controlled remotely from the internet via a mobile phone, the control messages along with potential privacy-sensitive data are passed through the external server. No one knows how cloud-based smart home service providers use their clients’ data, and no one knows who inside the service providers has access to the data. Moreover, the service providers are often the target of cyberattack, which might lead to data breaches that negatively affect hundreds of thousands of users.
It is therefore desirable to develop a privacy-preserving smart home system that satisfies the following data privacy principle: data generated in the smart home system are accessible to only smart home system users. In a series of posts, we will implement such a system that has the following features:
- It can operate entirely within the local home network without any cloud-based service.
- It is accessible only to the users from anywhere via VPN or port forwarding techniques.
- It takes advantages of many excellent open-source softwares such as Home Assistant.
Detailed instructions to build such a system are provided below. The first thing is to set up a smart hub that coordinates all devices and provides remote access. Other components may include voice control via smart speakers, home security system, private home phone, etc. A simple running system can be built by configuring Raspberry Pi -> installing Home Assistant -> installing Rasa server -> installing Rhasspy -> configuring intent handler -> setting up audio input/output -> setting up Zigbee devices -> creating automations. If the appliances are not smart but controllabe via a IR/RF remote, then a universal remote can be adopted for automation.
- Smart Hub
- Raspberry Pi and OS
- Home Assistant
- IoT Interconnection
- Remote Access
- Voice Control
- Home Surveillance System
- Facial recognition
- Others
- Hardware
- Networking
- Switch and plug
- Camera
- Zigbee Device