You are on page 1of 24

University Bus Tracking System Using Mobile

Application

A Project Report
by
Saklain Mostak

Department Of Computer Science & Engineering


Pundra University of Science & Technology
Rangpur Road, Gokul, Bogura, Bangladesh

February 2023
University Bus Tracking System Using Mobile
Application

A Project Report
by
Saklain Mostak
ID: 01319106069
Batch: 13th

Submitted to
The Department of Computer Science and Engineering of Pundra
University of Science & Technology. This Report Presented in Partial
Fulfillment of the Requirements for the Degree of

Bachelor of Science
In

Computer Science & Engineering


Department of Computer Science & Engineering
Pundra University of Science & Technology, Bogura.

February 2023

Page | i
University Bus Tracking System Using Mobile
Application

A Project Report
by
Saklain Mostak
ID: 01319106069
Batch: 13th

Approved as to style and content by


…................................................................
Md. Rabiul Islam
(Supervisor)

Department of Computer Science & Engineering


Pundra University of Science & Technology, Bogura.

February 2023

Page | ii
CERTIFICATE
I am pleased to certify that Saklain Mostak . Roll No: 01319106069, Reg-No:01319106069,
Session: Spring-19 has performed a project work entitled “University Bus Tracking System
Using Mobile Application” under our supervision for the requirement of the completion of
course entitled ‘Project’. So far, as we are concerned this is an original project carried out for
one year at the Department of Computer Science and Engineering, Pundra University of
Science & Technology, Bogura-5800, Bangladesh.

To be best of our knowledge, this paper has not been duplicated from any other document or
submitted elsewhere prior to submission to the department.

Md. Rabiul Islam


Lecturer
Department of Computer Science and Engineering
Pundra University of Science and Technology, Bogura-5800, Bangladesh.

Page | iii
DEDICATION
In accordance with the rules and regulations of Pundra University of Science & Technology
following declarations are made We hereby declare that this project has been done by us under
the supervision of Md. Rabiul Islam, Lecturer, Department of Computer Science and
Engineering, Pundra University of Science and Technology, Bogura-5800.

We also declare that neither this project nor any part of this project has been submitted
elsewhere for awarding of any degree and any material reproduced in this project has been
properly acknowledged.

Page | iv
ACKNOWLEDGEMENT
All praise to Allah who has created us and given us the greatest status among all his creations.
First of all, We express our gratefulness to almighty Allah for enabling us to perform this task
successfully. We would like to express our deepest sense of gratitude to our honorable
supervisor Md Rabiul Islam, Lecturer, Department of Computer Science & Engineering
(CSE), Pundra University of Science &Technology for his scholastic supervision, valuable
guidance, adequate encouragement, and helpful discussion throughout the progress of this
work. We are highly grateful to him for allowing me to pursue this study under his supervision.

We are deeply thankful to the honorable chairman, Md. Habib Ehsanul Haque, and all the
respectable teachers of the Department of Computer Science and Engineering, Pundra
University of Science & Technology, Bogura-5800, Bangladesh, for their encouragement and
help in the last few months that enabled us to acquire a lot of knowledge relevant to our project
work. Finally, We are very grateful to our family members, especially to our parents, all our
friends, and well-wishers for their encouragement and support.

Page | v
ABSTRACT
University Bus Tracking Mobile Application is a mobile application to help students detect the
current location of the bus. It is a hybrid mobile application. We can use android and iOS both.
It can show updated locations. This project uses two mobile devices, which are driver mobile
and using mobile. Nowadays tracking system requires hardware Maintenance on GSM/GPRS
and is very expensive. Firebase, an online server with a real-time Database updates data in
milliseconds the system is faster than others. The driver mobile will transmit the data into a
cloud database which is Firebase. Firebase updates the data continuously and transmits it to the
user app The user's mobile read that data and shows the current location. Hence, the developed
tracking system provides a more user-friendly environment to user

Page | vi
TABLE OF CONTENTS

CERTIFICATE ...................................................................................................................... iii


