Smart Geyser
Smart Geyser
Smart Geyser
BSCS
Session (2018-2022)
Project Supervisor
Dr Asim Zeb
Assistant Professor
Abbottabad UST
Submitted By
Submitted By:
Aqib Iqbal _________________
Roll Number 2801 Signature
Supervisor
Ms. Sadia Basar _________________
Lecturer Department of Information Technology Signature
Abbottabad UST
Chairman CS
Dr. Muhammad Naeem _________________
Department of Information Technology (Signature)
Abbottabad UST
2
EXORDIUM
3
DEDICATION
We wish to dedicate this entire project report to our beloved parents for their tireless
Support. We thank them for the spirit of hard work, courage, and determination they
Had instilled in me throughout our lives.
4
EXECUTIVE SUMMARY
In winters, the necessity of hot water increases as a result geyser becomes the need of houses,
offices and mosques. Geysers are placed outside and away from living area so people feel
hectic to go there for turning on their geysers and the problem arises when a person needs the
hot water for wadu in fajar prayer and also for his office and for that he has to wake up before
Fajar for turning his geyser on or leave on throughout night which eventually ends up resulting
in huge gas bill and the same problem happens when they forget to turn off their geyser.
To prevent all these problems from prevailing, the WI-FI Geyser Control is developed. It is a
monitory system, which provides solution to above mentioned problems. It is a stand-alone
application which doesn’t require any computer to operate. It monitors the geyser and updates
his user via android application which is able to rotate geyser thermostat intelligently based on
user input and turn off and on geyser and provides temperature information on user demand.
The user can control his geyser anywhere even when he is far from his house or in his living
room.
WI-FI Geyser Control System is a monitory system that has a sensor type as in our case a
temperature sensor is used along with NodeMcu micro-controller, it provides information
regarding geyser temperature, rotates the geyser thermostat on command and also get schedule
and automatically On and Off on given commands.
5
ACKNOWLEDGEMENT
Al-Hamd-u-Lillah! We are very grateful to my Almighty Allah, who made us able to meet and complete
this very tedious, complex and painful task. It is very exciting, pleasant and amusing moment for us,
because we had never thought that sometime we would be able to complete a software project and its
report, as well. The full credit of this software project goes to Almighty ALLAH, because we are unable
to do anything without His guidance and help.
Before we get into thick of the things, we would like to add a few heartfelt words for the people who
were part of this project in numerous ways. People who gave unending support right from the stage
project idea were conceived. After this, we would be most indebted to our parents, and family members,
whose love, prayers, encouragements and moral support made it easy for us to face this tough, tedious,
complex and mind-boggling project. They greatly sacrificed focus, At the end we are extremely indebted
our teacher and supervisor Dr. Asim Zeb of this project, and also very thankful Dr. Muhammad Naeem
Chairman Department of Computer Science and all teachers. Vivacious and exuberant approach always
put us on right track. Wear extremely thankful to our beloved prayers and continuous encouragement
made the successful completion of this project possible.
6
ABBREVIATIONS
PC Personal Computer
NSGP Northern Sui Gas Pipelines
UI User Interface
7
TABLE OF CONTENTS
Chapter 1 Introduction........................................................................................................ 11
1.1 Brief........................................................................................................................... 11
1.2 Relevance to Course Module .................................................................................... 11
1.3 Project Background ................................................................................................... 11
1.4 Methodology and Software Lifecycle for This Project ............................................. 11
1.4.1 Rationale behind Selected Methodology .............................................................. 12
8
LIST OF FIGURES
9
LIST OF TABLES
10
Smart Geyser
Chapter 1: Introduction
1.1. Brief
In winters, the hot water becomes the primary need of houses, offices and mosques. Most
of the times, geysers are placed outside and away from living area so it becomes extra effort
for going outside for setting geysers on and the problem arises when a person needs the hot
water in the early time of the day for Namaz and office then it is costly to leave them on all
the night which will eventually ends up high gas bill or a person has to get up way early for
setting geyser on. For coping this problem, the WI-FI Geyser Control is developed. This
system monitors the geyser and updates his user via android application which is able to
rotate geyser thermostat intelligently based on user input and turn off and on geyser and
provides temperature information on user demand. This provides the user a control over his
geyser anywhere even if he is far from his home or sitting in his drawing room.
In the object-oriented methodology, the main focus is on the modules that combines
process and data together. The aim of object-oriented methodology is to make
11
Smart Geyser
improvements in the quality of the software and productivity. During analysis object-
oriented methodologies are used that fill gap between solutions and problems. These are
some reasons behind this methodology
12
Smart Geyser
⚫ He has to set his geyser on so that he gets the warm water on his required time
⚫ If he wants warm water in the morning time, in this case he has to wake up way early
and need to go outside despite the weather condition for setting his geyser on.
⚫ Another problem he can face is that how would he make sure that his water actually
gets warm by his geyser.
⚫ He is not going to do this extra work for just one day but multiple times throughout
the day and during the whole winter season despite the weather condition.
⚫ The other problem is, he cannot set the geyser ON all the time otherwise he will end
up having high gas bills.
13
Smart Geyser
Cost:
Our competitor’s systems are relatively expensive than our system as their market price is
5000-6000 PKR. If user buys more than one device, it will end up costly.
No Temperature sensor:
The aforementioned device does not have temperature sensors. So, they are unable to tell
the geyser temperature and they will also not tell if the geyser has problem like weather
the geyser is warming the water correctly or not.
Bad UI design:
The competitor’s application is not user friendly. They do not have a proper dashboard
and the whole UI is lack luster.
No security:
The competitive system lacks security. Anyone within the close proximity can control the
geyser.
Objectives:
Objective of our project is to provide ease to use their water geysers.
Benefits:
• Allow user to schedule his geyser any time.
• Allow user to switch ON/OFF geyser from anywhere.
• Provide the solution at a relatively lower cost.
• Temperature of the water will be notified on the android application.
• Each device will have a unique ID which will be required for controlling the
device. This improves device security.
14
Smart Geyser
Figure: 3.1
The table below indicate a comprehensive use case of Wi-Fi Geyser Control.
15
Smart Geyser
Description: A User can login with his Google Email id and Password to access the Smart
Geyser application on android phone using an internet connection, and can then
proceed to use other functions of the system.
Trigger: A user wants to access to control the water geyser.
Preconditions User should be registered in the database.
:
Post User can access the Menu and Control Geyser.
conditions:
Normal Flow: 1. System displays login screen
2. User enters their credentials
3. System redirects user to the menu
Exceptions: At step 2, the credentials entered by the user are incorrect.
At step 2, the user is not registered in the database.
16
Smart Geyser
17
Smart Geyser
Exception: At step 4, the application has lost the connection with the micro-controller
Exceptions: At step 2, the application has lost connection with the micro-controller.
18
Smart Geyser
In this section we will discuss about functional requirements of the system in detail.
Identifier ID: 01
Title Authentication of user
Requirement The system shall check whether the credentials entered by the user
are valid or not.
Source User
Rationale To provide access to the user.
Dependencies Nil
Priority High
Identifier ID: 02
Title User registration
Requirement The user shall be able to register themselves in the database.
Source User
Rationale To register the user in the database.
Dependencies Nil
Priority High
Identifier ID: 03
Title Switch geyser thermostat ON/OFF
Requirement The User shall be able to Switch the geyser thermostat ON/OFF
Source User will originate it.
Rationale To allow user to switch the state of the geyser.
Dependencies ID: 01
Priority High
19
Smart Geyser
Identifier ID: 04
Title Set a schedule.
Requirement User can schedule the timing for when the geyser turns ON/OFF
Source User
Rationale User can select for how long the knob stays at that value.
Business Rule (if Any restriction, policy, rule that the particular requirement must be
required) fulfilled through its functional behavior
Dependencies ID: 01
Priority Medium
Identifier ID: 05
Title Check water temperature
Requirement The user shall be able to check the temperature of the water.
Source User
Rationale User can check the temperature of the water geyser.
Dependencies ID: 01
Priority Low
Identifier ID: 06
Title Set temperature
Requirement The user shall be able to set the temperature of the geyser.
Source User
Rationale User can select the value of the geyser for which the knob will stay
at.
Dependencies ID: 01
Priority Medium
20
Smart Geyser
Wireless Connectivity
Network Independent
Usability
The User interface of the application should be easy to understand and materialistic.
Performance
Cost Effective
Device Independent
System operability
21
Smart Geyser
Figure 4.1
22
Smart Geyser
Figure: 4.2
23
Smart Geyser
Figure: 4.3
24
Smart Geyser
Figure 4.4
25
Smart Geyser
Figure: 4.5
26
Smart Geyser
Chapter 5: Implementation
27
Smart Geyser
Figure 5.1
Description:
Here user login himself into the Android application with his email and password.
28
Smart Geyser
Figure 5.2
Description:
If user does not have account, he can simply login with his google account.
29
Smart Geyser
Figure 5.3
Description:
Here user will add his device name and device id. He can add more than one devices
depends how many devices he would install in his house.
30
Smart Geyser
Figure 5.4
Description:
Here user would go into the next activity by simply click on his device name. He can
also add device here and can go to the back activity.
31
Smart Geyser
Figure 5.5
Description:
This is the dashboard of the application. Here, user can see his geyser temperature, set
geyser value to off, warm or hot on his needs. He can enable belt detection for
detecting the belt failure. Here he can set schedule and even logout from the app.
32
Smart Geyser
Figure 5.6
Description:
Here User can set one-time schedule and also a repeating schedule by simply entering
the start and end time.
33
Smart Geyser
Figure 5.7
Description:
When user hit on set schedule then application again make sure his preference for
setting geyser.
34
Smart Geyser
Figure 5.8
Description:
When user hit set time button then this clock appears on his activity for taking his
time input.
35
Smart Geyser
Figure 5.9
Description:
When user wants to set schedule for repetitive then this interface pop up for him for
taking his day’s input.
36
Smart Geyser
Verify Login:
Test case 1: Verify that the user is already registered, the application should let the user to get
sign in.
Test case 2: Verify that if the user is trying to sign without giving email and application give
error.
Test Case 3: Verify that if the user is trying to sign without giving password and application
give error.
Test Case 4: Verify that if the user is trying to sign in without giving email and password and
whether application pop up google authentication.
37
Smart Geyser
Test Case 5: Verify that registration of the user can be done with google authentication.
Add Device:
Test Case 1: Verify if the application let the user to add device on giving required inputs.
Test Case 2: Verify if the application gives error on not providing ID.
38
Smart Geyser
Select Device:
Test Case 1: Verify that if we touch on device name it proceeds further without crash.
TC01 Check if the app Touch device name Proceed further Pass
is proceeding without error.
further without
error or crash.
TC02 Check if the app Touch on Add device Device can be add Pass
is allowing to add button. easily
more devices.
39
Smart Geyser
Test Case 3: Verify that if we touch on back button it proceeds further without crash.
TC03 Check if the app Touch back button Proceed further Pass
is proceeding without error.
further without
error or crash.
Dashboard:
Test Case 1: Verify that if the temperature sensor is working properly.
Test Case 2: Verify that the geyser work according to the geyser value.
Test Case 3: Verify that the enable belt detection sensor is working properly.
40
Smart Geyser
TC03 Check if the app Set the value on to Notify on app that Pass
is detecting the enable belt detection belt is not working
belt properly. properly.
Test Case 4: Verify that system is performing according to the set schedule.
TC04 Check if the Set schedule time and System will work Pass
system is date. on schedule.
performing actual
on schedule.
Test Case 6: Verify that after clicking logout, application then close.
41
Smart Geyser
7.1. Conclusion
Geyser Control System is a prototype developed by the students of Department of
Computer Science Abbottabad University of Science and Technology. The need of
hot water increases in winter and need of geyser increases proportionally. Usually,
geysers are placed at distance from living area which ends up increasing extra burden
for taking care of geyser on and off times despite the weather conditions outside.
Disadvantages are responsibility increase, temperature is not in control, in order to get
warm water in cold freezing mornings a person has to get up at dawn.
In this system, we focused on resolving these issues and tried to give maximum ease to
the user. Mobile application of this system is very easy to use, providing control over
the geyser. Installment of this device on geyser is also very easy. We tried our best to
provide a person full ease and user will easily set schedule of his geyser at any time of
his want. The device is easy to maintain and also in cheap price.
42