Using The Internet For Home Automation Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

In recent years technology in the home environment has proceeded at an unprecedented rate. There has been major development in the field of consumer electronics. With newer, smarter network enabled devices, there is huge potential for smart homes. This started from simpler automatic washing machines to more advanced climate control for the whole house and advanced home theatre systems, some of which are now even available cable free. As we strive for a more comfortable lifestyle, many of the basic functions performed manually a few years back, are now becoming automated requiring little to no human interface. Smart switches, that turn off automatically when appliance is on idle, and wireless home plugs are now readily available from any hardware store. Numerous other items are commercially available including HVAC controllers (heating, ventilation and air conditioning), automatic pet feeders, blind controllers, light ambience settings and domestic robots.

Despite these technologies mentioned above and the growing sales numbers, industry has been rather reluctant to create an all in one package readily available for all. The smart homes available today are often tailor made for the user and incur a very high initial cost. One of the front runners for commercializing this is [ [1] ] though it is still way off from being a truly intelligent smart home, and it just incorporates al lot of separate technologies in the home.

The motivation for this project is to create a more comfortable home environment by bridging the gap between the simple items found on the market today and implementing them into a fully fletched smart home. This ideas is realisable using simple yet effective Bluetooth wireless technology along with a controller for the appliances. Bluetooth was chosen since it is an open standard, and is free to use, as well as being wireless, thus avoiding unnecessary cables. Being able to control many of one's home appliances from the comfort of the sofa or the bed is everyone's dream.

In the next section some previous work done in this field will be discussed. In section III the aims and objectives of this project will be laid out, and the method and expected deliverables will be discussed in the latter sections.

Literature Review

There are some published home automation examples such as [ [2] ]. In this publication the author proposed using Bluetooth technology in the home due to its simplicity and low cost, though no system was implemented. The author explained how Piconets could be setup, and provided a thorough explanation for the Bluetooth protocol stack and architecture. In [ [3] ] a Bluetooth based automation system was setup. This involved building a protocol based on the Bluetooth stack to send data to the devices. The paper also proposed using plug and play (PNP) methodology for easy addition of devices. A simple system using a temperature sensor and a fan was implemented. A similar system is that proposed in [ [4] ], where a Bluetooth mesh topology was used to connect sensors and relay real time information on a mobile phone or PC server.

The internet is also a very good means for home automation. [ [5] ] proposed a system where devices would be connected to a master node which in turn is connect to a server (PC). Commands from the PC are relayed to the master node via rs232, this in turn send commands to the devices using RF. Another paper [ [6] ] proposed a novel way in creating a networked home system. This included having A Bluetooth Access point with a Bluetooth module on each device and a simple GUI similar to that on the actual appliance to make it easier for the user to use. The authors also noted the fact that in reality white appliances are not sophisticated enough to be connected to a home network. Thus for now, until devices become more intelligent, only basic functionality can take place without having to create complicated user interfaces.

[7] ] introduced a low cost Java Based Home Automation System. This showed the design an implementation of a home automation system to control home appliance via the internet. It uses server and an embedded system to control the appliances. A simple GUI is enables the user to switch on lighting in different rooms as well as showing the current states. A Similar Java based automation system was proposed in [ [8] ]. This used an embedded controller connected to a Java web server at home. Serial RS232 was used for communication between the server and the controller which in turns controls some appliances, though the details of how the hardware was connected were neglected. The work proposed in [ [9] ] uses J2ME on mobile phones to control the appliances via Bluetooth, though this paper only provides the idea and no actual implementation was provided.

Altera [ [10] ] have also done considerable work to improve home appliances, namely by making them smarter and using less energy. This is being achieved by using state of the art Micro controller units as well as the latest FPGA's. Some of the work includes [ [11] ],[ [12] ] and [ [13] ]. These show how using FPGA's to control the motors in appliance will lead to better and more energy efficient appliances.

Another major project funded by the EU is the i2home. This was aimed at old or people with disabilities. As many of the smart home systems available are still a bit far off from being commercially available and affordable, this project's aim was to create a system which is both very easy to use and affordable, thus avoiding many unnecessary features. This system enabled users to control home appliances more easily, as well as offering alerts on the TV, for example when a person is at the door or that the stove was left on. This feature was primarily aimed at people with Alzheimer's.

Aims and Objectives