DEDICATION......................................................................................................................... iv
ACKNOWLEDGEMENT ....................................................................................................... v
ABSTRACT ............................................................................................................................. vi
LIST OF FIGURES ................................................................................................................ ix
Chapter 1-Introduction ........................................................................................................... 1
1.1 Introduction ...................................................................................................................... 1
1.2 Objective .......................................................................................................................... 2
1.3 Motivation ........................................................................................................................ 2
1.4 Methodology .................................................................................................................... 2
Chapter 2-Features and Technology Platform...................................................................... 3
2.1 Features ............................................................................................................................ 3
2.2 Platform............................................................................................................................ 3
2.2.1 Android ..................................................................................................................... 3
2.2.2 IOS ............................................................................................................................ 3
2.2.3 Web ........................................................................................................................... 3
2.3 Programming language .................................................................................................... 4
2.3.1 Dart ........................................................................................................................... 4
2.3.2 Features of Dart language ......................................................................................... 4
2.3.3 Why do we use Dart? ................................................................................................ 4
2.4 User Interface Language .................................................................................................. 4
2.4.1 Flutter ........................................................................................................................ 4
2.4.2 Features of Flutter framework .................................................................................. 4
2.4.3 Benefits of Flutter framework ................................................................................... 5
2.5 Database ........................................................................................................................... 5
2.5.1 Firebase ..................................................................................................................... 5
2.5.2 Advantage of Firebase .............................................................................................. 5
2.6 Medium ............................................................................................................................ 5
2.6.1 GPS, Google Map API .............................................................................................. 5
2.6.2 Uses of GPS Mobile Geolocation Apps.................................................................... 5
2.6.3 Set up Flutter Environment for Using Google Map API .......................................... 6
2.6.4 Add to Google Maps Flutter Plugin as a Dependency .............................................. 6
2.6.5 Configuring Android Min SDK ................................................................................ 7
Page | vii
2.6.6 API Key for an Android App .................................................................................... 7
Chapter 3-Flowchart Diagram & Block Diagram ................................................................ 8
3.1 Flowchart ......................................................................................................................... 8
3.2 Block Diagram ................................................................................................................. 9
Chapter 4-Result & Discussions .......................................................................................... 10
4.1 Introduction .................................................................................................................... 10
Chapter 5-Conclusion ............................................................................................................ 12
5.1 Conclusion ..................................................................................................................... 12
References ............................................................................................................................... 13

Page | viii
LIST OF FIGURES

Figure 1.1: Flowchart of University Bus Tracking System. ...................................................... 8


Figure 2.1: Block Diagram of University Bus tracking System. ............................................... 9
Figure 3.1: Registration for User and Driver. .......................................................................... 10
Figure 4.1: Login for User and Driver. .................................................................................... 10
Figure 5.1: Enable & View Location ....................................................................................... 11

Page | ix
Page | x
Chapter 1-Introduction

In this chapter, we will introduce our project introduction, objectives of the study, motivation,
expected outcome, and methodology. In section 1.1 we will discuss the introduction, in section
1.2 we will discuss objectives, in section 1.3 in the section we will discuss motivation, and in
1.4 we will discuss Methodology.

1.1 Introduction
Vehicle tracking systems have been used in many applications. It was first used in the shipping
industry. Nowadays automated vehicle tracking systems are being used in a variety of ways to
track and display vehicle locations in real time. Basically, the tracking system is based on
Global Positioning System (GPS) which communicates with satellites. Bus Transportation
already began on August 10, 1826, in Nantes called Omnibus [1]. Omnibuses consist of 2
horses and can hold 16 passengers at one time. The word bus is derived from the Latin word
which is Omnibus which carries the meaning of carriage for all. After the development of the
Omnibus, people kept inventing similar architectures such as horsecars, cable car streetcars,
and modern buses. Public transportation in Malaysia starts to develop during the British era.

Since then, public transportation in Malaysia is getting better over time. However, over the
years, many issues occurred such as the time management of bus transportation decreased due
to environmental factors [2]. For example, in a university, the main passengers are students and
staff members. Currently, they are often late to class and faculty because they decide to wait
for the bus without knowing the exact location of the bus. Most of them feel unsure where the
location of the bus. They do not know the current location of the bus and they could not estimate
the time of arrival and time for them to get prepared. Other than that, not knowing the unique
identification for a bus will also complicate which bus they should take. To reduce this
inconvenience, a Real-Time Bus Tracking System is developed. The system eases people in
managing their journey plans. The system's main function is to track a bus's exact location.
Other than that, the main objective of developers developing a Real-Time Bus Tracking System
is to motivate more people to ride public transportation and increase their satisfaction. This

