Upload
nitin1424
View
217
Download
0
Embed Size (px)
Citation preview
7/28/2019 Final Report home system for disable people via bluetooth
1/46
BLUE LIte and Blue HeatBluetooth enabled Smart Home Devices
Mark Shaw and Giorgio Politano
The Bachelor of Applied Computing/Diploma in Wireless and
Telecommunications Technology
University of Guelph-Humber
Dr. Mieso Denko
Submitted to the University of Guelph-Humber August 2008
7/28/2019 Final Report home system for disable people via bluetooth
2/46
Abstract
Home appliances such as security and climate control systems have become
more advanced with the recent improvements in microcontrollers and
wireless technologies such as Bluetooth. Most of these appliances have
difficult and complex user interfaces. However, by incorporating smartphones and other Bluetooth enabled mobile devices, users can connect to the
appliances using their own existing communication device. Although the
automotive industry has taken advantage of this in recent years with the
development of Bluetooth enabled appliances in many higher-end vehicles,
such solutions for the home are not commonly found. This thesis will outline
the design and implementation of a system to interface with pre-existing
home appliances and communicate with a mobile device such as a cell
phone, laptop or PDA via Bluetooth. The application relies on the use of cell
phones, personal computers and temperature sensors to collect signals
through a wireless network to provide users with a simple interface to
interact with appliances in the home.
2
7/28/2019 Final Report home system for disable people via bluetooth
3/46
ContentsContents........................................................................................................... 3
List of Figures................................................................................................... 5
1. Introduction..................................................................................................6
1.1Background..............................................................................................6
1.2Motivation................................................................................................7
1.3Contribution.............................................................................................7
1.4Organization.............................................................................................8
2. Literature Review......................................................................................... 8
3. Bluetooth enabled Smart Home Devices....................................................10
3.1 Problem Statement...............................................................................10
3.2 Objectives............................................................................................. 11
3.3 Development Tools ..............................................................................13
3.3.1 Bluetooth development board.........................................................13
3.4 Interface Design....................................................................................14
3.4.1 Functional Requirements................................................................14
3.4.2 Non-Functional Requirements.........................................................14
3.4.1 User Interface Prototype.................................................................14
3.5 Software................................................................................................15
3.5.1 Pre-defined Toothpick Services.......................................................15
3.5.2 Program Flow Charts.......................................................................17
3.6 Hardware .............................................................................................17
3.6.1 Block Diagram.................................................................................18
3.6.2 Bluetooth module with microcontroller...........................................18
3.6.3 Bluetooth enabled smart phone......................................................19
3
7/28/2019 Final Report home system for disable people via bluetooth
4/46
3.6.4 Honeywell CT50 Series analogy Thermostat...................................19
4. Implementation and Analysis.....................................................................20
4.1 Interface................................................................................................20
4.2 Software................................................................................................21
4.2.1 Pre-defined Code.............................................................................21
4.2.2 Blue Heat Code...............................................................................22
4.2.3 Blue Lite Code................................................................................. 23
4.3 Hardware..............................................................................................23
4.3.1 Temperature Control Circuit............................................................24
4.3.2 Lighting Control Circuit...................................................................27
4.5 Running the Application........................................................................30
4.5.1 Interacting with the Interfaces........................................................31
5. Future Work................................................................................................31
6. Conclusions ............................................................................................... 32
Appendix D - Cost...........................................................................................43
4.6.1 Blue Heat........................................................................................ 44
4.6.2 Blue Lite..........................................................................................44
4
7/28/2019 Final Report home system for disable people via bluetooth
5/46
List of FiguresFigure 1 - Blue Lite/ Blue Heat Interface Prototype........................................15
Figure 2 -Hardware Block Diagram.................................................................18
Figure 3 - ToothPick 2.1 mechanical schematic.............................................19
Figure 4 Blue Lite and Blue Heat CPU User Interface...................................20
Figure 5 - User interface on Java phone.........................................................21
Figure 6 - Blue Heat Prototype - Circuit..........................................................26
Figure 7 - Blue Heat Prototype - Back............................................................26
Figure 8 - Blue Heat Prototype Front...........................................................27
Figure 9 - FlexiPanel Architecture...................................................................29
Figure 10 - Blue Heat Flow Diagram...............................................................37
Figure 11 - Blue Lite Flow Diagram................................................................38
5
7/28/2019 Final Report home system for disable people via bluetooth
6/46
1. Introduction
1.1 Background
Home automation deals with the specific automation requirements of homesand in the application of automation techniques for the comfort and security
of its residents. This can include controlling the lights, climate control,
control of doors and windows, security and surveillance systems. There are
currently several products on the market that allow home owners to control
these devices. This is normally controlled by a handheld remote that
communicates with the devices using a mesh wireless network or a wired
network. These types of devices require a unique and dedicated device to
communicate with the automated products.
One of the basic systems on the market is made by iControl [9] and is easy to
install and expandable. The system uses the 802.11 wireless protocols totransmit signals from the various devices to a control box which is connected
to the internet. Some of the devices the company offers specifically for
elderly care include: cameras, window/door sensors, motion sensors, water
sensors, freeze sensors, panic pendants/wristwatches, smoke detectors,
carbon monoxide detectors, lamp modules, and thermostats. All of the
devices are connected wirelessly to the control box which then allows the
devices to be monitored and controlled using the companies website. This
system is perfect for the elderly because it is easy to use and it allows family
members to monitor the house to ensure that their relative is safe, it is
portable and can easily be installed in an existing home. The majordrawbacks of this system are that it requires the use of several costly
technologies to properly operate. The user must have internet access
available as well as a router to install the control box. The user must also
have a mobile device which has web access to check the status of their
home. This can become expensive with the data plans mobile carriers offer
today.
The automotive industry has also taken advantage of short range wireless
technologies to enable users to safely operate their vehicles while still
making hands free phone calls. Most high-end vehicles produced after 2004
now come equipped with Bluetooth. More than 30 automotive brandsworldwide, including Audi and Land Rover, offer Bluetooth-compatible cars.
Some cars come with Bluetooth systems as standard equipment while some
offer it as an available option. Chrysler's system, called UConnect, includes a
rearview-mirror-mounted microphone, a dash-mounted control pad and a
hidden Bluetooth receiver. Acura's system, called HandsFreeLink, is voice-
activated, and caller, signal and battery strength information display on the
instrument panel. [11]. This system eliminates hard-wired connections or6
7/28/2019 Final Report home system for disable people via bluetooth
7/46
docking stations and allows drivers to operate their cell phones either
through the car's controls or via hands-free voice activation. The system
then communicates back with you through your cars stereo and some
systems even automatically mute your car's audio when a call is answered.
These systems have proved to be a popular selling point as many countries
are making it illegal to use a cell phone while operating a vehicle. Althoughthe automotive industry has shown a dramatic increase in the use of
Bluetooth technologies for smarter cars, this implementation is not widely
found within the home.
Another key project is ongoing at The University of Florida [10]. They have
built a 500 square foot smart house that is designed assist and to provide
medical care to a user. The house implements devices including a microwave
that recognizes entrees and automatically determines how long to cook them
and devices to track the individuals location within the home. The house also
uses devices to detect water on the floor and a camera that allows the person
to view who is at the door and let them in using a cell phone. The smarthouse at the University of Florida relies on a centralized computer network to
deliver electronically coordinated assistance.
1.2 MotivationThe research previously conducted shows the importance of implementing
home automation for the elderly or disabled. Smart homes allow them to
stay in their residents where they feel more comfortable and can prolong the
time before having to move into costly health care facilities. Smart homes
will give the disabled an opportunity for independence that they may not
have had before. The goal of this project is to design a system thatcommunicates with a mobile device such as a cell phone or PDA via
Bluetooth. The application relies on the use of cell phones and inexpensive
sensors and is best suited for the elderly and home-bound people. The main
functions of the project are to collect signals through a wireless sensor
network using the protocol Bluetooth and the analysis for data through an
adaptive architecture.
1.3 ContributionTwo innovative products were produced called Blue Lite and Blue Heat. Blue
Heat is a Bluetooth enabled thermostat and Blue Lite is a Bluetooth enabled
light controller. Both of these applications rely on the use of cell phones orpersonal computers, microcontrollers and temperature control sensors to
collect signals through a wireless network to provide users with a simple
interface to interact with appliances in the home.
The devices produced enable the user to control the appliances using pre-
existing devices such as their mobile phone or home computer. The
interfaces are intuitive and easy to use and provide the user with a more7
7/28/2019 Final Report home system for disable people via bluetooth
8/46
accessible interface then those found in the home. The devices are also very
easy to integrate into existing applications and require only a small amount
of expertise to install.
1.4 Organization
This paper is organized as follows. Section 2 is comprised of a literaturereview which describes pre-existing solutions. Section 3 describes the
prototype and design of the system produced and section 4 describes the
implementation and analysis of these systems. Future work and expansions
are discussed in section 5 and finally, section 6 gives the conclusions.
2. Literature ReviewThe introduction of home automation in the 1970s failed to improve the
lifestyles of users for several reasons. Firstly, determining economic benefits
of home automation technologies is difficult. The costs of implementing
smart home technology must be justified by the effects brought about by
their installation [3]. There is a need for home automation technologies to be
cost effective, easy to install and flexible with many network infrastructures
and appliances.
In 2003, Housing Learning & Improvement network published a smart home
definition offered by Interetec which states that a smart home is a dwelling
incorporating a communications network that connects the key electrical
appliances and services, and allows them to be remotely controlled,
monitored or accessed [4]. The following section includes a brief summary
of previous research into smart homes within the past decade.
In 1995, Welfare Techno-Houses were constructed in Japan. [7]. The purpose
of these experiments was to provide health monitoring for elderly and
disabled persons at home by using fully automated measurements to support
daily health care and improve quality of life. The University of Texas at
Arlington has conducted the MavHome project over the past 7 years [8]. The
MavHome (Managing an Adaptive Versatile Home) is a home environment
that detects environment states through sensors and intelligently acts upon
the environment though controllers. The sensors in the home form an ad-hoc
network with interconnect together to make appropriate decisions.
SAP laboratories in Canada with researches from the University of McGill [6]
present a wireless solution for monitoring people in need of medical
assistance. The application relies on the use of cell phones and inexpensive
sensors and is best suited for the elderly and home-bound people. The main
functions of the project is to collect signals through a wireless sensor network
using protocols like ZigBee and Bluetooth and the analysis for data through
an adaptive architecture that produces real-time heath-monitoring system to
8
7/28/2019 Final Report home system for disable people via bluetooth
9/46
improve medical support for people in their homes and in assisted living
environments.
The research highlights a general architecture framework that consists of
three major parts. Firstly, medical data is collected from sensors and
transmitted to mobile devices through a wireless sensor network. Secondly,collected data is processed by a J2ME application running on mobile devices.
Finally, the data collected and combined with data from other sensors to
decide on an appropriate action. The advantages of this approach are that it
does not require costly equipment, specialized infrastructure or a challenging
learning curve. It can be deployed in a short period of time at a very low
cost.
Several groups have done extensive research into the use of smart home
devices for the support or elderly and handicap people. The University of
Erlangen-Nuremberg, Germany [5] has described the challenges regarding
smart homes, especially for supporting the elderly and handicapped. Thepurpose is to compensate for handicaps and support the individual in order to
give them a more independent life for as long as possible.
A set of objectives is outlined that are of particular concern to an elderly or
handicapped person. The higher level goal is to compensate any limitations
in any part of his life as far as possible and to enable the patient to live a
more independent life as long as possible. Several sub-networks were used
in the implementation which includes Bluetooth, Wireless LAN, Radio
Frequency ID (RFID), Internet (TPC/IP) and the telephone network. A
Bluetooth network is used to interconnect the nodes and to transport sensor
data over the network. The RFID system provides the possibility to transmitdata from the RFID tags that are recording occupancy locations. Their
approach sends messages via Bluetooth using the available Bluetooth
module on the nodes. This means no further hardware is required and
additionally no further costs arise.
A Similar system to the one proposed in this thesis includes research
conducted by Engineering students at the University of Bangladesh regarding
the control of remote systems using mobile telephony [15]. The paper
focuses on the services provided by mobile phones and how they can be used
to communicate with and control remote systems. A prototype was
developed which involves the use of two mobile phones, a computer and a
Bluetooth module or X10 controller as the hardware components. Software to
facilitate the communication among the devices uses the Java Standard
Edition (J2SE) and Micro Addiction (J2ME) and the C programming language.
The system uses a Java enabled mobile phone running their application to
send control messages to the home. A second phone is connected to the
9
7/28/2019 Final Report home system for disable people via bluetooth
10/46
home computer using a data cable. Software running on the home computer
monitors the home mobile for incoming control messages and acts as an
interface between the home mobile and the home appliance. When a
message is received, it sends commands via Bluetooth to communicate with
the appliances. The key issue with this approach is that a computer is
required to interface between the home appliance and the phone. The use ofa microcontroller would be better suited to this type of application as many
are available with built in USB and Bluetooth support.
The paper does however reinforce the advantages of using a wireless
standard. Bluetooth is a global standard for connecting a wide range of
devices, it is available on most handheld devices, the technology is very easy
to use and set up, and it provides security by encrypting data using a 128-bit
long shared key.
Radio Frequency (RF) systems have become increasingly popular recently
with the advancements in RF technology such as Bluetooth and Zigbee.These products offer a much more reliable short range network then previous
Infrared devices which had interference and security issues. This project will
also focus on RF systems for the smart home with focus on the Bluetooth
technology. Although many systems have been researched and proposed,
very few if any have been implemented. This project aims to build on the
previous research described to implement a wireless sensor network to
monitor appliances in the house. These appliances will be controlled via a
mobile device running Bluetooth. This approach provides an easy to operate
and cost effective approach that will benefit the elderly and those with
disabilities function as normally as possible.
3. Bluetooth enabled Smart Home Devices
3.1 Problem StatementThe focus of our research is on helping elderly or handicapped people live a
more independent life as long as possible. The objective of our system is to
take care of several domestic systems that may normally be difficult for
those who are handicap or elderly to take care of. The proposed idea will
allow a user with any Bluetooth enabled device to run a piece of
downloadable software on any mobile device such as a cell phone or PDA.This application will allow the user to control a device that is connected to
any home appliance that is Bluetooth enabled. The focus of this application
will be to direct a lighting system and a climate control system. Sensors will
be connected to the home appliances so that they can be monitored and
controlled.
10
7/28/2019 Final Report home system for disable people via bluetooth
11/46
Suppose an elderly person who has gone to bed and during the middle of the
night becomes uncomfortable with the temperature of the house or hears a
noise outside. The proposed system would enable the client to control the
temperature by turning on and the heat or turning on and off the air
conditioning. The user can set heat or air to turn on at a specified
temperature.
The user could also check the status of the outside light and turn on and off
the light without the need to get out of bed. These devices would also benefit
users with limited mobility that may have a difficult time getting to or even
reaching their light switch or thermostat. These objectives require a large
amount of technology. The user interface must be as simple and powerful as
possible and operate in a self-organized way.
3.2 ObjectivesThe following lists of objectives must be completed with this in mind:
1. Develop Bluetooth Appliance Controller: A microcontroller will
interface with the Bluetooth module to perform the automation. A
simple microcontroller will receive signals from the cell phone and will
be processed.
2. Develop Software for a Bluetooth Enables Mobile Device: An
application will need to be developed using the J2ME java platform for
programs running on mobile devices using the Java APIs for Bluetooth
Wireless.
3. Integrate the Appliance Controller to a Device: The appliancecontroller needs to be integrated with the lighting/climate control
systems at a low cost with easy installation.
4. Create a Scatternet with the Appliance Controller Devices:
Create ad hoc Bluetooth network that is formed by interconnecting
devices. This allows every Bluetooth device to be reached by every
other device. This is necessary due to Bluetooths short
communication range (10m-100m). This will enable the user to
connect to all devices on the network without having to worry about
distance form the device.
5. Conduct Experiments and Analyse Data: Using the mobile device
and the appliance controller, conduct tests on usability and product
range within a home environment.
The user will require the following components:
Bluetooth enabled device
11
7/28/2019 Final Report home system for disable people via bluetooth
12/46
Client Software
Bluetooth appliance controller
Two applications will be developed to run the light control ad the climate
control devices. The application should be capable of running on several
platforms. An application will be created to run on devices such as mobile
phones, PDAs and Blackberry devices. To make the software work on as
many devices as possible, applications will also be written to operate on
Windows Mobile clients as well as Bluetooth enabled Windows PCs. The goal
for this application is to make it as robust as possible so that it can be run on
many different platforms.
Bluetooth wireless technology will be used which is a short range
communications network that was developed to replace cables that connect
portable and fixed devices. Bluetooth is capable of providing low power, low
cost and robust communications between devices. The Bluetooth standardhas been globally accepted which allow almost any Bluetooth enabled device
to communicate with each other seamlessly. This makes the Bluetooth
standard best suited for this type of installation.
A microcontroller will interface with the Bluetooth module to perform the
automation. Bluetooth modules have been developed which combine
Bluetooth wireless radios with programmable integrated controllers that
include a full protocol stack that makes interfacing with the host controller
simple, without the need for Bluetooth expertise. A simple microcontroller
will receive signals from the cell phone and will be processed. This will
require both software and hardware development to receive data from thecell phone via Bluetooth to perform the tasks.
A device that would turn on and off a light will be developed that would use a
simple relay to cut the power to an LED to simulate a light fixture in the
home. Another device will be used that has a feedback controller circuit with
a small fan and a thermistor. This will simulate a heating and air conditioning
thermostat in the home.
Quantitative results will compare our work with previous work and will
highlight how our application works better. Some key factors for the
evaluation will include performance, quality of service, ease of use, and howthe product makes the lives of people easier and better. Maintaining and
enhancing the quality of life for both older people and people with disabilities
involves making independent living as easy as possible.
12
7/28/2019 Final Report home system for disable people via bluetooth
13/46
3.3 Development ToolsThe first step in beginning the design and development of our product was to
find the tools necessary to accomplish the tasks. The following is a list and
brief description of software used and why each product was selected.
There are four main components that will be needed to accomplish ourproject. These include a Bluetooth module with microcontroller, a Bluetooth
development board, a Bluetooth enabled smart phone and software
development tools.
After extensive research into the products and solutions currently available,
the following were chosen to meet our application-specific requirements.
3.3.1 Bluetooth development board
The primary aim of the Bluetooth Evaluation Board is to allow evaluation of
Bluetooth products as easily as possible. The evaluation board can be used
during development as a reliable, tested environment while troubleshooting.This board was selected to help aid in the development of applications and
testing of the device. It was later replaced with custom electronics once the
final device was ready for production.
3.3.2 Microchip Inc. MPLAB IDE,This development interface is a free, integrated toolset for the developmentof embedded applications employing Microchip's PIC microcontrollers. MPLABIDE runs as a 32-bit application on MS Windows, is easy to use and includes ahost of free software components for fast application development anddebugging. MPLAB IDE also serves as a single, unified graphical userinterface for additional Microchip and third party software and hardware
development tools. Moving between tools and upgrading from the freesoftware simulator to hardware debug and programming tools isaccomplished easily because MPLAB IDE has the same user interface for alltools. For these reasons, we selected this IDE for the development of thebackend code for the mobile applications. [13]
3.3.3 FlexiPanel Designer,This graphical user interface design tool is a free is software bundle to aid inthe design of FlexiPanel user interfaces. The user interface may be specifiedand tested from within the design tool and then exported to a specificFlexiPanel Server. FlexiPanel is a generic technology for allowing one device(the FlexiPanel Server) to create a user interface on another device (the
FlexiPanel Client). It provides a wireless universal remote control andmonitoring facility for computer software and electronic products, eliminatingthe need for user interface components. [14]
These intergraded development environments allow us to design and develop
applications to be used on smart phones which will communicate with the
Bluetooth device. There is also extensive documentation and help guides and
examples to help guide us through the development process.
13
7/28/2019 Final Report home system for disable people via bluetooth
14/46
3.4 Interface DesignTwo graphical user interfaces were developed, one called Blue Lite and theother called Blue Heat. Blue Lite will control the lighting system while BlueHeat will control the climate HVAC system. The user interface was developedto allow the applications to be run on several common mobile platforms. The
FlexiPanel Designer software was used to create simple yet intuitive userinterfaces. The interface was first developed to produce a more user friendlyproduct.
3.4.1 Functional Requirements
The goal was to develop a robust application which would allow a user to turnon and off a light or adjust the climate controls of a thermostat within rangeof the mobile device. The application required both user input and feedbackwhich takes user input and sends a signal to the Bluetooth module. Themodule then performs the desired action and returns a response to theapplication. The applications also needed to be memory and processorconscious as both these factors are often limited on most mobile devices.
Also, the interface is stored in a client/server architecture where the code forthe interface is on the module and is downloaded to the mobile device whenuser connects. Creating an interface that is too large results in increaseddownload time and this needed to be avoided. With these factors in mind,the initial prototype of the application was produced.
3.4.2 Non-Functional Requirements
The interfaces needed to be simple so that it could still be used by customersthat were not technically savvy. The end user may be someone very familiarwith mobile applications or it may be an elderly person who is new to thetechnology. The goal was to produce a product that would be easy to use forall users while still maintaining an atheistically pleasing interface which was
similar to the common look and feel of other mobile applications.3.4.1 User Interface Prototype
Figure 1 shows the prototype design for both the Blue Lite and Blue Heat userinterfaces. The initial design had to keep in mind the functional and non-functional requirements listed above.
14
7/28/2019 Final Report home system for disable people via bluetooth
15/46
Figure 1 - Blue Lite/ Blue Heat Interface Prototype
3.5 SoftwareAs mentioned earlier, the Bluetooth module uses a PIC microcontroller
created by Microchip Technology. They provide a simple development
interface called MPLAB which can be used to write software for the
microcontroller. Using the pre-generated code from the design software
which takes the user interface objects and creates C code, the backend code
was written to communicate between the user interface and the electronicdevices. All the development was done using the C programming language.
3.5.1 Pre-defined Toothpick Services
Several Toothpick services are preinstalled in the module in protected
memory which helps aid in programming for the module. Several of these
functions were used in generating the backend code and are explained in
detail below:
Digital I/O
The microcontroller allows for all the pins, except for power and ground to be
used as single bit digital input/output pins provided they are not already used
for another function. For both appliance applications, several outputs were
used to allow the microcontroller to trigger a relay which would allow the light
and or HVAC to turn on and off. The built in functions provided by the
Toothpick services makes using this pins very simple and only several lines of
code are required.
7/28/2019 Final Report home system for disable people via bluetooth
16/46
Analog I/O
The microcontroller supports up to 12 channels of 10-bit and 8-bit analog to
digital conversion. Code definitions provided by the Toothpick services
makes using these very simple. The A/D converter was utilized to enable the
Blue Heat application to read an analog temperature value from a thermistorcircuit and convert this value into a temperature reading. The thermistor
circuit provides a value ranging between 0 5V which is fed into an input pin
on the microcontroller. The A/D converter then takes this voltage and returns
a value to the application between 0-255 depending on the voltage. The
thermistor provides a specific voltage per degree change and this information
was used to then convert this 8 bit number into a corresponding
temperature.
LinkMatik Control
These set of controls lets the program access the LinkMatik Bluetooth radiodirectly. It is connected to the universal asynchronous receiver/transmitter
port of the PIC microcontroller which interfaces the radio to the
microcontroller. These services pre-installed in the module allowed us to
communicate with the radio easily to perform tasks such as connecting and
disconnecting from the remote device and putting the Bluetooth radio into an
aggressive power saving mode. The radio returns to normal power mode
when a command is give or a Bluetooth event occurs. This state is entered
when the module is not connected to a remote device to help conserve
power.
Call back Functions
When an event occurs and the Bluetooth module needs to inform the
application that something has happen, it calls one of the provided call back
functions. The cal back functions provided include the following:
Error Status this is called if an error occurs and several error codesare provided by the modules services. These error codes were usedextensively to de-bug the application and code has been written to haltthe application if an error has occurred.
LMTEvent called when an event occurs on the LinkMatik module.These events are described above in the LinkMatik control section anddeal with connecting and disconnecting the remote devices.
FXPEvent - called when a FlexiPanel interface event occurs, such as abutton being pressed. This event handler was used to trigger theapplication that the user had interacted with the interface and theappropriate action is taken based on the input.
16
7/28/2019 Final Report home system for disable people via bluetooth
17/46
The module provides many other services and pre-written functions includingpulse width modulation, parallel communication protocols and many othersbut these were utilized for our application.
3.5.2 Program Flow Charts
Two program flow charts were created for both the Blue Heat and Blue Liteapplications main code. These flow charts explain the logic of the code and
how each component interacts with the others. Please see Appendix B.
3.6 HardwareThe following is a block diagram of the components used and a detailed
description each block used and why each product was selected. The diagram
shows the 3 major components used for the project. Those items in yellow
were purchased and those in red were designed and created to work with the
off the shelf components.
17
7/28/2019 Final Report home system for disable people via bluetooth
18/46
3.6.1 Block Diagram
Figure 2 -Hardware Block Diagram
3.6.2 Bluetooth module with microcontroller
The ToothPick 2.0 Bluetooth Transceiver combines the PIC 18LF67J10
programmable interface controlled microcontroller and the LinkMatik
(Bluetooth 2.0) radio device and was purchased for this project. The
microcontroller comes preloaded with Toothpick Services firmware which
includes FlexiPanel user interface server which allows the developer to create
intuitive graphical interfaces to communicate with the Bluetooth module. It
also comes packaged with a wireless field programming tool which allows the
software to be electronically distributed and uploaded to the microcontroller
using the Bluetooth protocol.
18
7/28/2019 Final Report home system for disable people via bluetooth
19/46
Figure 3 - ToothPick 2.1 mechanical schematic
This device was chosen because of several key features. This module
provides a FCC/CE certified 2.4GHz Class 1.0 Bluetooth radio which provides
a free space operating range of 100 meters with an integral antenna. The
device is very small in size with the L x W x H measuring 51mm 22mm 10mm and requires a low regulated voltage of only 5 volts. It draws a limited
current of 30mA during transmission and is capable of going into sleep mode
where it only draws several hundred micro Amps. These features make it the
ideal solution to easily integrate into existing home appliances.
3.6.3 Bluetooth enabled smart phone
There are several phones on the market currently that employ Bluetoothtechnology. Most major high and low end phones are capable of working withthis type of application. For the testing and implementation, the Nokia 6265ihandset was used. This phone provides Bluetooth wireless technology
support with an integrated class 2 radio with a transmission range of 30meters. This device is compliant with Bluetooth Specification 1.2 and itsupports several profiles for communication [12]. This phone was chosenbecause it provides the tools needed to load and test our mobile application.
3.6.4 Honeywell CT50 Series analogy Thermostat
In order to test the temperature control circuit, we required the use of acommercially sold thermostat. We choose the Honeywell CT50 because it
19
7/28/2019 Final Report home system for disable people via bluetooth
20/46
provides a simple analog interface which we were capable of manipulating inorder to connect and test our Blue Heat temperature control system.
4. Implementation and Analysis
4.1 InterfaceOnce the template was produced, it was time to use the FlexiPaneldevelopment tool to generate the interface. FlexiPanel Designer managesthe list of controls that are to be displayed to the user. The software packageprovides various views to control different aspects of the controls, such ashow they are managed and how they appear on specific client software. Theapplication was written to work across several clients including a Windows PCand a mobile phone running java and the interface was modified for eachtype of client.
For the Windows PC client, once you connect the computer to the module,
the user interface is displayed as shown in the development tool. Since aWindows PC can provide more processing power, a more advanced userinterface was created and shown below.
Figure 4 Blue Lite and Blue Heat CPU User Interface
The Java phone user interface is greatly limited to the graphics and
processing power of the phone being used. For this reason, the interface is
displayed as a simple list of controls which can be modified by the user. The
client can use the scroll functions of their phone to traverse through the list
and use a select button to interact with the controls. This interface resembles
common applications for mobile devices which should be very familiar to the
user. The following image shows how the user interface appears on a mobile
phone.
20
7/28/2019 Final Report home system for disable people via bluetooth
21/46
Figure 5 - User interface on Java phone
Once the user interface was designed, it can be programmed into theBluetooth module but the controls are not yet interactive because only theinterface is generated at this point. The Toothpick MPLAB modules areautomatically generated by the designer software which produces .C and .Hfiles. These files provide code which enables the use of the controls on theinterface. An application was then generated using MP LAB to interact withthe application. The following section outlines the backend code that waswritten.
4.2 SoftwareThe backend code that we produced for the applications is explained in thenext section. The code flow charts will help describe the flow of the code.Both the applications for the Blue Lite and Blue Heat modules were written inC using the MPLAB IDE. The software produced utilizes many of the built infunctions described above as well user defined methods.
The application consists of several classes which will be discussed in detail inthis section. The first section describes the code produced by the interface
design software and several header files which must be included. The second
section describes code we produced.
4.2.1 Pre-defined Code
There are two files called Blueheat.c and Blueheat.h that is produced by the
FlexiPanel design software for the user interface. A custom application was
being developed using MPLAB C18 so the user interface is transferred to the
Bluetooth module as computer-generated C files which are included during
compilation. This takes the interface that was designed for the applications
and converts it into C so that it may be stored on the Bluetooth module.There was no need to modify the C code. The BlueHeat.h file is also
generated and gives access to several predefined methods which allow the
user interface to be controlled and manipulated. This includes methods to
get values from text boxes, set values in number fields and retrieve alerts
when the interface is modified by a user.
21
7/28/2019 Final Report home system for disable people via bluetooth
22/46
Two other files that are utilized are called Toothpick.h and PIC18F6720.h. The
first file is a header file provided by FlexiPanel and is specially written for the
Bluetooth module used for this project. It was not modified and must be
included in the project package. The second file is a header file which is
included in the MPLAB C18 compiler and is specifically written for the PIC
microcontroller and is written and supplied by Microchip Technology. It mustbe included in order to use the microcontroller and includes methods to
perform low-level tasks. This code was not modified and must be included in
the project package.
4.2.2 Blue Heat Code
The main application called main.c starts by waiting for a client to connect. It
will continue to loop through a while loop waiting until a client has connected.
During this time, the green LED on the Bluetooth module is set to flash every
250ms to indicate that it is ready and waiting for a connection. When a
connection is made by a remote device, a high-level interrupt is thrown and
the user is connected to the module. When this occurs, the red LED on themodule is set on to indicate a user has connected.
Once a user has connected the main loop continues by reading a value from
one of the analog inputs and setting up the Analog to digital converter. The
value from the input is fed into the 8 bit A to D converter which then returns
a value between 0 and 255. This is a digital representation of the value being
fed into the microcontroller by the thermistor. This number is then converted
into a temperature value in degrees Celsius.
The value from the user interface is then read into memory which represents
the desired temperature. A get method is provided in the BlueHeat.h file toget this information from the textbox. The code then checks to see if the
user has selected the heat and AC buttons on the user interface. When the
user clicks on one of the buttons in the interface, a low level event is
triggered. Within this interrupt handler, a value called SetH or SetAC is set to
1 depending on which button was selected and the code returns from the
interrupt handler.
If the heat button was pressed, setH will be set to high. IF this condition is
true, a specific pin on the microcontroller is set to high which triggers the
relay to switch to activate the heat control and another pin is set to low which
deactivates the AC control. This is done because the Heat and AC cannot be
turned on at the same time. The opposite occurs if the AC condition is true.
A pin on the microcontroller is set to high to activate the AC control and the
heat control is deactivated. This process simulates the user manually
switching the AC or Heat on using the thermostat.
22
7/28/2019 Final Report home system for disable people via bluetooth
23/46
Next, the value read from the analogue to digital converter which represents
the rooms current temperature is compared against the desired room
temperature inputted by the user. If the heat has been activated and the
desired room temperature is greater than the current room temperature, a
pin is set to high on the microcontroller which will trigger a relay to turn the
heat unit on and start heating the room. If the desired room temperature isless than the current room temperature, the heat is turned off. If the AC has
been activated and the desired room temperature is greater than the current
room temperature, the AC is turned ON by setting on of the microcontrollers
pins to high. If the desired room temperature is less than the current room
temperature, the AC is turned off.
This process is continually repeated to cycle on and off the HVAC unit as the
room temperature changes. A temperature threshold of 1 degree Celsius is
used to keep the current room temperature within 1 degree of the users
desired temperature. This means if the user has selected 25 degrees, the
room would heat until it reached 26, shut off and naturally cool until thetemperature reached 24 degrees. The heat would then be activated again
and the process continues.
4.2.3 Blue Lite Code
The code starts by waiting for a client to connect. It will continue to loop
through a while loop waiting until a client has connected. During this time,
the green LED on the Bluetooth module is set to flash every 250ms to
indicate that it is ready and waiting for a connection. When a connection is
made by a remote device, a high-level interrupt is thrown and the user is
connected to the module. When this occurs, the red LED on the module is set
on to indicate a user has connected.
Once a user has connected the main loop continues by monitoring the on off
button provided in the user interface. When the user selects the button, a
low level interrupt is triggered. In this event handler, a value called setLight
is set to 1 which indicates the button has been pressed and the interrupt
returns back to the main code. If the value is set to 1 then one of the output
pins of the microcontroller is set to high to switch on the light. If the value is
set to 0 then the output is set to low to switch off the light. The source code
for both applications is included in the appendix.
4.3 HardwareThe next step was the development of the electronic components for both of
our products. Two separate components were created for each of the devices
and are described in detail below. Please see Appendix A for the schematics
of both this devices.
23
7/28/2019 Final Report home system for disable people via bluetooth
24/46
4.3.1 Temperature Control Circuit
The temperature control circuit is designed to be interfaced with any existing analog thermostat
with very little modification. The control circuit replaces the functionality of the thermostat by
mimicking the same functionality but using digital signals. The Blue Heat module can be placed
near the existing thermostat to work with it or is capable of completely replacing your analog
device.
The Bluetooth module is mounted on a circuit board inside the protective casing and is powered
by a single 9V battery. Since standard manual thermostats do not receive any power, an external
power source was needed. This means the battery will need to be replaced periodically by the
user. The LM7805 5 volt power regulator is used to regulate the 9 volts being supplied by the
battery to a 5 volt DC input required by the microcontroller.
Temperature Sensor
A typical analog thermostat uses two different thermometers. One on the front cover to display
the temperature and the other in the thermostat controls the heating and cooling systems. These
thermometers are simply coiled bimetallic strips that consist of two materials with different rate of
expansion and when they heat and cool they expand and contract. To replace this mechanism, a
thermistor was used to read the temperature. A thermistor is a type of resistor with varying
resistance according to temperature. The sensor uses a platinum material which has a
predicable electrical resistant change with varying temperature. The advantages of this type of
temperature sensor are its low cost, compact size and fast response time to vary temperatures.
A single thermostat can be used to control the HVAC system as well as to display the current
temperature to the user.
A voltage divider circuit was created which is a simple linear circuit that produces a portion of the
input voltage across the component. The termistor produces a resistance of 4.7K ohms at 100
degrees Celsius so it was paired with a 4.7K resistor in series to create the voltage divider. The
voltage reading being dropped across the circuit is directly proportional to the current temperature
and produces a value between 0 and 5 volts. One of the major problems with a thermistor is the
variation in measured temperature over the temperature range. This means the resistance vs.
temperature curve is not non-linear which made it very difficult to convert the reading from the
temperature sensor to a temperature. Usually the resolution is good at lower temperatures but
becomes very poor at higher temperatures. To fix this problem a resistor was placed in parallel
with the thermistor. The resistors value is equal to the thermistor's resistance at the mid-range
temperature. This resulted in a significant reduction in non-linearity. This means that there is now
a consistent voltage change vs. temperature curve. This value is then fed into the analog to digital
convertor on the microcontroller where it is changed into a digital reading.
Internal Operation
There are several situations when switching done by the thermostat. Switching occurs when the
user turns on or off the heat and air conditioning and when the HVAC cycles on and off
depending on what the rooms ambient temperature is. Several relays are used to replace these
switching capabilities. There are four terminals on a thermostat that need to be connected and
disconnected. The transformer on the heating and air conditioning unit provides 24V AC from a
transformer. This is then carried through the thermostat and depending on the settings and
24
7/28/2019 Final Report home system for disable people via bluetooth
25/46
temperature conditions; the voltage is carried to the relay on the HVAC unit to turn on and off the
system.
The Omron G5V-2 relay was selected that is capable of switching up to 125VAC with a load up to
2 amps. This is more than what is required as it will be used to switch the 24VAC coming from the
transformer. The relay is capable of being triggered with 5V which will be provided by one of the
microcontrollers outputs. Some other benefits of the relay are that it provides a fully-sealed case,
has an operation response time of only 7ms and has a life expectancy of over 15 million
operations. In order to protect the microcontroller, a diode was placed in series with the switching
voltage line from the microcontroller to the relay. Current flowing through a relay coil creates a
magnetic field which collapses suddenly when the current is switched off. The sudden collapse of
the magnetic field induces a brief high voltage across the relay coil which is very likely to damage
the microcontroller over time.
Interfacing with Thermostat
The unit will work with a typical thermostat that is designed for a system with four wires. The wire
terminations from the control circuit are marked as follows:
RH - This wire comes from the 24VAC transformer on the heating system.
RC - This wire comes from the 24VAC transformer on the air-conditioning system.
W - This wire comes from the relay that turns on the heating system.
Y - This wire comes from the relay that turns on the cooling system.
To integrate the Blue Heat control unit with an existing thermostat, the user must connect the
clearly labeled wires from the control unit to the matching connectors inside the thermostat. This
will enable the user to control the HVAC unit using the thermostat as well as the Blue Heat
device. The Blue Heat circuit is wired in series with the existing thermostat. The thermostat can
be used normally at any time while the Blue Heat device is in the off state. If the Blue Heat
device is in the on state, and left in this state, the user will not be able to manually shut it off until
the state is changed to off.
The entire unit is housed inside an atheistically pleasing plastic housing which is made by Pactec
Enclosures. It was chosen because it can be mounted on the wall under an existing thermostat
or in place of an existing one. The housing is completely sealed and all the electronics are
hidden inside the casing which is held together using 4 screws. The unit can be easily serviced
and the entire control circuit inside can be removed if need be. Also, a small door on the back of
the unit provides easy access to the battery for when it needs to be replaced. A blue and red led
are located on the front of the unit to indicate to the user the current state of the HVAC unit. The
red LED is used to indicate if the heat is on and the blue LED is used to indicate if the air
conditioning is on.
Product Results
The next section shows the final product for the Blue Heat device which is illustrated in several
pictures. Figure 8 shows a top view of the prototypes circuitry inside the housing. You can see the
battery compartment on the left which holds a standard 9V battery. This is accessible though a
small removable door on the back of the enclosure as shown in figure 9. The right side of the
housing holds the circuitry and is isolated from the battery compartment.
25
7/28/2019 Final Report home system for disable people via bluetooth
26/46
Figure 6 - Blue Heat Prototype - Circuit
Figure 7 - Blue Heat Prototype - Back
26
7/28/2019 Final Report home system for disable people via bluetooth
27/46
Figure 8 - Blue Heat Prototype Front
4.3.2 Lighting Control Circuit
The lighting control circuit is designed to be interfaced with an existing light
switch within the wall electrical box unit. The circuit can easily be wired into
a switch box to allow both your light switch and your Bluetooth enabled
device to control the operation of the light. In order to simulate the
mechanical switching of a light switch, a special type of relay was needed.
The relay needed to be capable of switching 110VAC power source found in
North American homes as well as handle up to 10A of current. The relay also
needed to be triggered with a 5V input from the microcontroller but still
protect it from power spikes and surges which may occur on the power lines.
Internal Operation
In order to accomplish this, the Omron G3NE solid state relay was used. A
solid state relay (SRS) acts as an electronic switch but contains no moving parts. The relay we
chose is a photo-coupled which means it uses a light emitting diode (LED) to activate a
photosensitive transistor to switch the load. They key benefits to this type of relay are that it can
be controlled by a low voltage signal from the microcontroller and physically isolates the controller
from the load optically. It also has built in protection against external surges.
A 9V battery is used to power the microcontroller which is converted to 5V using another LM7805
voltage regulator. The idea setup would use an AC transformer to convert the 110VAC coming
from the power lines to a manageable 6VDC supply to run the microcontroller. This was not
chosen because it requires a much more complex system but will be discussed in the future work
section.
The lighting control circuit is wired in series with the existing light switch to enable them both to
operate at the same time. In order for either one of the two switches to operate, the other switch
needs to be in the on position. The user can leave the Bluetooth control operating as on and still
manually switch on and off the light using the physical switch. Likewise, the user can leave the
27
7/28/2019 Final Report home system for disable people via bluetooth
28/46
switch in the on position and switch the light on and off using the mobile device. Below is a
detailed schematic of the light controller circuit.
Product Results
28
7/28/2019 Final Report home system for disable people via bluetooth
29/46
4.4 Installing the Application
The FlexiPanel server which is installed on the module allows remote devicessuch as Windows PCs, handheld devices and cell phones to display userinterfaces that are stored on the server. It uses the FlexiPanel BluetoothProtocol to transmit the user interface to the remote device. The remotedevice needs to run the FlexiPanel Client software which is freely available forboth pocket PCs and Windows operating systems. The Client software doesnot require customization, since the user interface specifications are storedon the Bluetooth module and transmitted to the mobile client when itconnects. The module is not concerned about the type of client whichconnects and it treats them equally. The user interface is compiled usingFlexiPanel Designer software.
Figure 9 - FlexiPanel Architecture
FlexiPanel Clients connect to FlexiPanel servers and a client may connect to aserver at any time. The client is the module installed in the home appliancecontroller and the client is a remote device such as a pocket PC or PDA. Oncethe client has made connection to the server via Bluetooth, the server tellsthe client to display the desired user interface on its display. The server maymodify the contents and appearance of the controls at any time, and evenreplace the entire dialog with another. If the client modifies a control, forexample pressing a button, it sends a message to the FlexiPanel Server.Either the server or the client may choose to disconnect at any time.
Additionally, the link may be dropped if the devices go out of range of eachother. The state of the controls is retained by the server so that if the clientreconnects, or another client connects, the user interface will be in the samestate as it was when it was last modified. The application was designedtaking into account the possibility of a dropped connection. This wasaccomplished by making sure that no action would be taken which relies on aclients ability to maintain a connection. If the connection is dropped, theapplication will store the current values and continue to operate.
29
7/28/2019 Final Report home system for disable people via bluetooth
30/46
Wireless field programming (WFP) was used which is a service that allows thedeveloper to program Toothpick via Bluetooth. A separate Windows softwareapplication is used for wireless field programming. The program is also ableto create Service Packs which are specialized executable files for eitherWindows and/or Pocket PC which can be distributed to allow customers to
upgrade the application themselves. This application is used to pair with theBluetooth module and transmit the application via the Bluetooth wirelessprotocol to the module to be stored in memory.
4.5 Running the ApplicationTo run the application, the user must download the client software on the
mobile device or PC.
To install the application on a java phone follow the steps below:
1. Download FlexiPanel.jar from
http://www.flexipanel.com/WirelessSoftware.htm.
2. Transfer the file to the phone using Bluetooth file transfer, infrared or
your sync cradle. You need consult your computer and/or phone
manual to find out how to do this. Try right clicking on the
FlexiPanel.jar and choosing one of the Send To options.
3. The phone should automatically detect that the file is a Java
application and install it automatically. Depending on the phone you
have, you may be warned that the software is not certified.
Acknowledge this and continue.
On start-up, the client application will automatically search for devices to
connect to. After a few seconds, a list of available Bluetooth devices will be
shown. The applications will be labelled Blue Heat and Blue Lite on your
phone. Select the device you wish to connect to. If the expected device is not
displayed, scan again by selecting Options > Refresh from the menu.
The client application for Windows requires a built in Bluetooth radio or
external dongle to operate. To install the application on a Windows PC, follow
the steps below:
1. Download the Windows Remote Client FlexiPanelWin30.exe fromhttp://www.flexipanel.com/WirelessSoftware.htm.
2. The client software is a standalone application and requires no
additional installation. Simply click on the saved file to begin using it.
30
http://www.flexipanel.com/WirelessSoftware.htmhttp://www.flexipanel.com/WirelessSoftware.htmhttp://www.flexipanel.com/WirelessSoftware.htmhttp://www.flexipanel.com/WirelessSoftware.htm7/28/2019 Final Report home system for disable people via bluetooth
31/46
4.5.1 Interacting with the Interfaces
When you connect to one of the devices using a phone or pocket PC, the
controls are displayed on the screen in a list. Once a connection is
established, the controls will be displayed and can be used by the client.
Depending on the phone being used, the application will appear slightly
different. To interact with the button controls, simply scroll to the buttonicon using your mobile phones navigation keys and select the button using
the designated button on your phone. To interact with text controls, scroll to
the text icon using your mobile phones navigation keys and select the text
control. Then us the mobiles keypad to enter the value and press select.
To interact with the interface using a Windows personal computer, use the
mouse pointer to hover over the desired buttons and left click on the button
icons to activate the controls. To use the text box control, select the text box
with the mouse, use the keyboard to input the value, and press the OK button
to update the field.
5. Future WorkAlthough the final products were very successful at accomplishing the
objectives, it must be kept in mind that the products produced are simple
prototypes and much more work would need to be done to create a
marketable product. Several areas that need to be improved are the size of
the devices, the cost of the devices, the power sources used and the range of
communication.
Currently, the Blue Lite device is too large to fit easily into a pre-existing wall
switch electrical box. There are several ways this could be improved in future
work. The use of surface mount components would dramatically decrease
the overall size of the components. Surface mount components are also
often less expensive as they require less material to produce. For example
FlexiPanel offers the Toothpick microcontroller in a surface mount package
for $91.50. This would help reduce the overall cost of the devices as well as
the size. Another area to help improve the size is the circuit board that is
used. Currently for the prototype, a generic breadboard style board was
used. If this device were to be commercially produced, a more compact
circuit board could be designed.
The overall cost of the devices is also a major area of concern. One of the
key reasons that smart home technology has failed to be implemented in the
home is the cost to benefit ratio. Currently, with each devices prototype
costing over $150, it is difficult to justify the cost to the end user. There are
several reasons for the high cost of the devices but the main reason is that
every one of the components used was purchased through a middle supplier
in limited quantities. The cost would be dramatically reduced if the
31
7/28/2019 Final Report home system for disable people via bluetooth
32/46
components were purchased through the manufacture in higher quantities.
Cost savings of over 400 percent can be made simply by purchasing in bulk.
For example, the LM7805 voltage regulator used in both applications was
purchased for 47 cents each. If the order was increased to 10,000
components, the unit price drops to only 11 cents.
The power sources used for both applications rely on batteries to power the
devices. This is a major issue for two reasons. Firstly, the running costs of
both devices increases as the user must purchase and replace batteries to
keep the device operational. Secondly, the device is not always easily
accessible, especially for those users with impairments. This could be
improved by using the existing power source, especially with the Blue Lite
device which could use the 110V AC source already being used to power the
device. Several digital thermostats also have a power source being provided
that could be tapped into to power the device.
The last area of improvement is in regards to the range of the devices. Theradio being used by the devices is a Class 1 Bluetooth radio which has a rage
of up to 100ft. However, most mobile phones today us a Class 2 Bluetooth
radio which has an operational range of only 30ft. This limits the users range
and requires that, if a mobile device is used, you must be within line of sight
of the appliance. A solution is to use a home computer with a Class 1
Bluetooth dongle to access the devices that are at a farther distance. Test
results indicated that the user had a range of over 80ft in this type of
application and could easily control devices in other rooms and on other
floors of the house.
6. ConclusionsThe goal of this paper was to outline the design and implementation of a
system to interface easily with pre-existing home appliances and
communicate with a mobile device such as a cell phone, laptop or PDA via
Bluetooth using a simple interface. Two innovative products were produced
called Blue Lite and Blue Heat. Blue Heat is a Bluetooth enabled thermostat
and Blue Lite is a Bluetooth enabled light controller. Both of these
applications rely on the use of cell phones and personal computers and
inexpensive sensors to collect signals through a wireless network to provide
users with a simple interface to interact with appliances in the home.
The devices produced enable the user to control the appliances using pre-
existing devices such as their mobile phone or home computer. The
interfaces are intuitive and easy to use and provide the user with a more
accessible interface then those found in the home. The devices are also very
easy to integrate into existing applications and require only a small amount
of expertise to install.
32
7/28/2019 Final Report home system for disable people via bluetooth
33/46
Our research shows the many types of applications for implementing home
automation and the applications are not limited to those discussed in this
paper. The technology used could be implemented in a wide variety of
applications that require the use of sensors and appliances. This project
successfully designed a system that communicates with a mobile device such
as a cell phone or laptop via Bluetooth to control a thermostat and a lightswitch but has many possible applications that could benefit from this work.
33
7/28/2019 Final Report home system for disable people via bluetooth
34/46
Appendix A Schematics
Blue Heat Schematic Diagram
7/28/2019 Final Report home system for disable people via bluetooth
35/46
35
7/28/2019 Final Report home system for disable people via bluetooth
36/46
Blue Lite Schematic Diagram
7/28/2019 Final Report home system for disable people via bluetooth
37/46
Appendix B Code Flow Charts
Blue Heat
Figure 10 - Blue Heat Flow Diagram
Blue Lite
37
7/28/2019 Final Report home system for disable people via bluetooth
38/46
Figure 11 - Blue Lite Flow Diagram
38
7/28/2019 Final Report home system for disable people via bluetooth
39/46
Appendix C Code
Main.c
#include "Toothpick.h"
#include
#include "BlueLite.h"
rom unsigned char * szOn = "ON\r\n";rom unsigned char * szOff = "OF\r\n";unsigned char * zero = 0;int set = 0;
void main( void ){
//if no BlueMatik, flash red led rapidlywhile ((ToothpickSemaphores&TPSF_LMTEXISTS)==0){
LedRed = ~LedRed;msDelay(50);
}FxPCommand( FxPC_Start, 0, 0 );
AwaitLMTComplete();
// main loopwhile ( 1 ){
// Flash LED to show we're aliveLedGreen = ~LedGreen;msDelay( 250 );
} // end of while ( 1 )
}
// HighInterrupt handler - nothing needs to be done
void HighInterrupt (void){}
// LowInterrupt handler - only thing to do is clear the once-per-second clock tickinterruptvoid LowInterrupt (void){
if (IsSWI( SWI_Tick ) ){
ClearSWI( SWI_Tick ); // Clear clock interrupt flagreturn;
}
}
// Error event handlervoid ErrorStatus( unsigned char ErrNum ){
// Flash error number for diagnositic purposes// For product releases, a Reset() is better for unanticipated errorsBreakpoint( ErrNum );
}
// LinkMatik Event handlervoid LMTEvent( unsigned char EventID, void *pData1, void *pData2 )
39
7/28/2019 Final Report home system for disable people via bluetooth
40/46
{if ( EventID==LMTE_Syntax ){
// Flash error number for diagnositic purposes// For product releases, a Reset() is better for unanticipated errorsBreakpoint( ((unsigned char*)pData1)[0] );
}}
// FxPEvent handlervoid FxPEvent( unsigned char EventID, void *pData ){
if ( EventID==FxPE_Connect ){
// turn off red led during connectionLedRed = LedRedOn;
}else if ( EventID==FxPE_Disco ){
// turn off red led after disconnectionLedRed = LedRedOff;
}
// Check for control eventselse if ( EventID==FxPE_ClntUpdate )
{ // If the button was pressed...if (*((unsigned short*) pData) == ID_On_Off_3){//LedRed = LedRedOff;
//LedGreen = LedGreenOn;// Is the current text value F or O?if (set == 0) //turn light off{
//LedRed = LedRedOff;set = 1;DirAN9 = DirOutput; //setting the the direct out put to
AN9PinAN9Pin = 1; //setting the pin to high - light on
// set the text value to O and update the client//Set_Result_1( szOff, zero );
//FxPCommand( FxPC_CtlUpdate, ID_Result_1, 0 );
//Set_Result_1( szOn, 0 ) ;}else //turn light on{
//LedRed = LedRedOn;set = 0;DirAN9 = DirOutput; //setting the the direct out put to
AN9PinAN9Pin = 0; //setting the pin to high - light on
// set the text value to O and update the client//Set_Result_1( szOn, 0 ) ;//Set_Result_1( szOn, zero );//FxPCommand( FxPC_CtlUpdate, ID_Result_1, 0 );
}
}}
}
BlueLite.c
#include "Toothpick.h"#include
40
7/28/2019 Final Report home system for disable people via bluetooth
41/46
#include "BlueHeat.h"
int setH = 0;int setF = 0;
int Channel = 0;unsigned long ADResult = 0;
ram signed long setTempResult = 0;signed long curTempResult = 0;
void main( void ){
SetAnalogAD0; //Sets AD0 as an analog input and all other ADx pins as digital I/OADConverterOn8bit; //Turn on A to D converter for 10-bit data conversionVRefNegIsVss; //Sets negative voltage reference to Vss groundVRefPosIsVdd; //Sets positive voltage reference to Vdd 5V
//if no BlueMatik, flash red led rapidlywhile ((ToothpickSemaphores&TPSF_LMTEXISTS)==0){
LedRed = ~LedRed;msDelay(50);
}FxPCommand( FxPC_Start, 0, 0 );
AwaitLMTComplete();
// main loopwhile ( 1 ){
// Flash LED to show we're aliveLedGreen = ~LedGreen;msDelay( 250 );
SetADChan( Channel ); // select a to d channelCyclesDelay3p2plus3p2times(4);StartAtoD; // start a to d conversionAwaitAtoDComplete; // await end of conversionGetADResult8bit( ADResult ); // get resultcurTempResult = (ADResult/5);
//Set_curTemp_13(0,&curTempResult);
//get the desired temp and convert to AtoD value assing to setTempResultGet_setTemp_16(&setTempResult);setTempResult = (255 - (setTempResult * 5));
if (setH == 1){
//if the heat button is turned on// set AN5 to low to turn AC off and disconnect RC and ODirAN5 = DirOutput;AN5Pin = 0;//set AN11 high to connect RH and BDirAN11 = DirOutput;AN11Pin = 1;
// if the heat is on and its temp is below desired temp by 1degree, start heating
if(ADResult > (setTempResult+5) ){
DirAN10 = DirOutput;AN10Pin = 1;
}// when the temp reaches above the desired temp by 1 degree, turn
the heat offelse if (ADResult < (setTempResult -5)){
DirAN10 = DirOutput;
41
7/28/2019 Final Report home system for disable people via bluetooth
42/46
AN10Pin = 0;}
}// if the heat is turned off, shut down connection between RH and Belse if (setH ==0){
DirAN11 = DirOutput;AN11Pin = 0;
}
if (setF == 1){
//if the ac is on, set AN5 high to make connection between Rc and ODirAN5 = DirOutput;AN5Pin = 1;// if the temperature is below desired temp plus 1 degree, turn off
the ACif(ADResult >(setTempResult+5) ){DirAN3 = DirOutput;AN3Pin = 0;}// if the temp is above the desired temp by one degree turn off ACelse if(ADResult < (setTempResult-5))
{ DirAN3 = DirOutput;AN3Pin = 1;
}
}// if the AC is turned off, set AN5 to low to disconnect RC and 0else if (setF ==0){
DirAN5 = DirOutput;AN5Pin = 0;
}
} // end of while ( 1 )
}
// HighInterrupt handler - nothing needs to be donevoid HighInterrupt (void){}
// LowInterrupt handler - only thing to do is clear the once-per-second clock tickinterruptvoid LowInterrupt (void){
if (IsSWI( SWI_Tick ) ){
ClearSWI( SWI_Tick ); // Clear clock interrupt flag
return;}
}// Error event handlervoid ErrorStatus( unsigned char ErrNum ){
// Flash error number for diagnositic purposes// For product releases, a Reset() is better for unanticipated errorsBreakpoint( ErrNum );
}
42
7/28/2019 Final Report home system for disable people via bluetooth
43/46
// LinkMatik Event handlervoid LMTEvent( unsigned char EventID, void *pData1, void *pData2 ){
if ( EventID==LMTE_Syntax ){
// Flash error number for diagnositic purposes// For product releases, a Reset() is better for unanticipated errors
Breakpoint( ((unsigned char*)pData1)[0] );}}
// FxPEvent handlervoid FxPEvent( unsigned char EventID, void *pData ){
if ( EventID==FxPE_Connect ){
// turn off red led during connectionLedRed = LedRedOn;
}else if ( EventID==FxPE_Disco ){
// turn off red led after disconnectionLedRed = LedRedOff;
}
// Check for control eventselse if ( EventID==FxPE_ClntUpdate ){
// If the button was pressed...if (*((unsigned short*) pData) == ID_Heat_10){
if (setH == 0) //turn light off{
setH = 1;setF = 0;
}else //turn light on{
setH = 0;}
}
if (*((unsigned short*) pData) == ID_Cool_E){
if (setF == 0) //turn light off{
setF = 1;setH = 0;
}else //turn light on{
setF = 0;}
}}
}
Appendix D - CostThe table below is a summary of the total cost of the products used for thisproject. These costs show the total amount for the creation of theprototypes used for this project. It does not accurately reflect the true cost tobuild these devices if they were to be mass produced.
43
7/28/2019 Final Report home system for disable people via bluetooth
44/46
4.6.1 Blue Heat
Materials Cost
Toothpick
Module
$145.92
Prototype
Board
$3.50
Relays x4 $11.20
Thermistor $0.75
Voltage
Regulator
$0.47
Enclosure $7.50
TOTAL: $169.34
4.6.2 Blue Lite
Materials Cost
Toothpick
Module
$145.92
Prototype
Board
$3.50
Solid State
Relay
$26.00
Voltage
Regulator
$0.47
TOTAL: $175.89
44
7/28/2019 Final Report home system for disable people via bluetooth
45/46
References
[1] Jiang, Li, Da-You Liu, and Bo Yang. "Smart Home Research." Machine Learning
and Cybernetics (2004). 15 Oct. 2007
.
[2] Shepherd, R. "BIuetooth Wireless Technology in the Home." Electronics &
Communication Engineering Journal 13 (2001): 195-203. IEEE/IEE Electronic
Library. 15 Oct. 2007.
[3] Beyond the Smart Home, Yamazaki, T.; Hybrid Information Technology, 2006.
ICHIT'06. Vol 2. International Conference on, Volume 2, Nov. 2006
Page(s):350 355
[4] Smart Home Research , Li Jiang; Da-You Liu; Bo Yang; Machine Learning
and Cybernetics, 2004. Proceedings of 2004 International Conference on,
Volume 2, 26-29 Aug. 2004 Page(s):659 - 663 vol.2
[5] Sensor/Actuator Networks in Smart Homes for Supporting Elderly and
Handicapped People
Dengler, Sebastian; Awad, Abdalkarim; Dressler, Falko; Advanced Information
Networking and Applications Workshops, 2007, AINAW '07. 21st International
Conference on, Volume 2, 21-23 May 2007 Page(s):863 868
[6] Dagtas, S, Y Natchetoi, and H Wu. "An Integrated Wireless Sensing and
Mobile Processing Architecture for Assisted Living and Healthcare
Applications." An Integrated Wireless Sensing and Mobile Processing
Architecture for Assisted Living and Healthcare Applications (2007): 70-72.
ACM.
[7] T. Tamura, T. Togawa, M. Ogawa, and M. Yoda, Fully automated health
monitoring system in the home, Med. Eng. Physics, 20, pp. 573579, 1998.
[8] S. K. Das, D. J. Cook, A. Bhattacharya, E. O. Heierman, III, and T.-Y. Lin, The
Role of Prediction Algorithms on the MavHome Smart Home Architectures,
IEEE Wireless Communications (Special Issue on Smart Homes), Vol. 9, No. 6,
pp. 7784, Dec. 2002.
[9] "IControl." IControl Networks Inc. 2007. 27 Nov. 2007 .
[10] Ascribe Newswire. University of Florida Smart Home Demonstrates
Concept of Automated Elderly Help and Care. Ascribe Newswire: Health.2003 29 November: 1-2.
[11] Kim, Nina. "Car Gadgets: Bluetooth Wireless Communication."
Cars.Com. 31 Aug. 2006. 6 July
2008.
45
7/28/2019 Final Report home system for disable people via bluetooth
46/46
[12] http://www.telusmobility.com/content/clientcare/pcs_east/guides/nokia
_6265i/nokia_6265i_user_guide.pdf
[13] http://www.microchip.com/stellent/idcplg?
IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW0
07002
[14] http://www.flexipanel.com/Docs/Designer.pdf
[15] Shahriyar, Rifat, Enamul Hogue, Iftekhair Naim, S. M. Sohan, and
Mostofa Akbar. "Controlling remote system using mobile telephony." ACM
International Conference Proceeding Series - Proceedings of the 1st
international conference on MOBILe Wireless MiddleWARE, Operating
Systems, and Applications 278 Article 36(2008).
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002http://www.flexipanel.com/Docs/Designer.pdfhttp://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002http://www.flexipanel.com/Docs/Designer.pdf