The literature discussed in the previous section gives a good cross section of how one would go about in creating a Home Appliance controller. The main aim of this project is to be able to control different appliances using a Mobile Phone. As this is for home use, Bluetooth can be used since it is an open standard and it is free to use provided one has the required modules. The GUI on the mobile phone will be developed using Java. As discussed in many of the papers, Java is very useful since it is portable, and even has Bluetooth support through its Application programming interface (API).

Several hardware control implementations were discussed, including PC server based, RF or Bluetooth control as well as using micro controllers which communicate data serially to the devices. Though since many of the appliances available today are still not "smart" it is very difficult to send direct commands to many devices. The aim of this project is to provide a simple "on/off" interface. Some predefined functions can also be implemented for appliances having variable speed control or dimmers. Sensors are also a very good way to monitor the home. Data can be relayed back to the mobile phone to check the temperature in different rooms. The system can than act automatically by switching on the fans or air-conditioning units, based on threshold temperature values set by the user. The user can opt to override this feature.

Figure 1 shows a top level schematic of the system. Data from the mobile phone transferred via Bluetooth to module. An RS232 interface is setup between the FPGA and the BT module. Communication to the house hold appliances is via relays using the FPGA pmods.


In the next section, the implementation and expected deliverables will be discussed in further detail. This will be done in the form of an action plan, which explained the steps that will be taken to reach the aims and objectives discussed above.

Work Plan


Develop a Home Appliance controller using an FPGA

This is to be controlled by a Mobile Phone using Bluetooth

Test the system and obtain results

Build a small scale setup to control various lights and appliances.

Action Plan

Project will be split into two parts at first. The first part tackled will be the mobile phone software. This will be created using Java. This was selected since it would make it portable across many different platforms, including windows, android or even OEM mobile operating systems. The second part of the project would be the hardware side. This involves interfacing the Bluetooth module with the FPGA, creating the necessary VHDL software and connecting various devices with the FPGA, using relays. This will than be tested separately before connecting them and testing the whole project. In the next two sections these two parts will be discussed in further detail.

Developing mobile phone software

Testing by sending commands to BT dongle on PC.

Interfacing BT module with FPGA

Testing by sending commands from a BT dongle connected to a PC.

Decoded commands shown on FPGA BCD.

Control FPGA directly from mobile phone Bluetooth

Direct communication from mobile to FPGA.

Appliance interface Circuitry

Start small scale using light bulbs, mini-fans etc.

Expand to control more devices.

Mobile Phone Software

A Samsung Omnia II Windows 6.5 mobile phone will be used for this project. A program will be developed using Java - portable across many platforms, using Java Bluetooth API JSR-82.

A program is to be created to send Serial commands from Phone to Bluetooth module. The RFCOMM layer of the Bluetooth protocol stack will be used. Testing will be done using a separate Bluetooth dongle accepting serial data on the PC. After the desired results are achieved, commands will be sent to the FPGA for decoding. Some of the criteria for the software are:

User friendly GUI

Easy addition of devices via GUI

User name and password for login

Ability to monitor real time sensors

Feedback from devices to show current state

Hardware (FPGA)

Data from the Bluetooth module needs to be decoded and stored in the FPGA, before it can take further action. First an interface using RS-232 protocol will be produced. This will be done by implementing a U-ART on the FPGA. This enables the FPGA to communicate directly with the Bluetooth module by sending data serially.

Furthermore, software to decode the commands sent needs to be developed. This in turn enables the control of the various devices connected as well as relays the information from the devices back to the mobile phone. This data is then used to control the connected appliances via external hardware. Devices may include light bulbs, fans, temperature sensors and other home appliances. Data from the sensors can be used to switch on devices automatically without input from the user. For example a threshold temperature value can be set, and if it goes over the air-conditioning unit is switched on automatically. This enables a more intelligent smart home. These will be connected using FET's or Relays, since they require high voltages and currents, not supplied by the FPGA.

Security issues

Since Bluetooth is an open standard, security is a major issue in this project. The Bluetooth module acquired has a default pairing code of 0000, which cannot be changed thus some other security measures need to be taken to avoid having unwanted users accessing the FPGA and control the devices.

A user logon will be needed on the mobile phone, with different users having different user names and passwords. If successfully logged in, a command is sent to the FPGA informing it that the user is authorized. This function also enables users to check who accessed the system by keeping a database of users on the FPGA and checking who accessed certain appliances. Also, different users could be given different permissions.

For error checking a checksum will be added to the packets. Also, an ACK will be sent back to the mobile phone to give the user some feedback that the desired action has taken place.