system can help reduce traffic congestion as well as environmental impact.

Page | 1
1.2 Objective
Bus tracking systems are a great way to increase efficiency and make sure your buses run
during your valuable time. It provides you to monitor the location, direction of commute, and
other metrics about your fleet in real time. This information is valuable for destinations and
even maintenance schedules. Real-time tracking is one of the most important objectives of a
GPS vehicle tracker. It helps to see your vehicle's location in real-time and allows you always
to keep an eye on your bus, making it easy to track its whereabouts no matter where you are.
By monitoring your bus in real time, you can keep track of its location and movements,
ensuring that they are being used safely and efficiently. This not only helps to improve the
overall operation of your fleet but can also save you time in the long run. It makes sure to use
real-time tracking as priorities. [3]

1.3 Motivation
Many countries have found that GPS tracking systems not only improve the efficiency of their
own bus operation but also encourage commuters to take advantage of university bus tracking
systems. Many countries' bus systems have GPS tracking system permission to monitor the
location and punctuality of their bus. The application is totally free, and anyone can access it
free of cost. The basic idea for this project was to guide the bus passenger with the routes, and
all the possible stops that come on their way to the destination and display maps and track their
locations and show that. The aim is to generate fast and accurate results and a safe commute.

1.4 Methodology
It is based on the internet of things technology that sends the data over a network to the GPS
server. The location of the bus can be tracked through a mobile app. With the help of the mobile
app, the student can see the bus's location on the map.[4]

Page | 2
Chapter 2-Features and Technology Platform

2.1 Features
The application is going to be a cross-platform application. The application will be usable on
mobile devices (Android, IOS) and the web. Users can download the application free of cost.
Students can track university bus locations very easily. User-friendly UI, that anyone can use
without technical knowledge. Free account creation and many more.

• Platform: Android, IOS, Web


• Programming language: Dart
• User Interface Language: Flutter
• Database: Firebase
• Medium: GPS, Google Maps API
• Software: Visual Studio Code, Android Studio, Adobe Photoshop, Figma

2.2 Platform
2.2.1 Android
Android is a mobile operating system based on an altered version of the Linux kernel and other
open-source software, anticipated mainly for touchscreen mobile devices such as smartphones
and tablets. Android is developed by a conglomeration of developers known as the Open
Handset Alliance, although Google is primarily developing its most widely used version.[5]

2.2.2 IOS
Apple (AAPL) iOS is the operating system for iPhones, iPads, and other Apple mobile devices.
Based on Mac OS, the operating system that runs the Apple family of desktops and laptops,
Apple iOS is designed for easy and transparent networking.[6]

2.2.3 Web
The World Wide Web, a portion of the Internet that consists of pages that can be accessed by
a Web browser, is more commonly referred to as the "Web." Many individuals mistakenly
think that the Web and the Internet are the same thing and use them interchangeably. However,
the global network of computers that enables information sharing through the Web is referred
to as the Internet. Therefore, even if a sizable component of the Internet is the Web, they are
not the same thing. [7]

Page | 3
2.3 Programming language
2.3.1 Dart
Dart is a high-level, general-purpose programming language that was initially created by
Google. Closure and lexical scope are features of this dynamic, class-based, object-oriented
programming language.

It is an open-source programming language that is frequently used to create IoT, desktop, and
modern web apps utilizing the Flutter framework.

2.3.2 Features of Dart language


Large library: It gives programmers the ability to appropriately namespace and organize Dart
code into the required libraries. Versatile compilation: Dart supports JIT (Just in Time) and
AOT (Always on Time) compilation techniques and has the resiliency required to create code
at breakneck speed. Language with an emphasis on security: It is a type-safe programming
language that enables programmers to use runtime and static type checking to make sure that a
variable's value always matches its static type. It offers a sizable community as well.

2.3.3 Why do we use Dart?


• Dart is a platform-agnostic language that works with all operating systems.
• The language is object-oriented and supports all major features, including
inheritance, interfaces, and optional type characteristics.[14]
• A fantastic real-time application is Dart.
• Since it is an open-source language, anyone can use it for nothing. The ECMA
standard accepts it, and it comes with a BSD license.
• Run Dart code through a command-line interface.[12]
• Dart includes a compiler that converts Dart code into JavaScript, which is supported
by all current web browsers.

