A
Synopsis On
Android Messaging App using Ad Hoc Network
Submitted in partial fulfilment of the requirements for the award of the
degree of
Bachelor of Technology in
Computer Science and Engineering by
Yatindra Kumar Srivastava (1900970100134)
Prachee Singh (1900970100080)
Rahul (1900970100087)
Semester - VII
Under the Supervision of
Dr. Shelja Sharma
Galgotias College of Engineering and Technology
Greater Noida - 201306
Affiliated to
Dr. A.P.J Abdul Kalam Technical University Lucknow
TABLE OF CONTENTS
1. Abstract
2. Introduction
3. Literature Survey
4. Problem Formulation
5. Objectives
6. Proposed Workflow of Model
7. Methodology
8. References
2
1. ABSTRACT
The Bluetooth Chat Messenger application proposed by this synopsis is a two-way, (sending
and receiving) text chat program for mobile phones powered by Google’s Android operating
system with Bluetooth transceiver’s capabilities. These devices are largely used everywhere
such as streets, squares, hotels and other places. The Bluetooth Chat Messenger does not
require a GSM or Wi-Fi connection, all it needs is two Bluetooth compatible Android
devices.
Speaking from a networks point of view, our proposed application works both as a client as
well as a server; The application creates a server then waits for another client to connect to it
(i.e., Server situation); or ask another device to chat with it (i.e., Client situation).
It has a user-friendly Graphical User Interface (GUI). It allows us to exchange text messages
and emojis. It can save the names of the previously connected devices in order to make the
process of searching for them, even simpler. It enables the users to save chat’s conversation
history in the database, so that they may be able to browse through previous conversations.
The idea is to implement authentication through the API provided by Firebase, so that the
users can securely log in to their account and access the app.
Messenger applications are very popular these days. WhatsApp, We Chat, Hangouts, etc are a
rage in the app world. But all these messenger applications exploit either mobile data which
is a paid service or Wi-Fi which is not always available, and when available, the connection
strength fluctuates from place to place. Even when one wants to send a message to another
person on the same floor or a few feet away they have to rely on the availability of these two.
Hence, we developed a Bluetooth based android chat application.
Keywords:
Bluetooth: a standard for the short-range wireless interconnection of mobile phones,
computers, and other electronic devices. send (a photograph or other piece of data) from one
electronic device to another via Bluetooth.
Technology: The application of scientific knowledge for practical purposes, especially in
industry. Machinery and devices developed from scientific knowledge. A Branch of
knowledge dealing with engineering or applied sciences.
Device: A thing made or adapted for a particular purpose, especially a piece of mechanical or
electronic equipment. a plan, method, or trick with a particular aim.
Android Application Framework: is a platform for developing software applications. It
provides a foundation on which software developers can build programs for a specific
platform. For example, a framework may include predefined classes and functions that can be
used to process input, manage hardware devices, and interact with system software. This
streamlines the development process since programmers don't need to reinvent the wheel
each time they develop a new application.
Android Software Development Kit: A software development kit that enables developers to
create applications for the Android platform. The Android SDK includes sample projects
with source code, development tools, an emulator, and required libraries to build Android
applications.
Interactive Development Environment: An integrated development environment (IDE) is a
software application that provides comprehensive facilities to computer programmers for
3
software development. An IDE normally consists of a source code editor, build automation
tools and a debugger.
Emulator: Managing Virtual Devices. An Android Virtual Device (AVD) is an emulator
configuration that lets you model an actual device by defining hardware and software options
to be emulated by the Android Emulator.
2. INTRODUCTION
Bluetooth chatting is an innovative approach to the mobile world. This application shows use
of Bluetooth in terms of chatting. Means persons can chat via Bluetooth. The main screen has
just a list which has two values server and client. By selecting one of these two values, the
corresponding instance is created. Main screen is used to initialize the connection. It does
follow thing at here. First, it starts the application and search the Bluetooth device. It sends
the signal to the server class. Second, it can run, pause and stop the application. Third, it
shows alert using set Alert function on every changing. Server class goes active when it goes
signal from the main class. It sends the hello world string with the string to the other devices.
Client class works to respond the other Bluetooth device server. Bluetooth is named after a
Danish king, Harald Bluetooth, who ruled from 940 to 985 AD.
During his reign, Bluetooth was able to unite Denmark and part of Norway into a single
kingdom. In 1994 according to Ericsson started researching short-range wireless technology.
That could be used between their cellular phones and peripheral devices, such as a headset. In
1998 according to Ericsson, Nokia, IBM, Toshiba, and Intel came together to form a Special
Interest Group (SIG). These companies were chosen because of Ericsson and Nokia’s
leadership in mobile telephones, IBM and Toshiba’s leadership in laptop computing, and
Intel’s leadership in digital signal processing technology. In four short years, the original five
companies, in the SIG, have turned into 1500. Bluetooth’s original mission was to replace all
of the cables that tie up today’s complex world. There are many cables plugged into the back
of a computer for instance, a monitor, a keyboard, a mouse, and a printer. The location of the
correct plug can become very confusing for the user, as more ‘‘plugged-in’’ devices are
introduced; this is where Bluetooth comes in. The developers of Bluetooth soon realized that
this technology is capable of much more than just connecting peripheral devices. It can work
as a lower speed wireless network, allowing connection through access points at any location.
Bluetooth is also a universal standard and can be used wherever you go, which makes it
extremely powerful. Some current devices that are not Bluetooth enabled can add Bluetooth
capability via PC cards or USB adaptors.
As this technology continues to grow more and more devices will come with Bluetooth chips
built-in. There are many devices on the market that already have Bluetooth built into them,
such as phones, laptops, and PDAs. As more of these devices are released to the public,
Bluetooth’s place in society will be sealed. Bluetooth is one of the leading wireless
technologies and also the fastest growing standard wireless data communication technology
in the world with the benefit of low power consumption at a low cost. Bluetooth is supported
by many ICT (Information and Communication Technologies) companies; therefore, a large
number of Bluetooth applications and products have been introduced commercially. In recent
years, Bluetooth has become a standard incorporated in a large number of Bluetooth devices
ranging from keyboards, mice, and printers to handhelds, laptops, and mobile phones. The
objective of this paper is to demonstrate how Bluetooth technology establishes
communication between devices. It starts off by researching Bluetooth technology
background, protocol and compares with other wireless technologies, then design an
application which can perform an automatic Bluetooth connectivity task between a mobile
phone and a computer/server. The study focuses on using Bluetooth open-source code from
Nokia PC connectivity API, to develop a Bluetooth-enabled application using
Microsoft .NET. This application synchronizes files between mobile phone and a
4
computer/server automatically. Bluetooth is a wireless technology that can be used for short-
ranged communication between different Bluetooth enabled devices. Some of its common
functions are passing and synchronizing data, such as a PDA and computer, and connecting
to the Internet. Bluetooth works in the unlicensed 2.4-GHz industrial, scientific, and medical
(ISM) band and uses frequency-hopping spread-spectrum (FHSS) communication, which
transmits data over different frequencies at different time intervals. This is accomplished by
making ‘‘hops’’ to different frequencies through the ISM band. A device makes about 1600
hops per second, which is spaced out over 1 MHz. Unlike most devices, Bluetooth enabled
devices communicate with each other automatically. There is no need to specify what type of
action to take place or when it should to happen. When two devices are within range of each
other, they will communicate back and forth to determine if there is any information to be
passed.
During initial communication, it is necessary to create a relationship between unknown
devices; this process is referred to as pairing. During the paring process, a secret PIN is
created that is only known by the two devices that are communicating. It is better for the user
to manually enter a PIN, and make it complex, in order to make the code hard to break. Since
Bluetooth is a wireless protocol, anyone with an appropriate receiver can intercept
transmissions. In order to reduce hacking, Bluetooth supports device authentication, which
means, devices that share information use a shared secret key, or link key to authenticate one
another. If the devices have communicated in the past, they will share a common link key,
which can take two forms. The first, and least secure, is a unit key. A unit key is the same
secret key for every device that has established a connection. For example, if a PDA and a
Mobile Phone exchange information, then later that same PDA and notebook computer share
information, all three devices will share the same unit key, leaving them much more
accessible to attacks. It is recommended that a unit key only be used for devices with limited
memory and limited user interface devices. The second, and much more secure, is a
combination key. Combination keys are unique and change each time the devices make a new
connection, so no two devices share the same key. Since the keys are different, it is much
easier to protect the communication between the devices
3. LITERATIRE SURVEY
1. An extensive study has been made by Karande, Kirti, et al. “Bluetooth Message
Hopping Chat Application”, 2015[1] on the aspects of the development of a Bluetooth based
chat app in the absence of Cellular Network or Wi-Fi. It has been observed that every android
device has a built-in support for Bluetooth connectivity with other Bluetooth supported
devices. It has also been observed that with the advent of advanced technologies, the ease of
access of the internet has skyrocketed, to the point that it has become almost an articulation
point in the field of communication. Hence, the use of a Bluetooth based chat app that uses
message hopping technique has been proposed through this paper.
2. Todtenberg, Nicole, and Rolf Kraemer, “A survey on Bluetooth multi-hop
networks”, 2019[2] have done extensive research on the viability of bluetooth being a means
of creation of an ad-hoc network that may be used effectively for communication between
two or more devices that support bluetooth technology. The voluminous works of other
research papers from the past twenty years has also been mentioned in their works, which
signifies that the field of bluetooth ad hoc networks has been a topic that has posed
monumental challenges for all the researchers involved.
3. The idea of using controlled flooding as a means of communication between the
sender and the receiver is proposed, and the algorithm that is to be used is Multi Relay point
flooding algorithm, which has been a topic of research for Saini TK, Sharma SC, “Flexible
multipoint relay selection for suitable route in mobile ad hoc networks”, 2021[3]. The authors
5
have proposed Multi Relay point algorithm as an optimization approach in order to avoid
duplicate transmissions due to blind flooding. Avoiding duplicate messages and using Multi
Relay point algorithm to find appropriate nodes in order to forward the message ensures high
efficiency of the app in question.
4. Firebase is a NoSQL database which make use of sockets which allows the users to
store and retrieve the data from the database. Extensive research has been done by Emmadi
SS, Potluri S “Android based instant messaging application using firebase”, 2019 [5], in
assessing the viability of using Firebase for the development of an Android based Messaging
app, for various services such as Authentication, (for the development and maintenance of the
sign-in feature), cloud (for the storage of texts, pictures etc.) and real time database.
4. PROBLEM FORMULATION
Problem Statement- To design a system that enables users to chat and share
files in the absence of internet or in the case of intense network traffic using
bluetooth technology.
Scenarios
Complete absence of network.
A jammer is a mobile communications device that transmit on the same
frequency range as a cell phone to create strong cell tower interference
and block cell phone signals and call transmission.
Strained networks in crowded places
The big problem is that large, dense crowds are the perfect weapon to
jumble cell towers, which receive data from phones and send it back out.
Too many cell phones mean too many signals flying at an antenna, which
can overload the network and effectively shut people out.
Suppose you are a part of a large crowd gathered in an area, for a fest or a
concert. There is a good chance that due to the density of the population
in that area, flow control mechanisms such as Go Back N and Selective
Repeat may fail due to the buffer being full on a very frequent basis.
In layman terms, the network traffic becomes intense, because of which
the number of requests that are sent per unit time is way beyond what the
network can handle. This causes delays in response, and hence the
network becomes immensely slow.
Our app proposes to solve this problem with the use of Bluetooth
technology, which comes embedded with all devices that are being
released these days. Bluetooth-based chat application can work on a
small-scale area, with the advantage being that unlike tower-based
6
signals, it doesn’t have the overhead of other users using up the
bandwidth with their requests. It is proposed to be mostly used for small-
scale communication, such as in the premises of a school, college or
office.
5. OBJECTIVES
To study and explore the existing chat applications and do extensive
literature survey.
The project aims to develop an android application that enables
communication within a localized area.
Our goal is to develop an application to enable users to chat or share
small files using bluetooth technology.
To develop an application that enables communication within a limited
range when network traffic is beyond what can be easily handled.
To share small files at a place where network jammers have been
installed (for example, if a professor wants to share class notes when use
of internet is prohibited).
6. PROPOSED WORKFLOW OF MODEL
To achieve the previously mentioned scenarios; a clear, well-organized development
plan should be followed. The development plan will be as follow:
1. Analysis phase: It is where our project lifecycle begins. Gather market and user
requirements. Understand users’ expectations. Analyse Market and application’s
criteria.
Outcomes of Analysis Phase:
The objectives of the paper are to deliver an Android application that should be
easy to use, enjoyable and could be applied to learning purposes:
1. Imagine a scenario in a school playgrounds or crowded places where the wireless
or
7
wired local area network (LAN) failed for any reason. How would users communicate
among each other or exchange files of great importance?
2. Think of a presentation going on and two or more students maybe not sitting beside
each other. How they can communicate or exchange information silently without
interrupting the presentation?
3. Picture a scene of a person sitting alone and bored with nothing to do, in a club or
in
a plane. He needs some company or someone to talk to or have an “on the go”
social conversation.
4. Can children with disabilities be integrated in their society? Can we decrease the
isolation of disable children from the digital age? Can technology facilitate
communication for children with intellectual disabilities? Can technology help
disabilities students to learn effectively?
2. Design phase: Develop a specification for our system that will meet market and
users’ needs and take into account time, resources, and eventually cost. Using the
analysis, a design of the application will be followed.
3. Implementation phase: In this phase, the construction of the actual project result
will begin where encoding of the application will take place.
4. Testing phase: Testing the application functionality through various conditions
and
use cases to ensure the software quality
7. METHODOLOGY
The proposed work can be broadly classified into two categories:
1. Analytical Methodology 2. Experimental Methodology
1. Analytical Methodology
Extensive literature survey.
Creation of an Ad Hoc network with the help of bluetooth.
Implementation of the multi relay point algorithm to avoid blind flooding.
Exploration and implementation of asymmetric encryption technique (RSA).
2. Experimental Methodology
Tools and Technologies
8
The programming technologies like Java, Kotlin.
Firebase: The Firebase SDK provides simple authentication feature without having to
write code for it.
Git and GitHub for version control.
NS2: Network simulation environment.
8. REFRENCES
1. Todtenberg N, Kraemer R. A survey on Bluetooth multi-hop networks. Ad Hoc
Networks. 2019 Oct 1;93:101922
2. Saini TK, Sharma SC. Flexible multipoint relay selection for suitable route in mobile ad
hoc networks. Journal of Ambient Intelligence and Humanized Computing. 2021
Jul;12(7):8173-86.
3. Khatarkar S, Kamble R. A survey and performance analysis of various RSA based
encryption techniques. International Journal of Computer Applications. 2015 Jan
1;114(7).
4. Emmadi SS, Potluri S. Android based instant messaging application using firebase.
International Journal Recent Technology and Engineering. 2019 Jan;7(5):352-5.
5. Gilski P, Stefanski J. Android os: A review. Tem Journal. 2015 Feb 1;4(1):116
6. Karande K, Shaikh I, Shaikh T, Vaghela H, Wakure G. Bluetooth Message Hopping
Chat Application. 2015 Oct
7. Gavalas, D., & Economou, D. (2011). Development platforms for mobile applications:
Status and trends. Software, IEEE, 28(1), 77-86.
8. Peterson, B. S., Baldwin, R. O., & Kharoufeh, J. P. (2006). Bluetooth inquiry time
characterization and selection.textitMobile Computing, IEEE Transactions
on, 5(9),1173-1187.
9. Haris M, Jadoon B, Yousaf M, Khan FH. Evolution of android operating system: a
review. Asia Pacific Journal of Contemporary Education and Communication
Technology. 2018;4(1):178-88.
10. Bhanot R, Hans R. A review and comparative analysis of various encryption algorithms.
International Journal of Security and Its Applications. 2015 Apr;9(4):289-306.
11.