2.4 User Interface Language


2.4.1 Flutter
Google's portable UI toolkit, Flutter, allows developers to create stunning, natively built
mobile, web, and desktop applications using a single codebase. Flutter is free and open source,
integrates with existing code, and is utilized by developers and businesses worldwide.[8]

2.4.2 Features of Flutter framework


• Hot reloading
• Rich widgets

Page | 4
• Efficient user interface
• Google Firebase assistance

2.4.3 Benefits of Flutter framework


• Easy to use
• Easily accessible on all platforms
• Quick MVP assistance
• A solitary codebase
With much less code, Flutter can create fully working apps for iOS, Windows, Linux, Android,
and macOS. It has quick MVP support all the time. Since developers don't have to write
separate code for Android and iOS, they can organize their code more effectively. [13]

2.5 Database
2.5.1 Firebase
PHP, C++, and other hosting services make up Firebase. For any kind of application (Android,
iOS, JavaScript, Node.js, Content, social authentication (Google, Facebook, Twitter, and
GitHub), and notifications, as well as services like a real-time communication server, it
supports NoSQL and real-time hosting of databases. [9]

2.5.2 Advantage of Firebase


• Real-time updating of data
• Offline availability
• Centralized database for all connected devices
• Easy understanding
• Cloud messaging

2.6 Medium
2.6.1 GPS, Google Map API
A system of satellites called the Global Positioning System, or GPS, is intended to aid with
navigation on land, in the air, and at sea. [10]

GPS consists of three components: space (satellites), ground control, and user devices.

2.6.2 Uses of GPS Mobile Geolocation Apps


Location — Determining a position.
Navigation — It is getting from one location to another.
Tracking — Monitoring objects or personal movement.

Page | 5
Mapping — Creating a map of the world.
Timing — Making to take time measurements.[15]

2.6.3 Set up Flutter Environment for Using Google Map API


Needed two pieces of software to complete this lab Flutter SDK and an editor like Android
Studio, but It uses the preferred editor.

Mobile (Android or iOS) connected to the computer and set to developer mode. The iOS
simulator. (Requires installing Xcode tools)The Android emulator. (Requires setup in Android
Studio, Visual Studio Code)

2.6.4 Add to Google Maps Flutter Plugin as a Dependency


Adding the additional capability to use Pub packages. Add to the Google Maps Flutter plugin
the following command:

dependencies:

flutter:

sdk: flutter

cupertino_icons: ^1.0.5

firebase_core: ^1.22.0

firebase_auth: ^3.11.1

firebase_database: ^9.1.4

cloud_firestore: ^3.1.10

provider: ^6.0.2

flutter_lints: ^2.0.1

google_maps_flutter: ^2.2.1

permission_handler: ^10.2.0

location: ^4.4.0

Page | 6
2.6.5 Configuring Android Min SDK
To add minSDK at minSDKVersion 20. The path is android/app/build.gradle as follows.

defaultConfig {

minSdkVersion 21

targetSdkVersion 30

multiDexEnabled true

versionCode flutterVersionCode.toInteger()

versionName flutterVersionName

2.6.6 API Key for an Android App


To add an API key to the Android app

"api_key": [
{
"current_key": "AIzaSyDDva7vNVrcab1LTUyE5Vq-X1zZIYPW4d4"
}
],

Now it's time to see a map on the screen.

Page | 7
Chapter 3-Flowchart Diagram & Block Diagram

3.1 Flowchart

Figure 1.1: Flowchart of University Bus Tracking System.


We started with the registration part in the "University Bus Tracking System." Users of the
application must be registered. They must complete registration in order to utilize this
application if there are no users already signed up. The driver and pupil sections reflect the fact
that this action has two components. When the driver logs into his application, his dashboard
will be displayed. The driver will choose his bus number, get inside, and begin driving. If the
driver wants to switch buses, he must first choose his new bus and start point. The driver has

Page | 8
the option of logging out. In the other section Student, When the student login into his
application, his dashboard will be displayed. The student will choose his bus number, get
inside, and begin viewing his bus location. If the student wants to switch buses, he must first
choose his new bus and view his bus location. The student has also the option of logout.

3.2 Block Diagram

Figure 2.1: Block Diagram of University Bus tracking System.


The tracking of the location is executed by using radio signals. The satellites emit radio signals,
and the GPS receiver receives signals from the satellite to provide the exact location. The
University Bus Tracking System receives the coordinates from the satellite. Here, an android
app is designed to collect satellite data using Visual Studio Code. Firebase, an online server, is
a mobile and web development platform provided by Google. [11]

Firebase Application is designed to deliver as an intermediate communication medium between


the driver app and the user app. The user needs to select the desired bus and the current location
can see.

Page | 9
Chapter 4-Result & Discussions

4.1 Introduction
In our system, the developed In-the University Bus Tracker application was installed on a
smartphone. In [Fig-5 & Fig-6] We use Login the application to identify which user is making
the request and accordingly, serve related data to him/her. Registration is the first step in
identifying the user. After login, the driver will add location and then enable location. Then the
user can see the location of the bus from his dashboard

Figure 3.1: Registration for User and Driver.

Figure 4.1: Login for User and Driver.

Page | 10
Figure 5.1: Enable & View Location

Page | 11
Chapter 5-Conclusion

5.1 Conclusion
In our project, we have attempted to use a smartphone app to track the bus of Pundra University
of Science & Technology. Our system successfully tracked the whereabouts of the bus at any
time and from any location. To receive and transmit the coordinates to the firebase, the in-
Driver app must be activated once. The user app receives and makes use of the data to display
the bus's location address. One of the key benefits of our system is that it only requires the user
to download and install the app on a smartphone in order to enjoy this feature for no additional
fee.

In this system, we can add the extra feature of accident detection and notify if the bus is in a
jam If an accident occurs, the user will get to know about the accident and detect the accident
location which will help to take any action. We have developed the 'University Bus Tracking
System' for one bus. This project is capable of being implemented on all university buses of
Pundra University of Science & Technology. If our system can help at least one student, then
it will be a success for us.

Page | 12
References

[1] Premier's omnibus à Nantes - Herodote.net. (2017, January 03). Retrieved from
https://www.herodote.net/10aou1826- evenement18 26 08 10. php [Accessed January 25,
2023]
[2]Sejarah Bas Mini. (2013, September 20). Retrieved from https://bm.ca
ri.com.my/portal.php? mod=view&aid=4528 [Accessed January 25, 2023]
[3] Retrieved from https://www.smartfits.co.uk/what-is-a-bus-tracking-system. Smartfit(10
February 2022) [Accessed January 26, 2023]
[4]Complete Guide on School Bus Tracking Software Retrieved from
https://flotillaiot.com/complete-guide-on-school-bus-gps-tracking-software.[Accessed
January 26, 2023]
[5 ]https://en.wikipedia.org/wiki/Android_(operating_system.
[6]Investopedia(UpdatedOctober25,2021)Retrieved from
https://www.investopedia.com/terms/a/apple-ios.asp. [Accessed January 26, 2023]
[7]Techopedia(September,2022)Retrievedfrom,https://www.techopedia.com/definition/5613/
web. [Accessed January 26, 2023].
[8]FlutterRetrieved from https://docs.flutter.dev/resources/faq#:~:text=Performance%20FAQ-
,What%20is%20Flutter%3F,is%20free%20and%20open%20source.[Accessed January 27,
2023].
[9]FirebaseWikipedia(Updated19,January,2023),Retrieved,https://en.wikipedia.org/wiki/Fire
base. [Accessed January 26, 2023].
[10]GlobalPositioningSystem,(19November.2019).Retrievedfrom,https://www.loc.gov/every
day-mysteries/technology/item/what-is-gps-how-does-it-work/. [Accessed January 26, 2023].
[11]FirebaseRetrievedfrom,https://firebase.google.com/firebaseandgcp#:~:text=Yes!,team%2
0or%20infrastructure%20needs%20grow. [Accessed January 29, 2023].
[12] Dart Retrieved from https://www.javatpoint.com/dart-programming. [Accessed January
30, 2023].
[13] Turing (August 11, 2022) Retrieved from https://www.turing.com/blog/flutter-vs-dart-
best-platform-for-app-development. [Accessed January 30, 2023].
[14] Dart Retrieved from https://www.javatpoint.com/dart-programming. [Accessed January
30, 2023].
[15] Geotab (22 May 2022) Retrieved from https://www.geotab.com/blog/what-is-gps. .
[Accessed January 30, 2023].

Page | 13

You might also like