BLE Beacons for Proximity-Based and Location-Based Services

113
BLE Beacons for Proximity-Based and Location-Based Services by Andrew Mackey A Thesis presented to The University of Guelph In partial fulfilment of requirements for the degree of Masters of Applied Science in Engineering Guelph, Ontario, Canada c Andrew Mackey, July 2019

Transcript of BLE Beacons for Proximity-Based and Location-Based Services

Page 1: BLE Beacons for Proximity-Based and Location-Based Services

BLE Beacons for Proximity-Based and Location-Based

Services

by

Andrew Mackey

A Thesis

presented to

The University of Guelph

In partial fulfilment of requirements

for the degree of

Masters of Applied Science

in

Engineering

Guelph, Ontario, Canada

c© Andrew Mackey, July 2019

Page 2: BLE Beacons for Proximity-Based and Location-Based Services

ABSTRACT

BLE BEACONS FOR PROXIMITY-BASED AND LOCATION-BASED

SERVICES

Andrew Mackey Advisors:

University of Guelph, 2019 Petros Spachos

Stefano Gregori

In recent years, there has been a rapid growth in what is called Internet of Things (IoT).

IoT can be described as the interconnectedness of all things, where we as people are able

to interact with our physical environment using wireless communications. One of the

core wireless technologies that has been a driving force in the growth of IoT is Bluetooth

Low Energy (BLE). This thesis focuses on proximity-based and location-based services

using BLE beacons and smartphone devices. Moreover, this thesis proposes that BLE

beacons are capable of providing proximity and location-based services, both indoors and

outdoors with a suitable level of precision and accuracy. Proximity and location using

BLE beacons are realized using a Received Signal Strength Indicator (RSSI) technique.

The results of numerous experiments provide sufficient evidence that BLE beacons are

a viable and highly scalable option for such services in the framework of IoT.

Page 3: BLE Beacons for Proximity-Based and Location-Based Services

Dedicated to my parents. A caring mother who has always supported me and my

father, a true man who I always have and always will aspire to emulate. . .

iii

Page 4: BLE Beacons for Proximity-Based and Location-Based Services

ACKNOWLEDGEMENTS

I’d like to thank my friends and family who supported me along the way. Moreover, I’d

like to give a deep thanks to my advisor Dr. Petros Spachos and co-advisor Dr. Stefano

Gregori for their guidance and expertise.

iv

Page 5: BLE Beacons for Proximity-Based and Location-Based Services

Contents

Abstract ii

Acknowledgements iv

List of Figures viii

List of Tables ix

Abbreviations x

Symbols xi

1 Introduction 1

1.1 Problem Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 IoT and Beacons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3 Research Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.4 Organization of the Thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Related Work 7

2.1 BLE Beacons and IoT Applications . . . . . . . . . . . . . . . . . . . . . . 7

2.1.1 User Acceptance . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2 Context-Aware Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2.1 Proximity-Based Services . . . . . . . . . . . . . . . . . . . . . . . 9

2.2.2 Indoor Localization for LBS . . . . . . . . . . . . . . . . . . . . . . 9

2.2.2.1 BLE Beacon Localization . . . . . . . . . . . . . . . . . . 12

2.3 RSSI Filtering Improvements . . . . . . . . . . . . . . . . . . . . . . . . . 13

3 BLE Beacons Characterization 14

3.1 Beacon Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3.1.1 BLE Beacon Hardware . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.2 Protocol Implementations . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3.3 Additional Sensing Capabilities . . . . . . . . . . . . . . . . . . . . . . . . 17

3.4 Beacon Power Consumption . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.5 Security and Privacy Concerns . . . . . . . . . . . . . . . . . . . . . . . . 21

3.5.1 Security Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.5.2 Privacy Concerns . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

v

Page 6: BLE Beacons for Proximity-Based and Location-Based Services

3.6 The RSSI Technique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

4 Filtering Techniques 27

4.1 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4.2 State Estimation Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.2.1 Smoothing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.2.2 Gaussian Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4.2.3 Kalman Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.2.4 Non-Parametric Information Filter . . . . . . . . . . . . . . . . . . 32

4.2.5 Particle Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

5 Experiments 37

5.1 Performance Evaluation of Beacons for Indoor Proximity Estimation inSmart Buildings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5.1.1 Setup & Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

5.1.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.1.3 Concluding statements . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.2 Enhanced Indoor Location System with Beacons and Kalman Filters . . . 40

5.2.1 Setup & Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.2.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.2.3 Concluding Statements . . . . . . . . . . . . . . . . . . . . . . . . 45

5.3 Energy Consumption and Proximity Accuracy of BLE Beacons for Inter-net of Things Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.3.1 Setup & Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.3.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.3.3 Concluding Statements . . . . . . . . . . . . . . . . . . . . . . . . 48

6 Smart City Applications 51

6.1 Smart Parking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

6.1.1 Proposed architecture . . . . . . . . . . . . . . . . . . . . . . . . . 54

6.1.1.1 Cloud Server . . . . . . . . . . . . . . . . . . . . . . . . . 55

6.1.1.2 Smartphone . . . . . . . . . . . . . . . . . . . . . . . . . 56

6.1.1.3 BLE beacons . . . . . . . . . . . . . . . . . . . . . . . . . 56

6.1.2 System implementation . . . . . . . . . . . . . . . . . . . . . . . . 58

6.1.2.1 Server requirements & development . . . . . . . . . . . . 58

6.1.2.2 Mobile application . . . . . . . . . . . . . . . . . . . . . . 58

6.1.2.3 BLE beacons . . . . . . . . . . . . . . . . . . . . . . . . . 60

6.1.3 Wireless communication . . . . . . . . . . . . . . . . . . . . . . . . 61

6.1.3.1 Beacons & Google’s Eddystone . . . . . . . . . . . . . . . 61

6.1.3.2 Cloud communication . . . . . . . . . . . . . . . . . . . . 61

6.1.4 Parking availability estimation . . . . . . . . . . . . . . . . . . . . 62

6.1.4.1 Particle filtering implementation . . . . . . . . . . . . . . 62

6.1.5 Experimental Procedure and Results . . . . . . . . . . . . . . . . . 65

6.1.5.1 Experimental Procedure . . . . . . . . . . . . . . . . . . . 65

6.1.5.2 Path Loss Model . . . . . . . . . . . . . . . . . . . . . . . 66

6.1.5.3 Distance Estimation . . . . . . . . . . . . . . . . . . . . . 68

6.1.5.4 Proximity Identification . . . . . . . . . . . . . . . . . . . 70

6.1.6 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

vi

Page 7: BLE Beacons for Proximity-Based and Location-Based Services

6.2 Energy-Wise Bike-Share Asset Tracking . . . . . . . . . . . . . . . . . . . 76

6.2.1 Related Research . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

6.2.2 System Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . 78

6.2.2.1 System Framework . . . . . . . . . . . . . . . . . . . . . . 78

6.2.2.2 Communication Infrastructure . . . . . . . . . . . . . . . 79

6.2.2.3 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

6.2.2.4 Power Generation . . . . . . . . . . . . . . . . . . . . . . 80

6.2.3 Experimental Procedure & Methodology . . . . . . . . . . . . . . . 81

6.2.3.1 Measuring Power Consumption . . . . . . . . . . . . . . . 81

6.2.4 Proximity Estimation . . . . . . . . . . . . . . . . . . . . . . . . . 82

6.2.5 Preliminary Results . . . . . . . . . . . . . . . . . . . . . . . . . . 83

6.2.5.1 Power Consumption Results . . . . . . . . . . . . . . . . 83

6.2.5.2 Proximity Estimation Results . . . . . . . . . . . . . . . . 84

6.2.6 Discussion & Analysis . . . . . . . . . . . . . . . . . . . . . . . . . 84

6.2.6.1 Power Consumption Implications . . . . . . . . . . . . . . 84

6.2.6.2 Proximity Estimation Accuracy . . . . . . . . . . . . . . 86

6.3 Environmental Audio Collection . . . . . . . . . . . . . . . . . . . . . . . 86

6.3.1 Application Overview . . . . . . . . . . . . . . . . . . . . . . . . . 86

6.3.2 Application User Interface . . . . . . . . . . . . . . . . . . . . . . . 88

6.3.3 Immediate Stakeholders and Potential Applications . . . . . . . . . 88

6.3.4 Concluding Statements and Future Directions . . . . . . . . . . . . 88

7 Conclusions 91

7.1 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

Bibliography 93

vii

Page 8: BLE Beacons for Proximity-Based and Location-Based Services

List of Figures

1.1 IoT and Smart Cities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

3.1 iBeacon Packet Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3.2 Monsoon Power Monitor. . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.3 Beacon Power Measurements . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.4 Cyalkit-E02 Debug Board. . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.5 Trilateration: Setup Overview . . . . . . . . . . . . . . . . . . . . . . . . . 25

4.1 The Basic Kalman Filter Model. . . . . . . . . . . . . . . . . . . . . . . . 29

5.1 Average RSSI value of the beacons under the employment of differentfiltering techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.2 Beacon location system: General topology. . . . . . . . . . . . . . . . . . . 41

5.3 Topology 1: 1× 1 m. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.4 Topology 2: 2× 2 m. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.5 Topology 3: 6× 6 m. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.6 Room 1: Distance estimation. . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.7 Room 2: Distance estimation. . . . . . . . . . . . . . . . . . . . . . . . . . 50

6.1 Smart Parking System Overview. . . . . . . . . . . . . . . . . . . . . . . . 54

6.2 Smart Parking System flowchart. . . . . . . . . . . . . . . . . . . . . . . . 57

6.3 Developed mobile application for the system. . . . . . . . . . . . . . . . . 59

6.4 Parking lot for experimentation. . . . . . . . . . . . . . . . . . . . . . . . 60

6.5 BLE beacons used for the smart parking system. . . . . . . . . . . . . . . 60

6.6 Server Screen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

6.7 Best curve fitting for RSSI values at distances from 0.2 to 4 meters (a) atthe indoor and (b) at the outdoor parking. . . . . . . . . . . . . . . . . . 66

6.8 Distance estimation at the two environments. . . . . . . . . . . . . . . . . 69

6.9 Cumulative probability error for distance estimation. . . . . . . . . . . . . 71

6.10 Proximity identification experiment layout. . . . . . . . . . . . . . . . . . 72

6.11 System Framework . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6.12 Proximity identification experiment layout. . . . . . . . . . . . . . . . . . 80

6.13 Dragino Shield and Arduino Node . . . . . . . . . . . . . . . . . . . . . . 82

6.14 BLE Beacon Power Consumption. . . . . . . . . . . . . . . . . . . . . . . 83

6.15 Bike-Share Path-loss Model . . . . . . . . . . . . . . . . . . . . . . . . . . 84

6.16 Bike-Share Proximity Estimations . . . . . . . . . . . . . . . . . . . . . . 85

6.17 Smart Cities: Audio Collection Framework. . . . . . . . . . . . . . . . . . 87

6.18 Smart Cities: Audio Collection App UI. . . . . . . . . . . . . . . . . . . . 90

viii

Page 9: BLE Beacons for Proximity-Based and Location-Based Services

List of Tables

2.1 Wireless Technologies Utilized for Indoor Localization . . . . . . . . . . . 10

3.1 BLE Beacons Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

5.1 Performance evaluation: Standard deviation in dBm. . . . . . . . . . . . . 40

5.2 1 by 1 m Fence - Mean Absolute Error (m) . . . . . . . . . . . . . . . . . 44

5.3 2 by 2 m Fence - Mean Absolute Error (m) . . . . . . . . . . . . . . . . . 44

5.4 6 by 6 m Fence - Mean Absolute Error (m) . . . . . . . . . . . . . . . . . 44

5.5 Room 1: Standard deviation in m. . . . . . . . . . . . . . . . . . . . . . . 46

5.6 Room 2: Standard deviation in m. . . . . . . . . . . . . . . . . . . . . . . 46

6.1 Experimental error based results for different number of particles at theindoor environment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

6.2 Smart Parking: Indoor Prediction Results. . . . . . . . . . . . . . . . . . . 73

6.3 Smart Parking: Outdoor Prediction Results. . . . . . . . . . . . . . . . . . 73

6.4 Bicycle Power Generator Comparison . . . . . . . . . . . . . . . . . . . . . 81

ix

Page 10: BLE Beacons for Proximity-Based and Location-Based Services

Abbreviations

AoA Angle of Arrival

BLE Bluetooth Low Energy

CDF Cumulative Distribution Function

DFT Discrete Fourier Transform

FDM Frequency Division Multiplexing

FFT Fast Fourier Transform

GPS Global Positioning System

IoT Internet of Things

IPS Indoor Positioning System

LBS Location Based Services

LoRa Long Range

LoS Line of Sight

MAE Mean Absolute Error

MSE Mean Squared Error

PAN Personal Area Network

PDR Pedestrian Dead Reckoning

RSSI Received Signal Strength Indicator

SMA Simple Moving Average

TDM Time Division Multiplexing

ToA Time of Arrival

VLC Visible Light Communication

WSN Wireless Sensor Network

x

Page 11: BLE Beacons for Proximity-Based and Location-Based Services

Symbols

d Distance m

K Kalman Gain unitless

ri RSSI Observation dBm

TXi Transmission Interval ms

TXp Transmission Power dBm

xi

Page 12: BLE Beacons for Proximity-Based and Location-Based Services

Chapter 1

Introduction

Every day more computer-based devices are connected to the Internet. Most of these

devices have at least one sensing unit, creating opportunities for more direct integration

between the physical world and computer-based systems. This is the idea behind the

Internet of Things (IoT), a development of the Internet in which everyday objects have

network connectivity, allowing them to send and receive data. IoT is an umbrella term

for the advanced level of connectedness and growth of wireless sensor network (WSN)

applications. One area that is receiving a strong focus is the growth and development of

smart cities and smart buildings [1]. Smart cities incorporate a lot of different aspects.

This includes but is not limited to transportation, homes/buildings, smartphones, cloud

infrastructure, and environmental sensing (See Fig. 1.1). In this field of research,

increased level of connectivity allows users to interact with the physical environment

for improved quality of life enhancements. This includes easier access to information,

more intuitive and simple use of public services, and more personalized interactions

with everyday objects. Furthermore, cities are able to exploit vast amounts of data

collected as a result of wireless integration, encouraging infrastructure improvements

in transportation, resource utilization, and urban planning. As wireless technology

becomes cheaper, this becomes much easier to implement on a large scale.

Two of the most important elements in the IoT framework is Location-Based Services

(LBS) and Proximity-Based Services (PBS). LBS and PBS is necessary to provide mean-

ingful data and interaction to individuals in any environment, both indoor and outdoor.

1

Page 13: BLE Beacons for Proximity-Based and Location-Based Services

Figure 1.1: IoT and Smart Cities.

These services can be implemented using wireless technologies which exploit the Re-

ceived Signal Strength Indicator (RSSI) technique. LBS can be concerned with two or

three dimensional positioning and path planning, while PBS is as simple as determining

proximity to a point of interest. Proximity detection is capable of supporting a lot of

useful applications. However, they are still very difficult to implement on a large scale.

1.1 Problem Definition

The increase in connectivity and desire for smarter buildings/cities requires scalable

and effective LBS and PBS, especially indoors [2]. These systems present a number of

challenges. In any wireless technology, the impact of Line of Sight (LOS) varies based

on technology and environmental dynamics. When implementing a localization system,

2

Page 14: BLE Beacons for Proximity-Based and Location-Based Services

LOS is often paramount in the accuracy of the system. This is because physical ob-

structions have a very large impact on the power of the received signal, thus greatly

affecting RSSI observations. The most effected technology in this respect is Light Fi-

delity (Li-Fi), where RSSI cannot be observed if LOS is obstructed. Secondly, cost is

a critical concern, especially when trying to implement a localization system on a large

scale. Many electronic devices and supporting hardware such as routers, access-points,

and cameras, have a high unit cost. Thus, implementing location services in every room

of a building incurs a significant capital cost. Furthermore, the size and deployment

requirements impact the ease of scalability with regards to installation costs and modi-

fications to existing infrastructure. Using wireless technologies such as Wireless Fidelity

(Wi-Fi) and Li-Fi to implement localization systems often requires significant overhaul

to the existing infrastructure of any environment, and may be very difficult to install

in many cases. This is because every room requires the localization supporting hard-

ware. Hence, wiring and/or lighting infrastructure would have to be changed for every

room. Moreover, using Wi-Fi technology for such a system would likely experience a lot

of signal interference. Today, most indoor environments have a Wi-Fi network already

operating on the 2.4 GHz band. So, a Wi-Fi based solution would experience a lot of in-

terference, making RSSI and fingerprinting techniques very noisy. Another challenge to

consider when implementing localization solutions is the power consumption. Wireless

technologies like Wi-Fi, ZigBee, Bluetooth, and LoRa, all require a significant amount

of power. Wi-Fi being the worst of those five, utilizing over 200 mW per node to imple-

ment a localization system [3]. This adds to the operating cost of the system, as well as

potentially dictating the lifespan of critical nodes in the network if a continuous power

source is not available. Lastly, the dynamic characteristics and physical properties of

a given environment can drastically change the performance of a localization solution.

Dynamic characteristics regarding weather, people, and object motion may change the

aforementioned non-linearities, such as LOS, noise, and interference [4]. Even the phys-

ical size of the environment effects the RSSI observations [5]. Thus, this thesis explores

the use of Bluetooth Low Energy (BLE) beacons in order to realize a highly scalable,

power efficient, cost effective, and highly accurate localization, proximity-based systems.

3

Page 15: BLE Beacons for Proximity-Based and Location-Based Services

1.2 IoT and Beacons

BLE beacons are a device exploding in popularity and research potential for IoT appli-

cations [6–8]. They are fully wireless devices that implement Bluetooth Special Interest

Group’s Bluetooth Low Energy technology. BLE was introduced in Bluetooth version

4.0. It operates on the 2.4 GHz band and maintains a range of approximately 50 - 75

m, close to that of standard Bluetooth profiles (100 m). The drawback is that BLE

sacrifices throughput for energy efficiency [9]. In order to achieve sub 1 mW power

consumption (in devices such as beacons), BLE technology had to reduce the achievable

data-throughput to a maximum of 1 MBps. This makes BLE suitable for devices that

do not transmit large amounts of data. This includes a lot of personal devices like wire-

less keyboards, smart-watches, and wireless headphones; home automation devices like

smart lighting and security, and entertainment devices like wireless speakers.

BLE beacons transmit fixed packets at regular intervals that identify the particular

beacon, in addition to possible telemetry data collected from additional sensors that

may have been included by the beacon manufacturer. BLE beacons are largely popular

for their small size, low cost, fully wireless form factor, and long battery life.

As a result, beacons have become a popular means of supporting Internet of Things

(IoT) services. Their small size provides a means of increased scalability because it has

a minimal impact on infrastructure. Their BLE functionality establishes simple inte-

gration with almost all of today’s smartphone devices, making them a highly versatile

device. BLE beacon deployment is projected to reach 400 million deployed devices glob-

ally by the year 2020 [10]. BLE beacons often employ the RSSI technique to implement

useful localization and proximity-based applications. Shopping and entertainment are

some of the first industries to adopt such systems. Industry giants such as Target and

Walmart have already begun implementing beacon-based LBS in select locations [11].

The core problem with this, however, is their susceptibility to noise and physical in-

terference. Changing temperatures can produce inaccuracies with observations due to

thermal noise. Additionally, with the increased number of wireless devices for every indi-

vidual, environmental interference and contention increases. BLE beacon transmissions

are sensitive to their environment, so as the physical characteristics of the environment

changes, the application performance can be significantly impacted.

4

Page 16: BLE Beacons for Proximity-Based and Location-Based Services

1.3 Research Contributions

The work presented in this thesis defines a comprehensive analysis of BLE beacons for

the purposes of PBS and LBS applications in IoT. Specifically, the research pertains to

smart city and smart building applications. The development of such localization mod-

els, mathematical methods for performance improvements, and the results of numerous

published studies and experiments are reported in this thesis.

Moreover the key contributions are summarized below.

• The characterization of multiple BLE beacons with regards to power consumption

and RSSI-based proximity performance. The exploration and comparison between

two crucial beacon configuration parameters (transmission power and transmission

interval) and their effects on power consumption is detailed.

• The development, execution, and analysis of many localization and proximity ex-

periments using beacons and smartphones, across many different indoor and out-

door environments. Published results is presented and discussed.

• The development and implementation of state estimation filtering algorithms for

mobile application software. Kalman, Gaussian, Particle, and Non-parametric

information filters are utilized to improve RSSI-based proximity estimation per-

formance. Experimental results are discussed and compared to common smoothing

algorithms such as the simple moving average (SMA).

• Multiple RSSI datasets for multiple beacon devices have been recorded. This

provides other researchers with a substantial set of information and data for their

own research exploration.

• The design of three unique BLE beacon-based smart city applications, rooted in

RSSI-based localization. A smart parking system, energy-wise bike-share tracking

system, and environmental audio collection application is proposed.

1.4 Organization of the Thesis

The rest of this thesis is organized as follows; Chapter 2 discusses the related research sur-

rounding the roles of BLE beacons in IoT, PBS, and the breadth of wireless localization

5

Page 17: BLE Beacons for Proximity-Based and Location-Based Services

technologies. Chapter 3 comprehensively characterizes eleven beacon devices available in

today’s market. The problem statement and filtering algorithms that support accuracy

improvements are examined in Chapter 4. Localization results for proximity estimation

is detailed in Chapter 5. Chapter 6 details three specific IoT applications that utilize

BLE beacons, rooted in localization. The Conclusion is in Chapter 7.

6

Page 18: BLE Beacons for Proximity-Based and Location-Based Services

Chapter 2

Related Work

In this Chapter, beacon devices, their applications, and the research surrounding prox-

imity and location-based services using six wireless technologies are explored.

2.1 BLE Beacons and IoT Applications

BLE beacons are a very simple IoT device. They are small, low cost, transmitting devices

designed specifically to bring attention to their location through periodic broadcasts.

Their design aims to fill the gap with GPS, where GPS does not work indoors and in

extreme environments. Their operation is defined by Bluetooth Special Interest Group’s

Bluetooth Low Energy standard first introduced in Bluetooth 4.0 in 2010, also referred

to as Bluetooth Smart. They come in a variety of shapes, sizes, and configurations.

Their growing popularity has resulted in a plentiful market of beacon devices from many

manufacturers. Detail about eleven popular beacon devices is explored in Chapter 3.

Beacons were first adopted to implement basic location discovery and LBS. Such ap-

plications include room discovery, indoor navigation, asset tracking/identification, and

advertising. The marketplace value for LBS is estimated to reach 68.85 billion USD by

2023 [12]. Beacons are particularly useful in many of these scenarios due to their ease of

scalability, deployment, and integration with smartphone technology. Most, if not all,

current smartphone devices today are Bluetooth 4.0+ compatible and thus make it easy

to design and realize a multitude of beacon applications. The study presented in [13] fo-

cuses on the current use-cases of BLE beacons, as well as proposes a use for them in the

7

Page 19: BLE Beacons for Proximity-Based and Location-Based Services

workplace. The current applications are occupancy detection, LBS, indoor localization,

and asset tracking. The workplace application is based on a mobile application called

BeaSmart, which provides contextualized user experiences for individuals in the work-

place. Initial features include navigation guidance, temperature control, personalized

notifications, and inventory assistance.

2.1.1 User Acceptance

User acceptance of LBS is a critical factor in the growth of IoT and continued research

into beacon-based location systems. A vast overview of the current technologies, tech-

niques, and services associated with IoT equipped smart buildings is provided in [1].

Tenant services, disaster management, marketplace applications, and user security are

explored in length to provide us with knowledge regarding the current problems and

potential solutions with regards to each topic. Experimental models such as [14], utilize

a simple Android application for room detection using incremental rule learning. The

decisions made by the application can be edited by the user of the application to improve

its effectiveness and accuracy. The experiment proves to be effective for room discov-

ery applications, and its general simplicity may aid in the acceptance of other iBeacon

indoor location systems.

Security is another critical factor is user acceptance of proximity and location-based

services. To enhance the security of beacon-based location systems, the detection of

physical attacks against beacon transmitters is proposed and explored in [15]. Hidden

Markov Models are used to be able to identify four common physical attack patterns;

broken, moving, switch and duplication. The solution provides a detection accuracy

of 85%. All detection algorithms are implemented on a server, eliminating the need to

update smartphones and reduce the power consumption of smartphone devices [15]. The

security concerns specifically regarding beacons are discussed further in Chapter 3.

8

Page 20: BLE Beacons for Proximity-Based and Location-Based Services

2.2 Context-Aware Services

2.2.1 Proximity-Based Services

PBS is a simplified form of LBS in that they do not rely on two or three-dimensional

positioning, rather just the proximity of a person or object to a point of interest. Prox-

imity detection is critical because it is the foundation on which RSSI-based localization

schemes can be developed. Proximity services may support such services as targeted ad-

vertising, home automation, security, and more. BLE beacons were designed primarily

with proximity detection in mind. In [16], the authors explore the use of Apple iBeacons

and their role in Proximity-based Services (PBS). They stress that detection accuracy,

energy efficiency, cost, availability, and transmission range are all vital factors in pro-

ducing a good PBS solution. Beacons meet much of these constraints, however, they

suffer from signal interference and noise, just as any other wireless technology. So, the

authors implement a server-based Kalman filter to improve detection accuracy. Results

show a 32% improvement in proximity detection.

Another important factor to consider in PBS is security and privacy. The work in [17]

and [18] presents three security mechanisms for PBS; Service provider filtering, Hide &

Seek, and Hide & Crypt. Service provider filtering attempts to hide the exact location

of the asset/individual from the service provider by generalizing the location, the hide

& seek method expands on the service provider filtering by utilizing other users in the

network to share course location information in the case the service provider is not

capable. Lastly, the hide & crypt method was the most desirable, as it implements the

prior with more secure computation.

2.2.2 Indoor Localization for LBS

Smartphones and their wide range of integrated technologies facilitate a lot of the growth

in IoT, supporting multiple mechanisms for indoor localization, as discussed in [19]. Mul-

tiple techniques and technologies have been adapted to provide indoor location informa-

tion, all of which attempt to overcome the interference and dynamics of a complex indoor

environment. Such indoor localization models may be based on a visual/camera-based

system, as in [20, 21]. These models are capable of accurate indoor localization through

9

Page 21: BLE Beacons for Proximity-Based and Location-Based Services

Wireless Technology Cost Availability Implementation Complexity Susceptibility to Interference Accuracy

Wi-Fi Moderate High Low High Moderate

Li-Fi High Low High High Moderate

BLE Low High Low Moderate Moderate

Zigbee High Moderate Low Moderate Moderate-High

RFID Low High Low Moderate Low

LoRa Moderate Low Moderate Low-Moderate Low

Table 2.1: Wireless Technologies Utilized for Indoor Localization

sophisticated feature recognition but require pre-processed data of the environment and

increased hardware costs.

In order to lower the cost and complexity of indoor localization systems, many wireless

technologies have been explored. A summary of the common technologies explored in

the literature can be seen in Table 2.1.

The work in [22] utilizes the fingerprinting approach to achieve accurate location. This,

however, suffers from more interference in the environment and consumes much more

energy than alternative solutions, such as BLE [23].

Li-Fi, or visible light communication (VLC), is another wireless communication mecha-

nism that can support localization. In [24], the authors conduct a survey on the methods

and accuracy of implementing VLC-based localization, both indoors and outdoors. For

an LED-based Indoor Positioning Systems (IPS), the process normally consists of three

phases: Signals are received from each transmitting anchor node, modulated using fre-

quency division multiplexing (FDM) or time division multiplexing (TDM) techniques in

order to differentiate between them. Next, only LOS paths are considered, as non-LOS

results in no information. Thus outlier nodes are removed. Lastly, the observed signals

are then turned into location estimates by exploiting characteristics like RSSI, time of

arrival (TOA), and angle of arrival (AOA). Using these methods, it was reported that

a positioning error of 14.8 cm was achieved, assuming good LOS. It should be noted

that TOA techniques may also apply to BLE beacon technology. However, beacons

were designed around the RSSI model and in order to implement TOA one would need

to synchronize the clocks of all beacon devices. This would add a significant level of

complexity to the system that may not be appropriate for beacons.

LoRa technology operates on the 915 MHz band in North America and benefits from

its extraordinary transmission range (∼ 10km) [25], [26]. However, LoRa technology

can exceed power consumption of 150 mW, which limits the lifespan of a LoRa-based

10

Page 22: BLE Beacons for Proximity-Based and Location-Based Services

localization system significantly [27]. Its long transmission range may be viewed as an

asset but it makes the technology better suited for outdoor environments. Preliminary

research has shown that the localization error of LoRa can be in the order of 10’s of

meters, which may be suitable for outdoors, but entirely useless indoors [27], [28].

Zigbee technology was primarily developed for medical device applications, but can also

be utilized for home automation and LBS. It is based on the IEEE 802.15.4 standard.

The power requirements are greater than BLE but lesser than Wi-Fi, making it a con-

tender for implementing localization solutions [3]. In [29], the authors utilize Zigbee

technology in order to assist Wi-Fi fingerprinting localization. The Zigbee devices de-

tect Wi-Fi access points in order to save energy and develop accurate fingerprints for

the localization model. The experiments report sub-1 meter accuracy with an improve-

ment of 67% energy savings over traditional standalone Wi-Fi solutions. The research

presented in [30] reported a 3-dimensional Root Mean Squared Error (RMSE) under

1 meter in many scenarios. However, it is important to note that Zigbee hardware is

more expensive and has lower availability and market presence than BLE devices. It

also requires Zigbee compliant hardware to receive the signal, which smartphone devices

do not have.

Radio Frequency Identification (RFID) can span a large band of frequencies; from low-

frequency (125 kHz) to ultra-high-frequency (UHF 300 MHz - 3GHz). RFID tags can be

passive, where the electromagnetic field of the reader powers the device, or active, where

the RFID device has its own power source. The authors in [31] utilize active UHF RFID

tags to study indoor positioning and distance estimation. Results showed positioning

error greater than 3 meters.

Uncommon wireless technologies, such as ultrasound [32] have been used, where time

of flight techniques are combined with fingerprinting to achieve greater accuracy. The

benefit of ultrasound is that it avoids interference from overpopulated bandwidths, espe-

cially the 2.4 GHz channels that fall under the WLAN 802.11 band. Again, the hardware

cost and availability is a major concern.

11

Page 23: BLE Beacons for Proximity-Based and Location-Based Services

2.2.2.1 BLE Beacon Localization

Beacon technology has grown in popularity and much more research has been developed

in using it for indoor localization and LBS [1, 33–35]. The fundamental operation of

these beacons is to realize indoor localization solutions.

The work in [36] demonstrates the development and testing of location fingerprinting

using BLE beacons. Where fingerprinting relies on a previously constructed radio map

of the deployment region. The work uses 19 beacons in a 600m2 environment. The

best results showed a positioning error under 2.6 m in a dense beacon network. In

[37], the authors utilize beacons to design a proximity detection system. They stress

the effects of interference between beacons in a dense network. Experimental results

show an achievable detection accuracy of 90% under the employment of their adaptive

scanning mechanism. The adaptive scanning accounts for changes in beacon density, so

as not to enforce a constant scan interval, ensuring observations are made during the

scan.

Some research combines other technologies with beacons in order to provide more accu-

rate positioning. The research presented in [38] uses inertial sensors with BLE beacons

in order to mitigate signal non-linearities and drift error. A Trusted K-Nearest Bayesian

Estimator is implemented to estimate position. This method first obtains the position

using the K-Nearest Neighbor method and then applies a fusion of the pedestrian dead-

reckoning approach and a Kalman filter. The positioning error was found to be under 1

meter.

The Pedestrian Dead Reckoning (PDR) approach to localization has been implemented

with BLE beacons [39]. The PDR approach is known to have inherent drift, and so, this

study uses Estimote beacons to calibrate and readjust dynamically. The PDR approach

finds user position by utilizing three essential variables; step detection, walking length,

and walking direction. This system employs the use of smartphone sensors (like the

gyroscope and accelerometer) to obtain this necessary variable information. Strategically

placed Estimote beacons are used as calibration zones to eliminate drift.

The work in [40] attempts to find the relation between beacon arrangement and po-

sitional accuracy in an indoor environment. Four arrangements: triangular, square,

pentagonal, and hexagonal are compared in their experiments. It is determined that the

12

Page 24: BLE Beacons for Proximity-Based and Location-Based Services

particular shape has less to do with accuracy than the number of beacons in the arrange-

ment. They conclude that arrangements with more beacons (up to a peak threshold)

tend to improve location accuracy. IPS systems tend to be two dimensional. Expanding

to three dimensions using the three-ball positioning algorithm is what has been explored

in [41]. Their experiments are conducted in a 7m x 5m x 3m room and resulted in a

peak error of 1.2m.

All techniques may provide different levels of accuracy and will likely behave differently

depending on the environment. So, it is important to note the characteristics of each

tested environment when deciding on what technique to implement.

2.3 RSSI Filtering Improvements

BLE beacons are highly susceptible to noise and interference and do not provide con-

sistent signals for accurate indoor localization. To overcome the effects of interference

and dynamic changes to the physical environment, many methods devised around ad-

vanced filtering techniques have been adapted to beacon-based systems to improve the

accuracy obtained in using RSSI localization techniques. A lot of these techniques are

derived from Bayes theorem, and follow the Bayesian form, as described in [42]. The

most common of these filter implementations with beacon devices are the Kalman and

Gaussian filters as explored in [33, 35]. These filters provide a reasonably accurate state

estimation and can be adjusted for changes is environmental/ process noise. Other filters

such as the particle filter are used. Particle filters are highly accurate, but at the cost

of greater computational complexity, hence the need for a client-server based model, as

outlined in [43].

13

Page 25: BLE Beacons for Proximity-Based and Location-Based Services

Chapter 3

BLE Beacons Characterization

In this Chapter, BLE beacons are described in detail. Their configuration parameters,

protocol implementations, power consumption, security concerns, and hardware are ex-

amined. Moreover, how they can be used to implement Location Based Services (LBS)

are reviewed.

3.1 Beacon Overview

BLE beacons, in particular, are devices that have received a lot of attention in recent

years. They are simple transmitting devices with the main goal of bringing attention to

their location. There are two main configurations common to all beacon devices.

1. Transmission power (TXp)

2. Transmission interval (TXi)

The transmission power is the strength of the transmission, often represented as decibels

with reference to 1 mW, i.e. dBm. The second configuration parameter is the trans-

mission interval. This is the period in which packets are broadcast, often expressed in

milliseconds.

Beacons are also very desirable for their small size, very low power consumption, and

especially low cost. The market has reacted, as such, there is a wide variety of BLE

14

Page 26: BLE Beacons for Proximity-Based and Location-Based Services

beacon devices available from many vendors. Table 3.1 provides details on eleven popular

beacon devices available in 2019.

3.1.1 BLE Beacon Hardware

All beacons rely on some sort of BLE chipset in order function. The selection of such a

chipset can dictate important factors such as; cost, power consumption, configuration,

performance, on-chip memory, and size. As depicted in Table 3.1, some beacon ven-

dors like BlueCat and Texas Instruments have designed their own chipsets (BlueGiga,

CC2650). However, more commonly, beacon vendors choose to implement some version

of the nRF BLE chipset designed by Nordic Semiconductor. These chips are a complete

SoC (System on Chip), designed around an ARM Cortex M0 32-bit processor. The

Cortex M0 is a popular choice due to its small size and low power consumption.

The power source is the other critical internal component. The selection of battery type

and capacity has the greatest effect on the achievable lifespan of any BLE beacon device,

aside from using energy harvesting technology. Most beacons tend to operate at 3V (with

some exceptions), allowing for a lot of choice for battery selection. There are generally

two battery implementations, each with their own trade-offs. Coin cell batteries, such

as the CR2032 coin cell battery are very small in size, allowing the beacon device to

have very small dimensions, at the cost of reduced battery life. Whereas standard AA

batteries are used in some beacons to drastically improve battery life, at the cost of

far larger dimensions. A great example of this is the Gimbal Series 10 and Series 21

beacons. The two beacons are identical in terms of chipset, only differing in their battery

implementation and physical size. Other manufacturers try to implement some form of

compromise between size and battery life. For instance, the Kontakt beacon utilizes two

CR2477 coin cell batteries operating in parallel to double the capacity.

There is also a wide range of pricing. This is often attributed to differences in power

sources, software support, and additional sensors. For instance, the Cypress solar beacon

is $49 USD due to its light energy harvesting hardware, while the Gimbal series 10 is

$5 due to its lack of sensors and a small battery. All beacon devices differ slightly in

design, however, all provide the same core function. It is important to evaluate multiple

options before selecting one, depending on application requirements.

15

Page 27: BLE Beacons for Proximity-Based and Location-Based Services

Table 3.1: BLE Beacons Overview16

Page 28: BLE Beacons for Proximity-Based and Location-Based Services

Figure 3.1: iBeacon Packet Structure

3.2 Protocol Implementations

BLE beacons transmit small packets of information, the most critical piece of data often

being its universally unique identifier (UUID). Some vendors may choose to design and

implement their own protocol as Gimbal does. However, most beacon devices support

Apple’s iBeacon protocol [44] and Google’s Eddystone beacon protocol [45].

Google’s Eddystone was introduced in 2015. It defines 4 packet formats: UID, URL,

TLM, and EID. UID is for a static unique 10-byte identifier, URL is for transmitting

a compressed parsable URL, TLM is designed to transmit sensor data, and finally, the

EID packet is a time-varying identifier for added security. The iBeacon protocol is much

simpler. It was first introduced by Apple in 2013. It defines 5 fields (See Fig. 3.1):

a 9-byte Prefix/Header, a 16-byte UUID, a 2-byte major, a 2-byte minor value, and a

1-byte value that indicates the expected TX power at 1m. The major and minor values

allow for application developers to group and sub-group each beacon for better beacon

management and control. User devices that are BLE enabled and running either iOS

7.0+ or Android 4.3+ operating systems are capable of supporting iBeacon.

3.3 Additional Sensing Capabilities

BLE beacons often include a variety of additional low-power sensors for telemetry about

the environment. These often include but are not limited to:

• Temperature Sensor

• Humidity Sensor

• Barometer

• Luxometer

• Gyroscope

17

Page 29: BLE Beacons for Proximity-Based and Location-Based Services

• Accelerometer

• Microphone

These sensors allow beacons to provide useful information about the environmental

conditions in which they are deployed. The sensors allow for many unique applications,

often rooted in localization. These sensors vary in power consumption and it is important

to manage the measurement frequency of all additional sensors for optimal battery life.

3.4 Beacon Power Consumption

Beacon power consumption is part of what makes them so popular. A critical char-

acteristic for beacon-based indoor location is the lifespan of the beacon nodes [46, 47].

BLE was developed specifically for lower power consumption than alternative wireless

technologies, such as Wi-Fi [23]. BLE beacon power consumption is primarily a function

of its two main configuration parameters, transmission power, and transmission interval.

Where the energy consumption is proportional to the transmission power and inversely

proportional to the transmission interval.

In order to grasp the effects of the configuration parameters on power consumption, 6

plots are given to depict the energy consumption for 6 beacon devices. The experiment

consists of measuring the average power consumption over 3 transmission power levels

(-20, -12, and 0 dBm) and 3 transmission intervals (100, 500, and 1000 ms). In order

to accurately measure the power consumption, a Monsoon Power Monitor [48] was used

(See Fig. 3.2). The Monsoon power monitor is capable of measuring and plotting power

consumption and current draw, among many other parameters. It does this in real time

at a sample rate of 5000 times/second. Each measurement is executed over a period of

2 minutes for each beacon in order to obtain an average with a high level of confidence.

Fig. 3.3 depicts the correlation between the critical beacon configuration parameters,

TXp and TXi, and power consumption. It is clear that all BLE beacon devices in

these experiments vary in power consumption under the same configuration parame-

ters. However, all follow the same trend. Power consumption is inversely proportional

to the transmission interval and proportional to transmission power. That is, as the

transmission power increases, so does the power consumption and as the time between

18

Page 30: BLE Beacons for Proximity-Based and Location-Based Services

Figure 3.2: Monsoon Power Monitor.

transmissions increases, the power consumption decreases. All beacons tested peak at

approximately 1mW, under the worst case configuration scenarios. It should be noted

that the transmission interval has a much more significant impact on power consumption

than transmission power does.

The differences in power consumption are due to the differences in circuit design, chip

selection, and additional sensors integrated with the various beacons. The Gimbal Series

10 beacon is, in fact, the cheapest beacon of the lot and as a result, the engineering behind

power management is reflected in its results. The evolution of the Gimbal design can

be seen in the latest iteration, the Gimbal Series 22, where the power consumption has

been significantly reduced, up to ∼ 50% in some configurations. The Estimote beacon,

though much more expensive, has the most additional sensors, which results in larger

power consumption across all configurations.

Power consumption and battery capacity is a large factor when determining which bea-

cons to use in any given beacon-application. There must be well-defined requirements

that lead to an ideal selection and configuration in order to optimize performance and

network lifespan.

Some companies have tried to implement energy-harvesting techniques so that one does

not have to compromise or sacrifice BLE beacon lifespan. An example is the Cypress

solar beacon. The Cypress beacon is able to operate on any light source greater than

100 lux. It is small in size at only 25mm in diameter, and the included solar cell on

the beacon measures at 15mm x 15mm. The Cypress solar beacon includes two sensors:

temperature and humidity. The beacon is fairly configurable, though unlike many of the

19

Page 31: BLE Beacons for Proximity-Based and Location-Based Services

(a) iBKS 102 Power Consump-tion.

(b) Estimote Power Consump-tion.

(c) Kontakt Power Consumption. (d) Gimbal Series 10 Power Con-sumption.

(e) Gimbal Series 21 Power Con-sumption.

(f) Gimbal Series 22 Power Con-sumption.

Figure 3.3: Beacon Power Measurements

battery-powered beacons that configure wirelessly, it must be configured via the debug

board, shown in Fig. 3.4.

An important insight when working with the Cypress beacon is that one field in particu-

lar, the TXi, cannot be configured. This is because an onboard power management chip

governs the transmission interval based on the available light energy. At most, it will

transmit every 3 seconds, given that the light source is greater than 1000 lux. Hence,

20

Page 32: BLE Beacons for Proximity-Based and Location-Based Services

Figure 3.4: Cyalkit-E02 Debug Board.

this is a limitation when it comes to comparison with other beacons.

The TXp, however, is configurable and is capable of transmitting up to +3dBm. In

ideal indoor lighting conditions and a TXp configuration of -12dBm, the Cypress solar

beacon had an average power consumption of 0.13 mW. This is comparable to some of

the more power efficient beacon devices, such as the Gimbal Series 22 (See Fig. 3.3).

The average power consumption of any beacon device can be easily translated into a

calculable lifetime of the node. This is calculated as follows.

First, we require the load current. This can either be measured directly using the

Monsoon, or calculated as Iload = PV . Once this is determined, the lifetime in hours can

be calculated, as given in Eq. 3.1.

Lifetime (hours) =Battery Capacity(mAh)

Load Current(mA)∗ 0.70 (3.1)

Where 0.7 is a conservative gain factor used to account for external impacts like humidity

and temperature on battery life.

Overall, BLE beacons are proven to be considerably power efficient (< 1.2mW), with

small variations beacon to beacon. Compared to similar Wi-Fi based localization so-

lutions, BLE is approximately 180 times more power efficient, where average power

consumption of 216 mW has been reported [3].

3.5 Security and Privacy Concerns

The high deployment of beacons in many applications has also a number of security

issues and privacy concerns.

21

Page 33: BLE Beacons for Proximity-Based and Location-Based Services

One of the most popular applications for beacons is indoor localization. To achieve high

accuracy of localization, users need to connect with beacons in the area through their

smartphone. Most of the beacons do not have security mechanisms, however, there are

ways to minimize the security and privacy threats.

3.5.1 Security Issues

There are several security issues regarding beacons. Some are more challenging to cope

with.

• Cracking: Beacons can be placed in many locations due to their small size.

Usually, many beacons are “hidden” in different spots to cover an area. One of

the most important attacks on beacons is the physical removal of a beacon. An

attacker can remove the beacon from a wall, open it up and have straight access

to the memory and all the stored information. Information like the UUID, which

can then be used for spoofing.

A security mechanism that can alleviate this problem is the real-time monitor-

ing of the beacon and the decrease of the information that is stored inside the

beacon memory. Crucial information, such as user passwords or user preferences

should not be stored locally in the beacon while a real-time system monitors all

the beacons all the time. If an interruption of the communication between the

control system and the beacon happens, an alert should be sent to the system

administrator.

Communication with the control system and the beacon may affect the lifespan of

the beacons dramatically. Therefore, there must be a balance between monitoring

frequency and energy management.

• Spoofing: Another important security issue with beacons is known as beacon

spoofing. This is a simple technique where the user can detect and clone a beacon.

Beacons do not come with advanced encryption mechanisms. Hence, most of

the time they broadcast their ID. Someone who wants to attack the beacon and

consequently, the users connected to this beacon, can use the same ID at the same

area and create a clone beacon. With the use of the clone beacon, the attacker

can communicate with the user and gain access to important information.

22

Page 34: BLE Beacons for Proximity-Based and Location-Based Services

A technique to minimize the issue of beacon spoofing is to periodically change the

ID of the beacons. Beacons can be configured to create random IDs periodically,

hence, minimize spoofing. This approach, however, requires the user to accept a

new connection to the beacon with the new ID every time it changes.

• Piggybacking: Another important security issue is piggybacking. Piggybacking

is when an attacker listens to a beacon and captures the UUIDs, Major, and

Minor values and adds them to another application without consent. The attacker

can then clone the first application and capture crucial information from the user

without their permission.

• Hijacking: Beacons communicate without any encryption techniques. Hence, any

password or other important information that is sent to the beacon can be hijacked

by an eavesdropper. Advanced encryption mechanisms can be applied to alleviate

some of the security issues. However, this may adversely affect the lifespan of the

beacon.

3.5.2 Privacy Concerns

Privacy is important, especially when it comes to everyday object communication. The

following privacy concerns can be seen in BLE beacons.

• Static IP. Most BLE beacons have a static IP. This static IP is broadcast so every-

one in the transmission area can receive it. Hence, an attacker can mimic a trusted

beacon, by using the same trusted IP and have access to private information.

Many vendors have started research on dynamic IP assignment. This would require

extra energy that may have varying effects on the lifespan of the beacon.

• Risk of unlawful surveillance. Another important privacy concern comes from

unlawful surveillance. Most beacon applications are based on localization. Users

share their location with the beacons.

Any attack on the beacons can reveal behavioral patterns about the user. Hence

a user can be under surveillance without permission or her/his behavioral and

location patterns can be shared with unauthorized personnel.

23

Page 35: BLE Beacons for Proximity-Based and Location-Based Services

• Risk of undesired advertisement. Beacons are also often used for advertise-

ment. For personalized/targeted advertisement, information about the user can

be shared with the beacon applications. This information can be used by third

parties for further undesired advertisement.

3.6 The RSSI Technique

RSSI localization is the process of converting the observed signal strength of wireless

nodes to an estimated distance/proximity or position. Signal transmissions are trans-

mitted at a particular power and over the course of its travel, decreases in power the

farther away you are from the node. This effect is known as path loss. Signals are

broadcast and their observed power decreases with distance.

Localization and proximity estimation solutions are difficult to scale and the distribution

of such systems need to be robust, precise, and fitting to all environments. Utilizing

RSSI techniques is difficult due to non-linearities in the system. These non-linearities

can be a result of LOS obstruction, signal interference, thermal noise, and dynamic

environmental conditions. These dynamic properties are the major governing factors in

the performance of RSSI-based estimation. As such, the wireless signals broadcast by

beacons follow the log-normal shadowing path loss model (See equation 3.2).

RSSI = −10n log10(d) + C (3.2)

where n is the signal propagation loss factor specific to the wireless medium, d is the

distance (in meters) between the beacon node and the receiver, and C is a constant that

accounts for system noise.

This equation can be rearranged in the form depicted in equation 3.3 in order to calculate

the proximity distance.

d = 10C−RSSI

10n (3.3)

24

Page 36: BLE Beacons for Proximity-Based and Location-Based Services

Figure 3.5: Trilateration: Setup Overview

Thus, the closer you are, the stronger the signal and the closer the estimated proxim-

ity. The further away from the anchor node, the weaker the signal observation, and

subsequently, the further the proximity estimation.

This technique can be expanded to provide positioning, through a mathematical formu-

lation known as trilateration. Trilateration is a specific solution to the more general true

range multilateration concept using three Cartesian dimensions. It determines the po-

sition of a moving or stationary point using three separate estimated proximity ranges.

The general overview of the trilateration concept can be seen in Fig. 3.5.

In this scenario, three anchor beacons are required. Assuming we are only looking for

the 2-D (x,y) position, we can assume z is zero. Thus we can simplify the trilateration

formula, following similar formulation to [3].

r21 = x2 + y2 (3.4)

r22 = (x− u)2 + y2 (3.5)

25

Page 37: BLE Beacons for Proximity-Based and Location-Based Services

r23 = (x− vx)2 + (y − vy)2 (3.6)

Where u is the x-position of the second anchor beacon, and vx and vy is the coordinates

of the third anchor beacon. Using reduction, the solution to x and y can be found which

satisfies all three equations, thus resulting in the final position. Rearranging, the final

position (x,y) is calculated as follows.

x =r21 − r22 + u2

2u(3.7)

y =r21 − r23 + v2x + v2y

2vy− vxvy∗ x (3.8)

26

Page 38: BLE Beacons for Proximity-Based and Location-Based Services

Chapter 4

Filtering Techniques

This Chapter discusses the problems of using RSSI techniques for localization and prox-

imity estimation. Subsequently, five filtering techniques, aimed at mitigating these prob-

lems, are described.

4.1 Problem Statement

One of the critical problems inherent to RSSI techniques for proximity and distance

estimation is non-linearities in the environment affecting the observed RSSI. Dynamic

environments present changes in LOS to critical beacon devices. Without direct LOS,

the signal is severely obstructed, and so, the observed RSSI is far lower than it should

be. Furthermore, interference in the environment due to competing devices is a real

concern. BLE is a popular technology receiving rapid adoption, as such other BLE

beacon capable devices, such as smartphones may add additional BLE signals to the

environment, adding to the attenuation of the beacon signals. Beacon density also plays

a factor in the amount of interference in a given region. Lastly, it has been reported that

even the temperature and humidity affect the RSSI [4], being inversely proportional to

temperature and proportional to the humidity. This is because the temperature adds

to thermal noise and an increase in humidity adds to the absorption of the signal as it

propagates through the air. Each and every environment varies in terms of its physical

characteristics and signal noise/interference. Thus, a means to mitigate and reduce

27

Page 39: BLE Beacons for Proximity-Based and Location-Based Services

these effects are necessary in order to implement accurate LBS using RSSI. As such,

mathematical filtering is often applied to the observed RSSI values.

4.2 State Estimation Filters

4.2.1 Smoothing

The most basic and most common of filtering algorithms that can be applied to RSSI

measurements is a simple moving average (SMA). This is the running average of the

last n measurements, where n is the pre-defined width of the SMA. It is given by the

following equation;

RSSISMA =

∑ni=1 rin

(4.1)

4.2.2 Gaussian Filter

The Gaussian filter is a smoothing filter that simplifies the non-parametric nature of

the RSSI Path-loss model by approximating the RSSI densities as a one-dimensional

Gaussian distribution, eliminating overshoot of approximations resulting form outliers.

The distribution function can also be referenced in [33] and is given as;

f(ri) =1√2πσ

e−(ri−µ)

2

2σ2 (4.2)

where the mean is given as µ = 1n

∑ni=1 ri

and the standard deviation is σ =√

1n

∑ni=1(ri − µ)2.

Using multi-peak Gaussian fitting, a sequence of measured RSSI valuesR = {r1, r2, ..., rn}

can be used to approximate the true RSSI at time k by taking the sum of normally dis-

tributed (Gaussian) values in the form;

RSSI(k) =

n∑i=1

aie−( ki−bi

ci)2

(4.3)

28

Page 40: BLE Beacons for Proximity-Based and Location-Based Services

Where ai are the peak heights of the Gaussian distribution, bi are the peak positions, ci

is the full width at half max (FWHM) information.

4.2.3 Kalman Filter

The Kalman filter is a model-based rooted in the Bayesian form. It is a recursive stochas-

tic filter befitting of posterior state estimation Gaussian and linear-type systems. In the

case of RSSI measurements for localization, it can take on two forms; The first is for

one-dimensional/proximity estimation, the other for two-dimensional/position estima-

tion. For simplicity, the proximity form is given, following the work of [42], [33], and

[49].

The one-dimensional proximity estimation Kalman filter estimates a sequence of proximi-

ties over time, p(1), p(2), ..., p(k), given a sequence of noisy RSSI valuesR = {r(1), r(2), ..., r(k)}.

Where R is the time-set of RSSI observations, and p(k) is the proximity, dependent on

some sub-set of the previously obtained observations r(k) in the set R.

The estimated proximity p(k) is contingent on the RSSI observations. Thus, p(k|j) is

the estimated proximity at time k given the entire record of RSSI observations leading

up to and including R(j).

Figure 4.1: The Basic Kalman Filter Model.

There are two critical phases of the filter, prediction, and update (correction). First,

the filter makes a prediction at time k of the current state x and the system covariance

P based on the prior state. This is done before the next RSSI observation r(k) is

made. The second phase computes a gain value K based on the prior noise estimate

and then updates the posterior state and system noise estimations using the latest RSSI

observation and current gain value. A simplistic form of the filter computation can be

29

Page 41: BLE Beacons for Proximity-Based and Location-Based Services

seen in Fig. 4.1. The general form of the algorithm assumes a linear-Gaussian model

of the form;

f(x(k)|x(k − 1)) = N(Fx(k − 1), Q) (4.4)

where the posterior state given the prior is a function of the linear transition matrix F

multiplied by the prior state estimation, as well as the system covariance estimate Q.

The proximity measurements can be either static or estimated while in motion. If static,

velocity is assumed to be zero. In the case of the system matrix F we can assume an

approximate walking pace of 1m/s. So, the system matrix F is the identity matrix

with discretization period 4 of 100ms/0.1s, set by the transmission interval of the BLE

beacons, and an approximated walking pace of 1m/s.

F =

1 4

0 1

This means that F can really be represented one-dimensionally and be represented as

F = 1, where each new iteration of the filter takes place every 4 = 0.1 seconds.

The important assumption is that the posterior density f(x(k)|R(k)) is Gaussian for all

k. The filter is calculated using the following equations.

Prediction:

The prediction stage transforms the density of the prior proximity observation at time

k − 1 into a prediction at the current time k.

x̂(k|k − 1) = Fx̂(k − 1|k − 1) (4.5)

System error and noise covariance prediction at time k:

P (k|k − 1) = FP (k − 1|k − 1)F T +Q (4.6)

30

Page 42: BLE Beacons for Proximity-Based and Location-Based Services

where Q is the process noise covariance matrix. This component accounts for the distri-

bution of possible changes in state over time due to unknown environmental interference.

In the case of the static Kalman filter, Q is assumed to be zero or some constant value.

In the case of the dynamic Kalman filter, Q is dynamically recalculated every iteration.

This system is one dimensional, and thus the covariance matrix Q is just calculated as a

variance of a set of previously collected observations R(k) = {r(k), r(k−1), ..., r(k−n)}.

Q =

∑ni=1(r(k)− µ)2

n(4.7)

where n is a constant that defines the size of the set R and µ is the mean of the ob-

servations in the set. It is important to determine the optimal size of the set, so as to

balance computational load and performance.

Update (Correction):

The update step uses the closed-form solution of the standard Bayes filter. The posterior

density is calculated as f(x(k)|R(k)) = N(x̂)

Kalman gain:

K =P (k|k − 1)H

HP (k|k − 1)HT + Pr(4.8)

Where H is the constant observation matrix and Pr is the observation noise, optimized

and tuned for the environment (Often set between 2 and 4). This is a crucial tuning

parameter in the filter performance and has to be determined on an individual environ-

mental basis with experimentation.

State update at time k:

x̂(k|k) = x̂(k|k − 1) +K ∗ [r(k)−Hx̂(k|k − 1)] (4.9)

System error and noise covariance update at time k:

P (k|k) = [1−KH] ∗ P (k|k − 1)(1−KH)T +KPrKT (4.10)

31

Page 43: BLE Beacons for Proximity-Based and Location-Based Services

The Kalman filter’s light-weight computation and tenability make it useful for proximity

estimation using RSSI in noisy environments. It is limited in the fact that it still

approximates the system to be Gaussian/linear when in reality it is non-linear. However,

it has proven effective in experimentation, as seen in [5], [49], and [33].

4.2.4 Non-Parametric Information Filter

The NI filter is a Bayesian-type filter. Its design is similar to that of the Kalman filter.

However, the NI filter does not make the same Linear/Gaussian approximation of the

RSSI distributions, rather it handles non-linear and non-Gaussian conditions. The NI

filter in this experiment is modeled after the filter found in [42].

First the prediction density f(x(k)|R(k − 1)) can be described as a Gaussian density,

similar to the Kalman filter.

Prediction:

x̂(k|k − 1) = Fx̂(k − 1|k − 1) (4.11)

P (k|k − 1) = FP (k − 1|k − 1)F T +Q (4.12)

More specifically, the NI filter computes the update stage directly using a joint kernel

density estimator (KDE). This combines the contributions of the KDE memoryless es-

timator with the prediction of the dynamic model. Whereas the Kalman filter predicts

the state estimation f(x(k− 1)|R(k− 1)) to be Gaussian, the NI filter approximates the

density with a Gaussian density.

The KDE used in the NI filter is a Gaussian approximation KDE, where the KDE

requires a set of training pairs {(xi, r̄i)|i = 1, ..., N}. Variable xi is the proximity and r̄i

is the average observation RSSI at that proximity, up to N training points. The training

points are previously defined by the 14 proximity points D.

The general form of the kernel density estimate can be given as;

f̂(r|p) =1

nσr

n∑t=1

K(r − r(k)

Σr) (4.13)

32

Page 44: BLE Beacons for Proximity-Based and Location-Based Services

Where K() is a zero mean, non-negative kernel function.∑

r can be thought of as the

bin width of a histogram and acts as a smoothing parameter for the KDE. In the case

of this application model, the KDE is 1-dimensional.

For the path loss model, a Gaussian kernel is used, which can be given as;

K(ri) =1

(2π)d2 |Σ|

12

exp(−(r(k)− r̄i)T (r(k)− r̄i)2Σ

) (4.14)

Where the smoothing parameter∑

= 1, the dimension d = 1, and r̄i is the training

point (RSSI average) at proximity xi.

Given the set of RSSI observations {r(k)|k = 1, ..., N} at anchor point p, the Gaussian

kernel density estimate can now be given as;

f(x(k)|r(k)) ≈N∑i=1

ωi(r(k))K(xi) (4.15)

with the weights (ωi) calculated as;

ωi =K(ri)∑Ni=1K(ri)

(4.16)

The formulation given by equations 4.14, 4.15, and 4.16 determines the posterior distri-

bution using a Gaussian kernel estimate of a distributed set of RSSI points. This is the

defining difference between the NI filter and the Kalman filter.

The remaining portion of the spatial processing/observation step is to determine the

state estimate and observation noise based off of the weighting scheme determined from

the Gaussian KDE.

x̂r(k) =N∑i=1

ωi(r(k))xi (4.17)

Pr(k) =

N∑i=1

ωi(r(k))(Σr + (x̂r(k)− xi)(x̂r(k)− xi)T ) (4.18)

33

Page 45: BLE Beacons for Proximity-Based and Location-Based Services

Once x̂r(k) and Pr(k) are computed, the posterior state density and process noise den-

sity can be updated.

Update (Correction):

x̂r = P (k|k)(P (k|k − 1)−1x̂(k|k − 1) + P−1r x̂r(k)) (4.19)

P (k|k)−1 = P (k|k − 1)−1 + P−1r (k) (4.20)

Note that the initial conditions of the posterior state and process noise densities are set

to zero.

4.2.5 Particle Filter

The particle filter is a non-linear, Bayesian filter often used in signal processing, and is

particularly useful for noisy observations. Unlike the Gaussian or Kalman filters, it does

not make the linear-Gaussian assumption. Hence, the particle filter is well suited, since

RSSI observations using beacons is a noisy non-linear problem.

The generic particle filter algorithm is executed in five steps:

1. Generate particles

2. Prediction

3. Update particle weights

4. Resample

5. Estimate

The particle filter estimates the current state by utilizing a sequence of measurement

observations from time k0 up to and including the current observation ki. The particle

filter follows the form similar to [43]. The measurement is represented by a state sequence

{xi, i ∈ N} given by:

xi = gi(xi−1|mi−1) (4.21)

34

Page 46: BLE Beacons for Proximity-Based and Location-Based Services

where gi is a non-linear state function of the previous state xi−1 and {mi−1, i ∈ N} is

an independent, identically distributed process, representing the noise sequence.

The particle filter estimates the current state xi recursively by utilizing all measurement

observations ki up to and including time i. The computational load of each measurement

is given by:

ki = hi(xi|ni) (4.22)

where hi is a non-linear function of the current state yi and the independent measurement

noise sequence ni of the system.

Let {xj0:i, wji }Nsj=1 denote a set of random measurements to characterizes the posterior

probability density function (pdf) p(x0:i|k1:i), where {xj0:i, j = 0, ..., Ns} is the support

points set which has associated weights {wji , j = 1, ..., Ns}, and x0:i = {xn, n = 0, ..., i}

is the set of all states up to time i. The weights are all normalized at 1 and the posterior

density at i is approximately:

p(x0:i|k1:i) ≈Ns∑j=1

wji δ(x0:i − xj0:i) (4.23)

This is a discrete weighted approximation of the posterior probability. Although the

samples are chosen according to their significancy on the global density, we cannot

concentrate the samples adaptively on the high probability regions in order to obtain

variable resolution. The Particle filter takes advantage of Monte Carlo numerical inte-

gration methods to provide a recursive implementation of the Bayes filter. The weights

are chosen using importance sampling [50], and the weighted approximation density is:

p(x) ≈Ns∑i=1

wjδ(x− xj) (4.24)

where

w(xj) ∝π(xj)

q(xj)(4.25)

is the normalized weight of the jth particle.

The principle of the importance sampling is used to approximate the posterior distribu-

tion as [43]:

35

Page 47: BLE Beacons for Proximity-Based and Location-Based Services

p(xi|k1:i) ≈Ns∑j=1

wji δ(xi − xji ) (4.26)

where the weights are:

wji ∝ wji−1

p(ki|xji )p(xji |x

ji−1)

q(xji |xji−1), ki

(4.27)

Hence, the SIS algorithm consists of recursive propagation of the weights, since each

measurement is received sequentially.

36

Page 48: BLE Beacons for Proximity-Based and Location-Based Services

Chapter 5

Experiments

This Chapter aims to make clear and validate the achievable proximity estimation ac-

curacy of BLE beacons employing the RSSI technique. It will discuss and present each

set of results by first detailing the experimental setup and procedure. Subsequently, this

is followed by the necessary plots and tables, and finally a discussion on the results and

their implications.

5.1 Performance Evaluation of Beacons for Indoor Prox-

imity Estimation in Smart Buildings

This subsection details the experimental results published in the 2017 IEEE Global Sig-

nal Processing (GlobalSIP) conference, as found in “Performance Evaluation of Beacons

for Indoor Localization in Smart Buildings”[5].

5.1.1 Setup & Procedure

Beacon hardware from three popular manufacturers were used in the experiments: Esti-

mote [51], Kontakt [52], and Glimworm [53]. The measuring and calculating device was

a Google Nexus 5 running a simple Android application that utilizes the AltBeacon An-

droid library [54]. A measuring tape was used to provide accurate distance placements

in the experimental procedure.

37

Page 49: BLE Beacons for Proximity-Based and Location-Based Services

The experiments were conducted in a single 9m x 11m room (lecture hall). Minimal

obstructions were in the room aside from tables and chairs. It is important to note that

no other BLE beacons aside from the one being tested were in the room at a given time

during experimentation to avoid interference.

The complete experiment consists of five iterations. The first iteration is to obtain the

raw RSSI values and resulting distance calculations without any form of smoothing and/

or filtering. The second iteration attempts to smooth the incoming RSSI values over a

twenty-second interval, eliminating the top and bottom 10% of values. Iterations three

through five measure the incoming RSSI signals and apply a simple Kalman filter of vary-

ing Kalman values (2, 2.5, and 3). Within each iteration, 14 measurements are taken.

The beacon remains still on a table, while the smartphone moves along the table at

the following set of distances: {0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.5, 2.0, 2.5, 3.0}

meters. At each distance, the RSSI and corresponding distance is recorded. All mea-

surements are given 20 seconds to calibrate before recording.

5.1.2 Results

The results of the different beacons are shown in Fig. 5.1. In the case of all three

beacons, it can be seen that the accuracy of any given filter method tends to be closest

to the expected results within the first 1 - 1.5m. Distances greater than 1.5m show a

drastic reduction in accuracy to the expected result depicted by the red line. This is

likely a result of a weaker signal due to the increase in distance as well as the effects of

noise and interference in the environment. Among all the three beacons, the Kontakt

beacon Fig. 5.1b, under the aid of a filter, appears to perform the best at distances

greater than 1.5m. Note that the value V is a Kalman filter tuning parameter, also

referred to as the observation noise unique to the environment. This is described in

more detail in the definition of the Kalman filter as presented in Section 4.2.

The standard deviation of the average RSSI with filtering in comparison with the ex-

pected value is shown in Table 5.1. As expected, measurements obtained without any

form of filtering performed poorly. Furthermore, from these results, it can be seen that

smoothing the incoming RSSI values may not necessarily improve the accuracy, as the

standard deviation is higher in the case of Estimote and Kontakt. In addition, it can

be seen that for beacons with similar expected transmit power of -76dBm and -77dBm

38

Page 50: BLE Beacons for Proximity-Based and Location-Based Services

Distance (m)0 0.5 1 1.5 2 2.5 3

Aver

age

RSS

I (db

m)

-100

-90

-80

-70

-60

-50

-40NoFilterSmoothedV=2V=2.5V=3Expected

(a) Estimote.

Distance (m)0 0.5 1 1.5 2 2.5 3

Aver

age

RSS

I (db

m)

-100

-90

-80

-70

-60

-50

-40NoFilterSmoothedV=2V=2.5V=3Expected

(b) Kontakt.

Distance (m)0 0.5 1 1.5 2 2.5 3

Aver

age

RSS

I (db

m)

-100

-90

-80

-70

-60

-50

-40NoFilterSmoothedV=2V=2.5V=3Expected

(c) Glimworm.

Figure 5.1: Average RSSI value of the beacons under the employment of differentfiltering techniques.

at one meter, for Estimote and Kontakt respectively, the accuracy is optimal under the

same Kalman filter with a Kalman value of 2. For that value, the average error in all

the distances for Estimote and Kontakt is 0.3 and 0.19 meters respectively.

Similarly, the results show that as the transmit power increases, so does the optimal

Kalman value. This can be seen in the case of the Glimworm beacon, where the expected

transmit power at 1m is -66dBm and the corresponding optimal Kalman value is 2.5.

For this value, the average error is 0.46. Also note that non-optimal Kalman values

result in poor filter performance, and subsequently, poor beacon accuracy.

In all experiments, it was clear that each beacon performed better with the addition of

39

Page 51: BLE Beacons for Proximity-Based and Location-Based Services

Table 5.1: Performance evaluation: Standard deviation in dBm.

NoFilter Smoothed V=2 V=2.5 V=3

Estimote 6.54 7.18 4.22 5.22 4.47

Kontakt 5.79 7.09 3.76 4.25 6.46

Glimworm 5.65 5.46 4.91 3.41 5.17

a Kalman filter. From a purely accuracy based standpoint, the Glimworm beacon was

able to obtain the smallest standard deviation 5.1 with respect to the expected values.

This provides better confidence in the estimation, making it the ideal candidate of the

three for indoor proximity-based services. Note that different conditions, i.e. noise and

physical environment, may produce different results. It is under the conditions of these

experiments that the Glimworm performed adequately, but this may not be the case in

all scenarios.

5.1.3 Concluding statements

This was the first of many works that presented an experimental study of indoor prox-

imity estimation using BLE beacons. In this work, three popular beacons were tested

for their accuracy in a simple indoor environment. Further filtering was implemented

to improve the RSSI observations and thus, the beacon proximity accuracy. According

to the experimental results, filtering is necessary to improve performance. However, the

environment is also important for the selection of the proper filtering method. For the

experiments in this work, a Kalman filter seemed to improve the accuracy while also

proving to be easily implemented in a smartphone.

5.2 Enhanced Indoor Location System with Beacons and

Kalman Filters

This subsection details the experimental results published in the 2018 IEEE GlobalSIP

conference, as found in ”Enhanced Indoor Navigation System with Beacons and Kalman

Filters” [49].

40

Page 52: BLE Beacons for Proximity-Based and Location-Based Services

Figure 5.2: Beacon location system: General topology.

5.2.1 Setup & Procedure

To examine the location performance of beacons, experiments were conducted. Three

different sized topologies were examined with four beacons and a supporting Android

application was developed. The general topology is a four beacon geo-fence and can be

seen in Fig. 5.2.

In this experiment, four Gimbal Series 21 beacons [55] were used along with a Google

Nexus 5 smartphone, running Android version 6.0.1 and having Bluetooth 4.0. Each

beacon was configured to transmit every second at a power of 0 dBm. An Android

application that utilizes the AltBeacon Android library is utilized to interact with the

BLE beacons and a measuring tape was used to provide accurate distance placements

during the experiments.

The four beacons were placed in three topologies so that they created a square perimeter

with the distance to their adjacent neighbors, being 1m, 2m, and 6m respectively. The

41

Page 53: BLE Beacons for Proximity-Based and Location-Based Services

Figure 5.3: Topology 1: 1× 1 m.

smartphone was placed at four predefined spots, A, B, C, and D and communicated with

the beacons to find its location. Figure 5.2 depicts the topology used in this experiment.

The test environment was a computer laboratory room of size 7× 8 m at the University

of Guelph Richards building. There were tables, chairs, and computers that filled most

of the room.

5.2.2 Results

The experimental results for position C are shown in Fig. 5.3, Fig. 5.4 and Fig. 5.5

and the mean absolute error (MAE) is shown in Tables 5.2, 5.3, and 5.4.

According to experimental results, in the smallest topology, the accuracy is low, as shown

in Fig. 5.3. Most distance values show to be far outside of the beacon fence boundaries.

This is mainly due to the interference created by the four beacons. An interesting

insight is that although in previous research it has been reported that beacons accuracy

increases when the distance between the beacon and the device is between 1 to three

meters [43], this experiment shows that when more beacons are added in the area, the

accuracy decreases. This is primarily due to the signal interference each beacon incurs

from each other. Extrapolating from these results, it may only be feasible to implement

42

Page 54: BLE Beacons for Proximity-Based and Location-Based Services

Figure 5.4: Topology 2: 2× 2 m.

Figure 5.5: Topology 3: 6× 6 m.

region identification or resource tracking in very small indoor environments using BLE

beacons.

In order to mitigate the out of bounds positioning error, we increase the distance between

43

Page 55: BLE Beacons for Proximity-Based and Location-Based Services

Table 5.2: 1 by 1 m Fence - Mean Absolute Error (m)

Position A Position B Position C Position D Overall

No Filter 1.58 0.75 1.41 0.60 1.09

Static Kalman 0.19 0.01 0.27 0.31 0.78

Table 5.3: 2 by 2 m Fence - Mean Absolute Error (m)

Position A Position B Position C Position D Overall

No Filter 1.33 1.56 1.30 2.44 1.66

Static Kalman 0.37 0.22 0.35 0.45 0.35

Table 5.4: 6 by 6 m Fence - Mean Absolute Error (m)

Position A Position B Position C Position D Overall

No Filter 0.66 2.60 2.21 1.88 1.84

Static Kalman 2.09 2.22 0.33 0.18 1.21

the beacons, hence the three topologies. The second topology, shown in Fig. 5.4, has the

lowest average error overall. Filtering brought the distance values close to or within the

beacon fence boundaries. This clearly proves that there is a proportional relationship

between beacon separation and accuracy. Signal interference between beacons decreases

as the distance between the fixed beacon positions increases. This relationship likely has

a limit and should be explored in future research. The final topology shows very good

results for position C, as seen in Fig. 5.5. However, the overall average error is worse

due to obstacles in the environment. In the 6 × 6 m topology, unavoidable obstacles

such as desks and chairs eliminated the line of sight, hence the poor accuracy. In all

experiments, the beacons were placed on the floor. Increasing beacon elevation may

have avoided this issue.

It is clear that Kalman filter improves the system performance, as depicted in the overall

average error in Tables 5.2 - 5.4. The overall error is improved by 28.4%, 78.9%, and

34.2% for the 1m, 2m, and 6m topologies respectively. It is important to notice that

the filter is implemented on the developed Android application, hence the results are

obtained locally on the device, without the need for server communication. This allows

for a light-weight system that is easily adapted and scaled in multiple environments.

44

Page 56: BLE Beacons for Proximity-Based and Location-Based Services

5.2.3 Concluding Statements

This work explored the feasibility of BLE beacon positioning systems by implementing

a simple four beacon geo-fencing positioning model. The model explores three separate

topologies of various sizes (1 × 1 m, 2 × 2 m, and 6 × 6 m). The indoor positioning

model is developed to be fully wireless and integrated with smartphones. In addition,

a lightweight, and fully mobile, static Kalman filter was developed to improve the posi-

tioning accuracy obtained in the model.

According to experimental results, the size and locality of the geo-fence play a role in

the attainable accuracy. The addition of a static Kalman filter can improve the position

accuracy up to 78.9% in the tested environment. More specifically, the experiments

showed a relationship between signal interference and co-beacon proximity. The closer

the beacons are to each other, the greater the effects of signal interference. Hence, this

system is best implemented in larger indoor environments.

5.3 Energy Consumption and Proximity Accuracy of BLE

Beacons for Internet of Things Applications

This subsection details the experimental results published in the 2018 IEEE Global In-

formation Infrastructure and Networking Symposium (GIIS), as found in “Energy Con-

sumption and Proximity Accuracy of BLE Beacons for Internet of Things Applications”

[56].

5.3.1 Setup & Procedure

The performance of beacons can be affected by the environment. To examine the per-

formance of each beacon and the filtering techniques, two rooms of different sizes were

selected for the accuracy experiments. Room 1 – a lab room of size 5.65 x 10.30 meters

and Room 2 – a meeting room of size 4.5 x 5.0 meters. The first room is a wireless

laboratory while the second was a smaller meeting room, with beacons being the only

BLE transmitting devices in the area during the experiments. These rooms were chosen

for their difference in size, physical layout, and noise characteristics. The RSSI data is

45

Page 57: BLE Beacons for Proximity-Based and Location-Based Services

Table 5.5: Room 1: Standard deviation in m.

NoFilter KF-ST Gaussian

Estimote 0.84 0.27 0.40

Kontakt 0.60 0.28 0.41

Gimbal 0.76 0.33 0.68

Table 5.6: Room 2: Standard deviation in m.

NoFilter KF-ST Gaussian

Estimote 0.84 0.63 0.63

Kontakt 0.74 0.54 0.67

Gimbal 0.71 0.32 0.61

expected to vary between these environments, thus allowing us to compare and contrast

filter performance and distance estimation accuracy in different environments.

Each beacon is tested in the two rooms, the wireless laboratory (Room 1) and the

meeting room (Room 2) and over multiple set distances, to compare their accuracy

in a simple indoor PBS application. The rooms are selected based on their different

environmental characteristics. Each beacon undergoes three iterations of the experiment;

the first takes 12 RSSI measurements in its raw form, i.e. no additional filters, the

second takes the same 12 measurements under the employment of a static Kalman filter

(KF-ST), and the third makes use of a Gaussian filter. To measure the RSSI values,

the beacon is placed at a fixed point and the Google Nexus 5 is moved to the 12 set

distances; 0.25, 0.50, 0.75, 1.00, 1.25, 1.50, 1.75 2.00, 2.25, 2.50, 2.75, and 3.00 meters.

Similar to the energy consumption experiment, each beacon is set to have the same

transmission power of -12 dBm. Also consider that in this particular experiment, the

transmit interval is set to 300ms. The change in transmission interval is due to the fact

that if the beacons transmit only every 3 seconds, the Kalman and Gaussian filters have

little to no effect on the distance estimation because it cannot progress at a rate that

can accommodate for the dynamic changes in the noise and signal interference of the

environment.

5.3.2 Results

Figures 5.6 and 5.7 depict the distance measurement results of all 3 beacons in the two

test environments and Tables 5.5 and 5.6 detail the standard deviation of each beacon

from its expected distance values for both test environments. The translated distance

46

Page 58: BLE Beacons for Proximity-Based and Location-Based Services

estimation is calculated as the best curve fit for the receiving device’s hardware. Take

into consideration that each BLE beacon has a calibrated RSSI value that is expected

to be seen at 1m. This value is used for distance calculations, and this parameter is sent

with every packet as per the iBeacon protocol [44].

It can be seen from the graphs and tables that the KF-ST and Gaussian filters result in a

significant improvement in accuracy over the raw data. The signal noise and competing

2.4GHz channels in both testing environments appeared to have a significant effect on

accuracy. The filtered results are much closer to the true value in the first environment

as compared to the second, likely due to interference caused by the closer proximity of

the beacons to a wireless router. Additional causes for the variation in results is likely

due to the difference in environmental layout, where beacon signal interference may

have a greater impact on each other in Room 2 versus Room 1. This may also explain

the underestimation at distances greater than 1.5 meters for the Estimote and Kontakt

beacons respectively. This effect is not seen with regards to the Gimbal beacon and

may be attributed to changes in signal noise in the environment at the time of testing.

Further analysis into the noise levels of interfering signals and their effects on beacon

performance could expand on this research. Without any filtering, the beacons achieved

a standard deviation no better than 0.6m from the expected proximity, as shown in Table

5.5. An improvement of over 50% was obtained in the case of the Estimote beacon, under

the influence of the Gaussian filter, and over 67% improvement in accuracy under the

influence of the KF-ST. Both filters are a viable means of improving accuracy, but the

KF-ST shows consistent superiority over the Gaussian. This is because the Kalman filter

is tuned for the particular environment in which it is used [5], while the Gaussian filter

relies only on the standard deviation, arithmetic mean, and the current measurement to

produce an estimation of the true distance.

Testing of each filter, given the deployment environment, is needed to make an appro-

priate decision on which filter to implement. The difference in environmental layout

and noise may cause one filter to perform better than the other. Even with noise and

contention in the test environment, it is important to note that the experiment was con-

ducted with direct Line Of Sight (LOS) and no physical environmental changes. These

factors will have a large effect on the accuracy of real-world implementations, even with

the assistance of the KF-ST or Gaussian filter.

47

Page 59: BLE Beacons for Proximity-Based and Location-Based Services

5.3.3 Concluding Statements

It was shown that beacon devices can vary drastically in expected life and that scalable

and improved BLE based proximity detecting systems can be created with a combination

of parameter tuning and mobile software defined filtering algorithms. There are clear

trade-offs and trends that are observed when comparing the cost and features of each

beacon. The simpler devices with lower cost may behave sufficiently in terms of accuracy,

but fall short in terms of energy consumption, and the beacons with more sensors show

obvious increases in power consumption. If the application must be highly scalable

(i.e. large number of nodes), then beacons such as the Gimbal series 10 would optimize

the budget. For applications that require additional sensing and longer lifespan, more

expensive options such as the Estimote beacon may be the optimal choice.

48

Page 60: BLE Beacons for Proximity-Based and Location-Based Services

(a) Estimote.

(b) Kontakt.

(c) Gimbal.

Figure 5.6: Room 1: Distance estimation.

49

Page 61: BLE Beacons for Proximity-Based and Location-Based Services

(a) Estimote.

(b) Kontakt.

(c) Gimbal.

Figure 5.7: Room 2: Distance estimation.

50

Page 62: BLE Beacons for Proximity-Based and Location-Based Services

Chapter 6

Smart City Applications

In this Chapter, three IoT applications based on BLE beacons are discussed in detail.

Each smart city application relies on LBS that utilize BLE beacons.

6.1 Smart Parking

Urban planning and smart cities are popular research fields, and the availability of wire-

less technology has been the major catalyst in smart city development. As populations

grow in numbers and density, urban organization and optimization is more important

than ever, especially in regards to congestion and space optimization. Specifically, vehi-

cle parking is an aspect of urban development that could vastly benefit from the support

of a smart and cost-efficient system.

Current parking infrastructures do not provide people with a central platform, nor do

they provide real-time parking availability. Poor parking infrastructure creates a large

list of problems for the city and its people. Drivers waste a significant amount of time

searching for available parking. This causes a lot of congestion on the road, poor uti-

lization of available parking, and can even contribute to added vehicle emissions [57].

Furthermore, when the spot is found, it may not be in the most convenient location for

the driver. Another problem is that parking space efficiency may be low due to people

not knowing of the availability. This is a result of people balking or passing by poten-

tial parking due to the impression that there is no availability. Finally, although some

parking spots offer a check-in/out system to pay based on how long the spot was used,

51

Page 63: BLE Beacons for Proximity-Based and Location-Based Services

there is no universal parking system that offers the flexibility, security, and convenience

of an automated, web-based payment scheme such as the one proposed in this chapter.

Beacons can be exploited in order to implement a simple and intuitive parking system.

Beacons are used rather than utilizing alternative technologies such as Wi-Fi for three

key reasons; they are very cheap, they are small in size, and they can be placed on top of

any of the existing infrastructure with ease and without creating any interference. This

makes them a budget conscious and scalable solution that can be implemented easily in

a smart city application such as smart parking.

Here, a smart parking system based on BLE beacons is introduced. The system can

be accessed from the user’s smartphone. All parking lots that have registered with the

system would be able to provide real-time information about their available parking and

pricing. Each spot in a given lot would have a uniquely identifiable beacon. Through a

developed beacon-based Android application, users are able to locate the exact available

parking spaces nearest to them that meet their requirements. Beacons enable the guid-

ance capabilities of the system, by providing their real-time availability. Once parked,

the user is given a URL transmitted by the unique beacon of that spot. This is fa-

cilitated by Google’s Eddystone beacon protocol [45]. The Eddystone protocol is used

because it implements a specific packet type that stores an encoded URL. The closest

beacon that corresponds to their parking spot is detected using the smartphone applica-

tion. The user opens the URL displayed on their screen, delivered by the beacon and is

subsequently brought to a secure server to register their vehicle information and pay for

that spot. Once registered, a clock running at the server side of the application, keeps

track of the registration time and continuously calculates a rate until the user releases

occupancy and vacates from said spot.

The major contributions of this work are listed below:

• Particle filtering is used to improve parking spot identification accuracy. The filter

is calibrated, after a number of experiments, to meet the needs of the introduced

system.

• An Android application is designed for the proposed system. The application

collects the signals only from the beacons that are registered to the system. The

collected values are forwarded to a server for further processing.

52

Page 64: BLE Beacons for Proximity-Based and Location-Based Services

• A server application is created as the backbone of the service, providing useful

information to the user regarding the parking availability in different areas and

provide payment instruction to the user. The application also maintains useful

analytics regarding the parking duration and can also charge the user based on

the usage of the parking spot. The user is guided to the charging website, au-

tomatically without the need to type in any information regarding the parking

spot.

• Through extensive experimentation in both indoor and outdoor environments, the

efficiency of the proposed system and the advantages of the usage of a particle

filtering is demonstrated.

The idea of a smart parking system has been examined in recent years. An application

growing in popularity is the PayByPhone mobile application [58]. The application works

by prompting the user to enter the unique parking location code advertised by the specific

parking space. The user then enters the amount of time they wish to park there and

is free to add/extend their time on their phone from anywhere, provided they have a

network connection. This application is now available in select countries and cities.

Another smart parking system is proposed in [59]. This work proposes an RFID based

parking system where all users carry an RFID tag that is detected by a central node

at each lot to be able to determine the number of vehicles in the lot. A cloud-based

network allows users to reserve parking spaces and calculates a least cost metric as a

function of distance and free spaces for the user to find optimal parking. In another

study [60], a smart parking system based on resource allocation and reservations is

proposed. Utilizing smartphones for smart parking systems is also explored in [61],

where Android smartphones are programmed to facilitate an automated parking system

that requires little human interaction. [62] also proposes a cloud-based smart parking

system rooted in IoT. The system is comprised of three layers, a WSN layer that utilizes

ZigBee technology, an IoT middleware layer, and a front-end user interface layer. The

ZigBee wireless nodes are placed so that there is a node under every vehicle in the lot,

using ferromagnetic sensors to detect their presence.

The system proposed aims to reduce the time spent finding a spot, relocating the vehicle,

simplifies payment infrastructure, as well as provides people with a flexible payment

service that only charges based on exact time used. Overall, such a system could greatly

53

Page 65: BLE Beacons for Proximity-Based and Location-Based Services

Web Services

Figure 6.1: Smart Parking System Overview.

optimize the parking use in urban areas, increase competition between parking providers,

as well as provide people with a centralized and simple parking service. The novelty

of this particular system is its automated payment scheme and parking availability

estimation capabilities based on BLE beacon devices, facilitated by Google’s Eddystone

beacon protocol.

6.1.1 Proposed architecture

In this section, an overview of the smart parking system is introduced. This is followed

by a detailed description about each technology utilized, along with its functionality and

potential performance enhancements within the system environment.

54

Page 66: BLE Beacons for Proximity-Based and Location-Based Services

The smart parking system relies on three main components, utilizing a combination of

different wireless communication technologies.

1. Cloud Server

2. Smartphones

3. BLE Beacons

A system overview is shown in Fig. 6.1.

6.1.1.1 Cloud Server

The backbone of the system is the remote server and the cloud infrastructure. A re-

mote server hosts all of the parking information, providing the application with parking

spot location, availability status, associated costs, payment services, and management

services. The web services provided by the remote server keep track of all parking in-

formation, its users, provide real-time status updates, handle payment, and provide the

registered parking providers with management services for its parking authority. All the

communication between the web services and the user is over the smartphone application

on the user’s smartphone.

55

Page 67: BLE Beacons for Proximity-Based and Location-Based Services

6.1.1.2 Smartphone

The second critical component of the system relies on the use of a smartphone. There

are three features that the smartphone should be able to provide:

1. Network connectivity

2. User profile creation

3. BLE connectivity

Network connectivity is necessary for the user to go to the parking server that hosts the

payment and parking lot information. This includes the ability to locate nearby parking

spots and receive real-time availability status.

For the user profile, the application supports the ability to save vehicle and payment

information unique to the user. At the same time, the application keeps track of useful

statistics for the user, such as preferable parking spots, and provides a recommendation,

such as available parking spots close to events the user plan to attend.

The third necessary component is BLE connectivity. The majority of smartphones in

today’s market have the required hardware and capabilities to listen to and interact with

BLE devices, specifically BLE beacons. However, in case BLE is not available, the users

are able to enter the unique spot ID of each beacon.

6.1.1.3 BLE beacons

The third critical component of the proposed smart parking system is BLE beacon

devices. A beacon is placed at the side of each parking spot location, in a way that avoids

physical tampering. Each BLE beacon is configured to have a unique identifier, which

must be configured during deployment and provided to the remote server/database.

Using proximity estimation, the smartphone of any given user is able to detect the

beacon that is closest to it, giving users the ability to register their vehicle with the

corresponding parking spot.

A simple flow chart of the system can be seen in Fig. 6.2. It depicts the sequence

of events for a standard user. The user finds a parking region, finds a spot and parks,

56

Page 68: BLE Beacons for Proximity-Based and Location-Based Services

Figure 6.2: Smart Parking System flowchart.

scans for the closest beacon corresponding to their spot, obtains the URL from the

beacon and registers for the spot via a secure web server. The necessary information

is stored/tracked for parking management. When the user returns to their vehicle, all

they have to do is unregister from the spot and payment is automatically processed.

57

Page 69: BLE Beacons for Proximity-Based and Location-Based Services

6.1.2 System implementation

6.1.2.1 Server requirements & development

Servers are typically useful for remote access to databases or hosted services which

control access to said databases. The server manages all data relating to the parking

lot with an emphasis on security. This dedicated server must not be restricted by a

Wi-Fi network, meaning that the end user should have access when using mobile data.

Although one could argue a company parking lot should restrict the application to one

network, this may not always be the most convenient for the user.

At the same time, the server must be able to handle all errors gracefully. This includes

any time a user tries to take a spot already in use as well as somebody forgetting to

sign out of the spot. In terms of transaction handling, the server will collect the user’s

info and ensure that the credit card information is valid. If a transaction cannot be

made, the server notifies the user as soon as possible and the spot will be considered

illegally parked until the user is able to pay the fee or the spot is vacated. The server

is not responsible for handling illegally parked vehicles. It will only be able to alert the

appropriate people to the situation.

6.1.2.2 Mobile application

For the smart parking system, the application should be able to support cloud connec-

tivity, user profiling, payment services, and a simple user interface. In the introduced

system, the mobile application is developed in Android OS. Specifically, the application

is developed for a Google Nexus 5 running Android 6.0.1. The application is comprised

of five main activities:

1. Locating nearby parking

2. Profiling user and vehicle information

3. Setting up the payment information

4. Parking registration capabilities

5. Find my car capabilities

58

Page 70: BLE Beacons for Proximity-Based and Location-Based Services

(a) Smart ParkingMenu Screen.

(b) Smart ParkingUser Info Screen.

(c) Smart Parking- Parking Spot Scan

Screen.

Figure 6.3: Developed mobile application for the system.

Three of the activities are shown in Fig. 6.3. A simple menu bar allows the user

to switch between activities, as seen in Fig. 6.3a. In Fig. 6.3b, it is shown what

a possible user/vehicle information screen would look like. The user can scan for the

beacon, and its associated spot, after hitting the radar floating action button as seen

in Fig. 6.3c. The payment information is another activity, where the user can set up

a payment method. The last activity is “Find my car”, in which the application shows

the user the path between the smartphone location and the last registered parking spot.

When discovering and registering for a specific spot, a simple graphic is displayed to the

user, as shown in Fig. 6.4a, that depicts the parking lot in Fig. 6.4b, and where the

X represents unavailable spots, while the check mark represents the spot registered to

your car, while the rest of the spots are available.

In addition to the application development and services, the smartphone should be

able to interact with beacons and access this information within the smart parking

application. Hence, the mobile application turns on the Bluetooth at the smartphone to

listen to nearby beacons. The application displays and utilizes only the nearest beacons

corresponding to the desired spot, which are registered within the smart parking system

and not any nearby BLE device.

59

Page 71: BLE Beacons for Proximity-Based and Location-Based Services

(a) Smart Parking Availabil-ity Screen.

(b) Parking lot.

Figure 6.4: Parking lot for experimentation.

(a) Gimbal Series21.

(b) BLE beacon at the parking spot.

Figure 6.5: BLE beacons used for the smart parking system.

6.1.2.3 BLE beacons

Gimbal Series 21 beacons, shown in Fig. 6.5a, are used and deployed at the parking lot,

as shown in Fig. 6.5b. Series 21 operates on 4 AA batteries which make the battery

life superior to common button cell powered beacons. It has dimensions of 86 mm x 77

mm x 25 mm. It is configured to implement Google’s Eddystone protocol [45].

Series 21 was specifically chosen due to its wide availability, extended lifespan over other

beacon models, and simple configuration/management software. Beacon devices are

not able to receive any information from the user smartphone, they only periodically

transmit a unique ID. This drastically reduces the privacy concerns with users, likely

leading to wide user acceptance.

60

Page 72: BLE Beacons for Proximity-Based and Location-Based Services

6.1.3 Wireless communication

The different components communicate wirelessly, between the smartphone and the BLE

beacons as well as the smartphone and the server.

6.1.3.1 Beacons & Google’s Eddystone

BLE beacons are capable of implementing their own transmission protocol, but, in the

case of the smart parking system, we implemented Google’s Eddystone beacon standard.

Google’s Eddystone protocol was introduced in 2015. It defines 4 frame types: UID,

URL, TLM, EID.

• UID packet transmits the unique identifiers. It can be used to identify a unique

region and parking spot. In reference to Fig. 6.4a, the UID contains data that

identifies the specific lot, section (A or B), and unique spaces (1 through 5).

• URL packet broadcasts a compressed URL that can be used by the receiving client.

• TLM packet allows for the transfer of any telemetry/sensor data.

• The EID frame which is a time-varying packet structure that provides added se-

curity [45].

Due to Eddystone’s pre-defined URL packet configuration, Eddystone is the best choice

for implementing the parking application.

To reduce interference among beacons and increase the lifespan of the proposed smart

parking system, the transmission power and interval should be set relatively low and

verified that the configuration is optimal after experimentation at each deployment en-

vironment.

6.1.3.2 Cloud communication

A remote server is used to simulate and manage many aspects of the system. This

cloud-based implementation is communicated with the client Android application using

a simple Transmission Control Protocol (TCP) connection over either LTE or Wi-Fi.

61

Page 73: BLE Beacons for Proximity-Based and Location-Based Services

When a user has found a spot and corresponding Bluetooth beacon, they may check

the status of the spot by passing the beacon information back to the server to confirm

the availability and view the cost. Afterward, they may choose to register to that spot

by clicking on the URL packet that is given to them, which will link the user to the

parking space and automatically pass their profile and payment information to a secure

server. All time tracking relating to the total cost is calculated via the server to ensure

an accurate measurement. Once unregistered, the calculated cost is then charged to the

user via credit card.

A screen-shot of the server running is shown in Fig. 6.6. When the server script starts, a

list of available spots is displayed. An event in the system shows the type and an updated

list of spots which separates those available and unavailable. The list of occupied spots

has all the user information for each spot, making it easy for any lot manager to keep

track of users.

6.1.4 Parking availability estimation

When a car approaches an available parking spot, the smartphone starts receiving signals

and resulting RSSI values from the beacons around the parking spot. To improve the

accuracy of these signals, smoothing and particle filtering on the observed RSSI signals

are applied, as defined in Chapter 4.

6.1.4.1 Particle filtering implementation

The particle filter designed for this experiment is only concerned with one dimension,

hence the proximity distance measurements. Thus, the particles generated incorporate

only a single state, which is the distance in meters as a function of RSSI.

The parameters of the experiments are only concerned with measurements between 0

and 4 meters. So, the particles generated are random values between the intervals of 0

and 4. All particles are initialized to have equivalent weights (probabilities) 1/N , where

N is the number of particles. The prediction step is supposed to alter the particle state

by some form of control input. This would be equivalent to user movement towards and

away from a particular BLE beacon. Since the experiments are only concerned with

62

Page 74: BLE Beacons for Proximity-Based and Location-Based Services

building a path loss model with static proximity measurements, the prediction step is

left out of the algorithm.

The next step is to update the weights corresponding to all of the particles. This is done

by computing how close each particle is to the current measurement value. Particles

which are closer to the measured value receive a larger weighting. The weight update is

computed as a 1-dimensional Gaussian fit that accounts for measurement error.

First the absolute difference each particle is to the current measurement computed and

squared:

xj = |pj − zi|2 (6.1)

where xj is the relative closeness the particle is to the measurement, with j ranging from

1 to N .

Then, a gain factor is computed based on a Gaussian distribution that updates the

effective weight of that particle:

kj = e

−0.5∗xjn2i (6.2)

weightsj = weightsj ∗ kj (6.3)

where kj is the calculated gain factor and it is a function of xj and the measurement

noise ni.

This will give larger weights to those values that are closer to the actual measurement.

Finally, the weights are all normalized about 1. A measurement error of 1.2 m was found

to be optimal for this environment, as determined by iterative trials of the particle filter.

After the weights are normalized, the probability density of the particle set is updated

by the newly calculated weights.

This is followed by resampling. The particle filter suffers from degeneracy phenomenon,

since after a few iterations of the algorithm, all the particles are assigned negligible

weights, except for one [63]. This effect can be reduced by the choice of importance

sampling function and resampling. During resampling, improbable or unfit particles are

discarded in favor of new, more probable particles. The multinomial resampling method,

described by Algorithm 1, is used. Resampling is not conducted in every iteration of the

63

Page 75: BLE Beacons for Proximity-Based and Location-Based Services

Algorithm 1: Multinomial Resampling

Result: Updated particles and weights arrays1 if Neff < N/2 then2 Get cumulative sum array of particle weights3 Generate array (length of weights) of uniform random numbers between 0 and 14 Sort the cumulative sum by the random number array5 Find the indices of the weights that match6 Update the particles by replacing the unfit ones with new better fitting values7 Update the weights of the new particles to be once again equal

8 else9 Continue

particle filter loop. Only when the particle filter degenerates, i.e. the number of useful

particles falls below a threshold, is the resampling step executed. In order to determine

when to resample, the number of effective particles is calculated as the inverse sum of

squares of all the weights, shown below:

Neff =1∑

weigths2(6.4)

When this value falls below N ∗ β, where beta is a scaling factor between 0 and 1, then

the resampling procedure is executed.

Finally, the filter can estimate the new state by calculating a discrete weighted approx-

imation, i.e. the weighted mean by:

wmean =

∑weights ∗ particles∑

weights(6.5)

It can also give a confidence to the state estimation, calculating the weighted standard

deviation of all the particles:

wstd =

√∑ni=1weightsi ∗ (particlesi − µ)2

(N ′−1)N ′ ∗

∑ni=1weightsi

(6.6)

where µ is the mean of the weights and N ′ is the number of non-zero weights.

A β value of 0.5 was found to be optimal for this experiment, with the 1000 particles.

This number was determined through iterative trials, shown in the following section.

64

Page 76: BLE Beacons for Proximity-Based and Location-Based Services

Figure 6.6: Server Screen.

6.1.5 Experimental Procedure and Results

In this section, the experimental procedure is presented followed by the description of

each experiment and a discussion on the results.

6.1.5.1 Experimental Procedure

In order to evaluate the performance of the introduced systems, three experiments were

conducted:

• Path loss model experiment, to build the path loss model for each of the envi-

ronments. The path loss experiment conducted before the other two experiments.

• Distance estimation experiment, to calculate the accuracy and the precision

of the BLE beacons in each environment.

• Proximity identification experiment, to examine the performance of the BLE

beacons in terms of proximity estimation when they are used in a smart parking

scenario.

All the experiments took place in two parking environments, one indoor and one outdoor.

Each beacon was placed at a base reference point, which was the central base of the

65

Page 77: BLE Beacons for Proximity-Based and Location-Based Services

(a) Indoor environment. (b) Outdoor environment.

Figure 6.7: Best curve fitting for RSSI values at distances from 0.2 to 4 meters (a)at the indoor and (b) at the outdoor parking.

desired parking spot. The beacons are first configured to have a transmission power of 0

dBm and a transmission interval of 1 second for the purposes of the experiments. A lower

transmission power or transmission interval is directly proportional to the lifespan of the

device. The 0 dBm transmission power is set in order to achieve high accuracy, while

the transmission interval is decided after experimentation, in order to obtain enough

data points over time to perform the filtering.

6.1.5.2 Path Loss Model

In order to be able to implement a more accurate distance estimation and proximity

identification system, using RSSI techniques with BLE beacons and smartphones, a

path loss model was developed. One the path loss model is obtained, it can be used

to characterize efficiently the behavior of the RSSI at different distances in the specific

environment. Using a path loss model that reflects the characteristics of the environment

can improve the estimation accuracy of the system.

To obtain the path loss model for each environment, one BLE beacon was placed in a

fixed position and RSSI measurements were taken on a user device over a period of 5

minutes. During the experiment, people and other objects could move freely between

the beacon and the smartphone, creating a combination of Line Of Sight (LOS) and

Non-Line-Of-Sight (NLOS) measurements. This approach was followed to build a real-

istic path loss model. The distance between the BLE beacon and the smartphone was

20cm and it was increased after every interval by 20cm, up to and including 4m, for

66

Page 78: BLE Beacons for Proximity-Based and Location-Based Services

ParticlesDistance (m)

0.5 1 1.5 2Error MSE σ Error MSE σ Error MSE σ Error MSE σ

200 0.304 0.092 0.075 0.531 0.282 0.111 0.363 0.132 0.115 0.685 0.470 0.098400 0.312 0.097 0.099 0.528 0.279 0.088 0.353 0.125 0.112 0.700 0.490 0.091600 0.287 0.082 0.095 0.528 0.278 0.089 0.699 0.489 0.1015 0.707 0.5 0.089800 0.309 0.096 0.088 0.540 0.292 0.090 0.361 0.130 0.106 0.702 0.493 0.0981000 0.278 0.077 0.082 0.516 0.266 0.086 0.337 0.113 0.122 0.684 0.469 0.0901200 0.298 0.089 0.096 0.526 0.277 0.094 0.357 0.128 0.112 0.702 0.493 0.0911400 0.31 0.096 0.1 0.534 0.285 0.097 0.346 0.120 0.098 0.697 0.486 0.0941600 0.287 0.082 0.094 0.520 0.271 0.087 0.344 0.118 0.109 0.702 0.493 0.0991800 0.282 0.08 0.099 0.528 0.279 0.093 0.354 0.125 0.098 0.708 0.501 0.0912000 0.292 0.086 0.0919 0.532 0.283 0.091 0.340 0.115 0.106 0.691 0.478 0.098

ParticlesDistance (m)

2.5 3 3.5 4Error MSE σ Error MSE σ Error MSE σ Error MSE σ

200 1.476 2.180 0.019 0.909 0.828 0.022 0.973 0.947 0.099 0.735 0.540 0.049400 1.478 2.185 0.021 0.943 0.89 0.041 0.994 0.989 0.084 0.614 0.377 0.054600 1.483 2.201 0.014 0.957 0.916 0.032 0.960 0.923 0.087 0.656 0.431 0.067800 1.473 2.170 0.020 0.952 0.907 0.041 0.992 0.985 0.097 0.770 0.593 0.0331000 1.481 2.194 0.016 0.959 0.921 0.035 0.972 0.946 0.098 0.622 0.387 0.0811200 1.481 2.195 0.017 0.952 0.907 0.043 0.988 0.976 0.114 0.803 0.645 0.0321400 1.480 2.191 0.019 0.957 0.916 0.043 0.981 0.963 0.089 0.640 0.410 0.0911600 1.478 2.186 0.015 0.951 0.906 0.041 0.990 0.980 0.095 0.689 0.475 0.0611800 1.482 2.196 0.018 0.960 0.923 0.040 0.980 0.961 0.096 0.797 0.635 0.0302000 1.484 2.204 0.015 0.964 0.929 0.037 0.967 0.935 0.102 0.763 0.582 0.038

Table 6.1: Experimental error based results for different number of particles at theindoor environment.

both environments. The average RSSI along with the standard deviation for each fixed

position is shown in Fig. 6.7.

The average RSSI value can be used to calculate the distance between the beacon and

the device, through the log-normal shadowing model [64].

Next, knowing this relationship, Matlab’s curve fitting function was used, to estimate a

curve for distance versus RSSI and to solve for the n and C variables.

The curve fit line for each environment is shown in Fig. 6.7. As a result, the path loss

factor n is calculated to be n = 2.424 with 95% confidence bound between (2.058, 2.79)

for the indoor environment, shown in Fig. 6.7a, and n = 2.049 with 95% confidence

bound between (1.581, 2.517) for the outdoor parking lot, shown in Fig. 6.7b. This

is expected, as the free space path loss exponent is known to be 2 [65]. Similarly, C

is calculated to be C = −65.24 with 95% confidence bound between (-66.74, -63.74)

67

Page 79: BLE Beacons for Proximity-Based and Location-Based Services

and C = −88.78 with 95% confidence bound between (-90.7, -86.87), for the indoor and

outdoor environments, respectively.

In rearranging the path loss formula, we can estimate the distance using the equation

(As defined in Chapter 1):

d = 10C−RSSI

10 n (6.7)

Substituting values we get:

RSSIindoor = −10× 2.424× log10(d)− 65.24 (6.8)

d = 1065.24+RSSIindoor

−24.24 (6.9)

for the indoor environment, while:

RSSIoutdoor = −10× 2.049× log10(d)− 88.78 (6.10)

d = 1088.78+RSSIoutdoor

−20.49 (6.11)

for the outdoor environment.

The BLE beacon packet contains the suggested C parameter, equals to −62, which is the

factory-calibrated, read-only constant and indicates the expected RSSI at a distance of 1

meter from the beacon. With respect to the outdoor environment, this value is far from

the expected. This may be attributed to the more dynamic outdoor environment com-

pared to indoors. In any case, it is clear that calibration and path loss experimentation

is necessary before the system is deployed.

6.1.5.3 Distance Estimation

Once the path loss model was developed, the distance estimation experiment took place.

In this experiment, the smartphone is placed at 8 locations from the beacon; 0.5 cm, 1

m, 1.5 m, 2 m, 2.5 cm, 3 m, 3.5 m, and 4 m. In each location, the smartphone collected

68

Page 80: BLE Beacons for Proximity-Based and Location-Based Services

(a) Indoor distance estimation. (b) Outdoor distance estimation.

Figure 6.8: Distance estimation at the two environments.

data for approximately 2 minutes, while the experiment was repeated three times in

each environment.

The main limitation of the particle filter relates to its computational complexity. To

find the optimal number of particles, we varied the number from 200 up to 2000, using

an increment of 200 particles. We did not increase the number of particles more, due

to smartphone energy and processing constraints. The error in meters, the MSE, and

the standard deviation are shown in Table 6.1. The optimum performance for the first

2 meters is obtained with 1000 particles, while after the 2 meters the error is too high.

For the outdoor environment, the results are similar, hence, 1000 particles were selected

as the optimal number.

The distance estimation results are shown in Fig. 6.8, with the indoor results in Fig.

6.8a and the outdoor in Fig. 6.8b. The solid line depicts the true distance while the

averaged and particle filtered measurements are shown as single points and stars with

error bars respectively.

It is clear that the distance estimation is more accurate within 2 meters of the beacon

than the distance estimations after 2 meters. Also, note that the error bars of the particle

filtered results are almost unnoticeable. This is due to the fact that the particle filter

employs a weighted standard deviation calculation rather than the traditional standard

deviation, so, extreme outliers have little influence on the final value and its confidence.

Overall, the particle filter only shows marginal improvement over the standard averaged

data. This is because it is reliant on relatively accurate measurements to be able to

69

Page 81: BLE Beacons for Proximity-Based and Location-Based Services

converge to the true value. If most of the measurements at a particular distance are

wrong, the particle filter fails at estimating the true distance. However, it is better than

the use of raw data.

The cumulative error for each environment is shown in Fig. 6.9. For the indoor

environment, the error is less than 2.5 meters, for 95% of the time, when raw data are

used, while the usage of particle filter reduces the error to 1.5 meters, for 95% of the

time, as shown in Fig. 6.9a. Similarly, for the outdoor environment, the error with the

raw data is 2.8 meters for 95% of the time, while it drops to 2 meters, for 95% of the

time, when particle filter is used, shown in Fig. 6.9b. According to the experimental

results, the use of a particle filter can reduce the estimation error by almost 1 meter in

both environments.

The important insight to be gained from this experiment is that there may be reason-

able accuracy in locating a vehicle/spot via BLE beacon, with increasing accuracy and

confidence as one approaches the desired location. This is the base of the guidance

capabilities proposed in this system. This experiment also sets the conditions for the

following third experiment.

6.1.5.4 Proximity Identification

This experiment includes the use of three beacons and three associated parking spaces,

as shown in Fig. 6.10. Each parking space is given a unique beacon, named A, B,

and C. The smartphone collected RSSI values for approximately five minutes, always in

straight live with beacon B, but at different distances. The experiment was repeated

three times both indoor and outdoor under different conditions, such as the number of

cars/people around as well as weather conditions, for the outdoor experiment. The goal

of this experiment is to determine the maximum distance between the beacons as well

as the maximum distance between the beacon and the smartphone, in order for the user

to accurately register their vehicle to the desired parking space. This is a critical aspect

of the system functionality, since the driver should be able to register the car to the

correct parking spot.

Before testing this in an outdoor parking lot, the introduced system is first tested in-

doors in order to take advantage of the consistent test environment as well as verify

70

Page 82: BLE Beacons for Proximity-Based and Location-Based Services

(a) CDF for indoor distance estimation.

(b) CDF for outdoor distance estimation.

Figure 6.9: Cumulative probability error for distance estimation.

71

Page 83: BLE Beacons for Proximity-Based and Location-Based Services

(a) Indoor experiment layout.

(b) Parking lot experiment.

Figure 6.10: Proximity identification experiment layout.

experimental feasibility. The layout of the indoor experiment is shown in Fig. 6.10a.

All RSSI estimates from all the three beacons are recorded over a five minute period.

From this data, the average RSSI and particle filtered RSSI values are calculated. The

greater the RSSI, the closer the smartphone is to the beacon. Based on Pythagorean

theorem, the true distance from the smartphone to B will always be closer than to bea-

cons A and C. Hence, the desired result is to have a greater RSSI reading from beacon

B, and an equivalent but lower RSSI reading from beacons A and C. In this way, beacon

B and its associated spot is chosen, meaning the identification prediction is correct.

Following the results of the second experiment, we know that the beacon distance esti-

mation is only consistently accurate within the first 2 meters. As such, we expect correct

predictions within this distance. First, the smartphone is placed at five positions from

72

Page 84: BLE Beacons for Proximity-Based and Location-Based Services

X(m) Y(m)Raw Data Particle Filter

A B C Accuracy (%) A B C Accuracy (%)

0.5 0 109 31 77.8 0 111 29 79.21 1 72 20 77.4 0 83 10 89.2

1.5 44 97 0 68.7 9 132 0 93.62 26 18 40 21.4 38 0 46 0

1

2.5 20 1 115 0.7 0 0 136 0

0.5 0 115 2 98.2 0 107 10 91.41 1 53 35 59.5 0 76 13 85.3

1.5 0 66 1 98.5 0 64 3 95.52 26 41 8 54.6 0 75 0 100

1.5

2.5 65 3 2 42.8 70 0 0 0

0.5 0 116 0 100 0 116 0 1001 0 79 5 94 0 84 0 100

1.5 0 48 70 40.6 0 118 0 1002 9 91 3 88.3 0 103 0 100

2

2.5 1 1 112 0.8 0 0 114 0

0.5 0 121 1 99.1 0 122 0 1001 41 30 24 31.5 1 94 0 98.9

1.5 2 123 0 98.4 0 125 0 1002 1 120 2 97.5 0 123 0 100

2.5

2.5 28 0 93 0 0 0 121 0

0.5 0 120 0 100 0 120 0 1001 28 77 5 70 28 82 0 74.5

1.5 0 88 35 71.5 0 123 0 1002 17 57 2 75 5 71 0 93.4

3

2.5 0 19 101 15.8 0 0 120 0

Table 6.2: Smart Parking: Indoor Prediction Results.

X(m) Y(m)Raw Data Particle Filter

A B C Accuracy (%) A B C Accuracy (%)

0.5 0 128 0 100 0 128 0 1001 0 126 0 100 0 126 0 100

1.5 2 146 17 88.4 0 165 0 1002 2 79 12 84.9 0 93 0 100

2.7

2.5 31 129 1 80.1 18 141 2 87.5

Table 6.3: Smart Parking: Outdoor Prediction Results.

BLE beacon B. These distances are described by Y , where Y = {0.5 m, 1.0 m, 1.5 m,

2.0 m, 2.5 m}. The distance among the three beacons is described by X, where X =

{1.0 m, 1.5 m, 2.0 m, 2.5 m, 3.0 m}. This is done in order to verify how robust and

consistent the system performs.

A summarized table of the prediction results, for the indoor experiment, is shown in

73

Page 85: BLE Beacons for Proximity-Based and Location-Based Services

Table 6.2. In general, are the distance between the beacons increases, the accuracy of

the system increases as well. The further away nearby beacons are, the less interference

and fewer mistakes they can create to the proposed system. Comparing the raw data

and the particle filter data, the particle filter improves system performance. There are

only two instances, when the distance between the beacons is 1.5 meters, that the raw

data provide higher accuracy than the filtered data, however, the accuracy of the filtered

data is also high. Another interesting insight is that when the accuracy of the raw data

is really poor, the particle filter has no accuracy at all. This is expected based on the

way particle filters work.

Within the same distance between the beacons, as the smartphone is moving further

away from the beacon up to 2 meters, the accuracy is great. After the 2 meters, the

performance is bad, as it was expected from the previous experiment. When the smart-

phone is too close to the beacon, within 0.5 meters or 1.5 meters away, which is an

acceptable distance for the proposed system, the performance of the system is excellent.

Overall, when the distance between the beacons in greater or equal to 2 meters and the

particle filter is used, the system has almost perfect accuracy no matter how close the

user is from the beacon.

The results for the outdoor experiment are shown in Table 6.3. Unlike the indoor

experiments, there is only one value for beacon separation, X = 2.7 m, since the parking

spaces have a pre-defined width, and the beacons are placed in the middle of each parking

spot. Since the distance between the nearby beacons is high, both approaches have high

accuracy. In comparison, particle filtered data provide better accuracy for the parking

system. For up to two meters distance between the smartphone and the beacon, the

accuracy of the system is perfect.

It is interesting to mention that, in both environments, when the accuracy of the system

is perfect, mean that the system is accurate even after the first few seconds, approx-

imately 10 seconds, the user stays in the parking spot. That implies, that it is not

necessary for the user to stay for five minutes to get the correct estimation. The five

minutes bound was selected only for experimentation purposes. However, for the particle

filter to work, a few samples are necessary.

74

Page 86: BLE Beacons for Proximity-Based and Location-Based Services

6.1.6 Discussion

The first experiment is a necessary component of designing the smart parking system.

Every environment is different and the measured RSSI of the beacons will change dras-

tically between them, hence, a path loss model should be designed before deploying the

system in a given environment. This helps in the appropriate beacon configuration in

order to obtain optimal distance estimation. As more path loss models are built, we can

learn more about system performance and make better tweaks to model parameters,

especially the particle filter.

In the distance measurement experiments, it was shown that the most accurate mea-

surements are within the first 2 meters, with increasing accuracy the closer the user gets

to them.

A key aspect of the system is being able to push the correct unique URL, via Eddystone

protocol, to the user. The URL brings the user to a secure web server to pay/register

for their unique parking spot. For this to be successful, the user must remain in their

parking spot and should be within 2 meters of the beacon that is associated with their

spot, as shown in the third experiment.

Finally, the placement of the beacon is critical. It should be placed at the back-center of

the spot, but it may also be suitable to place the beacon in the middle of the spot, under

the ground. All experiments proved that this was successful in this particular test envi-

ronment. Assuming a good path loss model is developed for alternative environments,

similar results should be expected.

This system was able to exploit BLE beacon technology in order to optimize urban

parking infrastructure. This was done by building an RSSI path loss model for the

desired parking region, and then implementing the RSSI-based distance estimation on

the smartphone in order to provide guidance to the user. Accuracy improvements were

made with the implementation of a particle filter. The application is also integrated with

cloud-based management services. According to the experimental results, the system

has sufficient accuracy in terms of parking estimation availability.

75

Page 87: BLE Beacons for Proximity-Based and Location-Based Services

6.2 Energy-Wise Bike-Share Asset Tracking

There is an increased focus on environmental sustainability in all aspects of life, es-

pecially with respect to transportation and technology as it pertains to carbon/ fuel

emissions and overall energy consumption. A push towards better public transportation

infrastructure limits the number of individual vehicles on the road but still often requires

the consumption of fossil fuels, whether it be a train, subway car, or bus. New technolog-

ical advancements have begun to bring electric cars to the average consumer, which cuts

down drastically on carbon emissions. However, the batteries that are used to power

any electric vehicle are still harmful to the environment. The research in [66] reports

that in 2018, 28.2% of greenhouse gas (GHG) emissions were from the electricity sector,

and that electric vehicles in 2017 cause a minimum of 67.12 gCO2eq/km up to 149.21

gCO2eq/km of GHG emissions. A 2018 study [67], finds that electric vehicles have a

mean life cycle GHG emission of 316 gCO2eq/km. Even with vast improvements, this

has a significant negative impact on the environment, and falls short of current climate

policies, such as ClimPol [68].

Besides walking, biking remains to be one of the best transportation alternatives that

impose extremely little environmental impact. Bicycles may not be appropriate for par-

ticularly long travel distances but are extremely advantageous in urban environments.

This advantage has been realized in the private sector, where public bike-sharing vendors

capitalize on providing easily accessible bike transportation to environmentally consci-

entious people who live in dense populations.

These vendors, such as Bike Share Toronto [69], are required to keep track of and

maintain their bicycle assets in order to remain operational. Hence, this work proposes

an energy-wise tracking system that utilizes the combination of Bluetooth Low Energy

(BLE) beacon and Long Range (LoRa) technologies to provide real-time asset tracking

and inventory management for bike-sharing providers.

BLE beacons are chosen over other alternatives such as RFID tags because BLE trans-

missions can be detected within a few meters proximity, up to approximately 50 meters

depending on the line of sight (LOS). Beacons are also very cheap and can be scaled

76

Page 88: BLE Beacons for Proximity-Based and Location-Based Services

easily. LoRa is a low power wireless technology designed for longer range communica-

tion. It achieves ranges up to 10km by transmitting over the unlicensed 915MHz band

(or 816MHz if in Europe) [70].

The proposed tracking system requires that each bicycle asset is assigned a BLE bea-

con device with a UUID, which is then capable of transmitting this information to a

base station at any designated bike-sharing drop-off/pick-up location. The base station

can identify nearby assets and estimate their respective proximity’s using RSSI. The

base stations implement LoRa wireless technology and are capable of transmitting asset

information between them as well as to a final server for off-site management.

Most BLE beacon devices operate using batteries, often coin cell. So, in pursuance of

preserving the minimal environmental impact of bicycle transportation, a battery-less

model is proposed. In order to realize a battery-less implementation, a small portion of

the power produced from the bicycle user is extracted from the moving bicycle wheel

using a simple dynamo-type dc motor. There is sufficient research proving that these

devices can power many low-power devices, such as LED lights for added rider safety.

The research in [71] reports that they provide a consistent power level of 3W at 6V,

which is far greater than what BLE beacons require for operation.

6.2.1 Related Research

Bike-sharing is growing all over the world, and so, research that promotes further im-

provement grows along with it. There is a number of works with regards to bike-share

models optimization, energy consumption, and smart management. In [72], the authors

present a system that better identifies which electric bicycles have enough charge to ac-

commodate the user’s route by estimating energy expenditure along the desired course.

They achieve this by utilizing a mobile platform backed by cloud services. The research

presented in [73] proposes a two-level clustering algorithm to forecast the number of rents

or returns to each station cluster in order to re-balance the distribution of bicycle assets

at each station. The prediction model showed superiority over other common prediction

models like K-Nearest Neighbors (KNN), validating the model with data from the bike-

sharing system in New York City. The works of [74] are similarly motivated, in that

they develop a model to better allocate bike fleets and maximize the time between re-

allocations. They do this by presenting two mathematical programming models. In [75],

77

Page 89: BLE Beacons for Proximity-Based and Location-Based Services

a clustering algorithm based on common flow is proposed in order to better allocate bike

resources at particular stations based on usage/route flow. Preliminary analysis shows

some level of effectiveness in the model. Finally, a proposal for a microcontroller and

BLE-based system for detecting bike theft and providing localization capabilities for a

public bike-share system can be found in [76]. Here, a hub-type dynamo generator is

proposed for energy harvesting. However, there are no tests indicating the location or

power extraction feasibility, demonstrating that there is a need for further development.

While a lot of research has been conducted in predictive models and smart management

systems, little research seems to present itself with regards to a simple means of bicycle

asset tracking, especially with an emphasis on energy conservation and sustainability.

With regards to this gap, this work proposes a sustainable and battery-less localization

model for bike-sharing asset tracking in urban environments. This is a continuation and

expansion on previous work of ours [56]. This work proposes a specific application based

on similar research and incorporates new wireless technologies, fusing BLE and LoRa

wireless networking.

6.2.2 System Architecture

This section describes the communication technologies and hardware used in the pro-

posed implementation of the bike-share tracking system. Specifically, the unique BLE

beacons assigned to each bicycle, the power generation module and the LoRa transceiver

base stations are described in terms of their function, power requirements, wireless tech-

nology standards, and cost.

6.2.2.1 System Framework

The overall system framework is shown in Fig. 6.11. Bicycle users may travel as they

please, while a portion of their pedaling power is utilized to power the BLE beacons

which broadcast their UUIDs. When approaching any LoRa base station, the UUID of

the bicycle will be read and recorded by the base station in order to keep a real-time

inventory of the system asset’s location. Using RSSI techniques the base station has an

approximate estimation of the proximity of the bike to the base station. Lastly, each

base station may participate in node hopping, transmitting information between each

78

Page 90: BLE Beacons for Proximity-Based and Location-Based Services

Figure 6.11: System Framework

other using LoRa, in order to pass critical asset information to the network for inventory

and asset localization purposes.

6.2.2.2 Communication Infrastructure

BLE beacons are assigned to each unique bicycle asset, using the standard iBeacon

protocol to broadcast their UUIDs to nearby base station receivers. In order to maintain

inventory across base stations of a bike-share tracking system over a large region, an

alternative technology also needs to be employed on top of the BLE positioning. Hence,

LoRa technology.

LoRa (Long Range) is an unrestricted wireless technology that operates at various fre-

quencies depending on the region: 868 MHz for Europe and 915 MHz for North America

[70]. Regardless of region, the main advantage of using sub-gigahertz frequencies is the

long transmission range. LoRa is capable of reaching distances of approximately 10

km [26]. This characteristic makes LoRa-type base stations ideal receivers for the pro-

posed bike-share tracking system so that multiple stations in an urban region are able to

communicate with each other. The disadvantage of LoRa is that determining the true

79

Page 91: BLE Beacons for Proximity-Based and Location-Based Services

(a) Dragino Shield v1.3 [79]. (b) Gimbal Series 10 Beacon [55].

Figure 6.12: Proximity identification experiment layout.

location using RSSI techniques produces poor results when compared to alternatives like

Bluetooth, hence the use of BLE beacons.

6.2.2.3 Hardware

The following experiments utilize the Gimbal series 10 beacon, shown in Fig. 6.12b,

chosen for its very low cost, $5 USD, and very small form factor (40mm x 28mm x

5.5mm) [55].

LoRa transceivers are less common than BLE beacons and require more power, however,

the long transmission distance makes them ideal for communication between bike storage

stations in an urban region. It is also critical for the base station to be compatible with

BLE reception in order to track which bicycle assets are stored at any given time. In

this case, a Bluno Uno Bluetooth 4.0 microcontroller [77] and Dragino LoRa Shield [78]

are chosen, shown in Fig. 6.12a. Both modules have a small form factor and integrate

with each other.

6.2.2.4 Power Generation

The energy-wise characteristic of the proposed tracking system is that the beacons are

battery-less and rely solely on green energy generated from the bicycle in use. There are

a number of options that convert the rotational energy of a bicycle’s tire into electrical

80

Page 92: BLE Beacons for Proximity-Based and Location-Based Services

Table 6.4: Bicycle Power Generator Comparison

Alternator Dynamo-Bottle Dynamo-Hub

Advantages Very high output power

Simple installationAttach to any BicycleLow cost>300g [80]

No slippageBetter power outputthan bottle type

DisadvantagesLarge/Heavy>4kg [81]Large resistance/load

Tire wearSlip if wet

Heavier and more expensivethan bottle-type>800g [82]Non-universal installation

energy. The two main categories are dynamo type motors, which use commutator plates,

and alternators. [71] does an in-depth analysis of the power generation capabilities of

such devices. The authors report a power generation of up to 300W with the use of

an alternator, assuming a high level of physical fitness. However, alternators are large,

heavy, and vastly increase the load on the bicycle operator. The dynamo type devices

still generate approximately 3W at 6V, have little to no noticeable impact on user effort,

and are much more compact and lighter in weight. There are two sub-categories of such

devices. There are bottle-type dynamo generators that use the friction of the tire to

spin the armature of the DC motor, and hub-based motors which have the DC motor

built into the hub of the wheel, thus generating energy directly from the rotation of the

wheel. The advantages and disadvantages of all designs are further detailed in Table

6.4.

6.2.3 Experimental Procedure & Methodology

In order to validate the functionality and support feasibility of the proposed system,

preliminary power and proximity accuracy measurements had to be taken. Here, the

power requirements of BLE beacons and LoRa transceivers are measured. Furthermore,

the estimated proximity using RSSI techniques and BLE beacons are conducted.

6.2.3.1 Measuring Power Consumption

In order to verify that the dynamo motors can consistently power the BLE beacons, a

Monsoon power monitor [48] was used to measure the power consumption of four BLE

beacon devices available on today’s market. Specifically, a Gimbal series 10 [55], Kontakt

[52], Estimote [51], and BlueCat beacon [83]. Each was configured with a transmission

81

Page 93: BLE Beacons for Proximity-Based and Location-Based Services

Figure 6.13: Dragino Shield and Arduino Node

power of -12 dBm and a transmission interval of 3 seconds. -12 dBm was chosen due to

the fact that the beacons only need to transmit short distances (i.e. only need to be seen

when close to a base station). The power consumption was monitored for 3 minutes,

and the average value recorded.

The Dragino LoRa shield acts as a transmitter and receiver and has to transmit over

greater distances. The Dragino shield was set up along with the Arduino (see Fig. 6.13)

and set to have a transmission power of 20 dBm and a transmission interval of every 3

seconds, similar to the BLE beacons. It should be noted that the LoRa base stations

are assumed to have a wired power source and do not require any batteries to operate.

6.2.4 Proximity Estimation

First, a path-loss model was created that models the environment in which the beacons

are deployed. The path-loss model delineates the non-linear and non-parametric nature

of RSSI signals in a dynamic environment. The path-loss model and subsequent distance

estimations were carried out in an outdoor parking lot at the University of Guelph in

order to simulate an outdoor environment in which a bicycle station may be located. In

this experiment, the proposed Gimbal beacons are used. The beacon retains the same

configurations set for the power experiments. All RSSI data was collected using a Google

Nexus 5 smartphone running Android 6.0.1.

82

Page 94: BLE Beacons for Proximity-Based and Location-Based Services

Figure 6.14: BLE Beacon Power Consumption.

The path-loss model is built by constructing a set of RSSI measurements at 20 distinct

distances d = {0.2, 0.4, 0.6, 0.8, 1.0, ..., 2.0m}.

6.2.5 Preliminary Results

6.2.5.1 Power Consumption Results

Fig. 6.14 depicts the power consumption of four popular beacon devices. All beacons

have an average power consumption under 0.4mW, which is 7500 times less than what the

bicycle dynamo motors are capable of producing. This leaves ample room for mechanical

and electrical energy losses within the system and allows the beacons to operate under

low rider effort. The Gimbal beacon has the highest power consumption of 0.38mW,

which is likely a result of simple circuit design and leakage that is associated with the

very low cost. Next was the BlueCat at 0.31mW, the Estimote at 0.21mW, and the

Kontakt beacon at 0.07mW. All beacon devices vary in circuit design, power source,

and additional sensing capabilities. Hence the variation in power consumption.

The Dragino LoRa shield/Arduino combination required significantly more power than

the BLE beacons at 92.37mW. It should also be noted that this still falls under the

threshold for available power produced by the dynamo generator.

83

Page 95: BLE Beacons for Proximity-Based and Location-Based Services

Figure 6.15: Bike-Share Path-loss Model

6.2.5.2 Proximity Estimation Results

Fig. 6.15 depicts the RSSI values at each distance and the best curve fit line that models

the environment. The best curve fit line applies the function defined by equation 1 to

the RSSI data set collected for that particular environment. It finds the optimal n

and C values to best fit this function to the data-set. Here, the propagation path-

loss factor n was found to be 2.049, and the system noise C to be -88.78 dBm. With

this information the distance estimation experiments could be conducted, the results of

which are depicted in Fig. 6.16. The solid line depicts the expected distance, while

each proximity measurement and its deviation are shown with circles and error bars.

The best accuracy is achieved when the BLE transmitter is within a 2m proximity of

the receiving node. In this particular experiment, the error consistently lies within 2m

at any point for all measurements in the data-set, which falls directly in line with the

results found in similar literature, like [56].

6.2.6 Discussion & Analysis

6.2.6.1 Power Consumption Implications

The power consumption results indicate that BLE beacons are perfectly suited for an

energy-wise application that does not need to rely on battery power and can instead be

powered by alternative methods. In particular, bicycle power generation is a feasible

84

Page 96: BLE Beacons for Proximity-Based and Location-Based Services

Figure 6.16: Bike-Share Proximity Estimations

solution. It should also be noted that due to the extremely low power requirements of

BLE beacons and the available power generation of simple dynamo generators, other

devices can be powered simultaneously, such as LED lights for rider safety.

The Gimbal series 10 beacon, although the highest power consumer, is likely the best

option of the four beacons due to its low cost, making it cost effective for large scale

applications.

It was also confirmed that the Dragino LoRa transceivers require less than the available

power generation of the dynamo motor. However, the Dragino shields are larger in size

and thus, harder to conceal. Furthermore, they are more expensive than Gimbal BLE

beacons. In addition, more complex weather-proofing measures would also need to be

implemented in order to ensure long term operation of the device in varying conditions.

Lastly, LoRa transceivers are known to produce proximity estimation with greater error

than BLE at close proximities [3].

Alternative energy harvesting techniques, such as solar and wireless power transfer are

potential extensions for future work. Solar power is a proven and viable power source

for BLE beacon technology, as used in the Cypress solar beacon and studied in [84] and

[85].

85

Page 97: BLE Beacons for Proximity-Based and Location-Based Services

6.2.6.2 Proximity Estimation Accuracy

The proximity accuracy of the BLE beacons was consistently estimated to be within 2

meters of the true value. This is sufficient for the application context of this system,

where the base stations only need an approximate location of each unique bicycle asset in

order to maintain a robust real-time inventory. Further steps could be taken to improve

the proximity accuracy, such as implementing a particle filter to better eliminate outliers

produce better estimation performance.

Additional data filtering techniques, such as a particle filter for improved proximity

accuracy will also be considered for future work. Overall, the system proved to be feasible

and operates with little environmental impact, even at large scale implementations.

6.3 Environmental Audio Collection

There is a lot of potential for various Smart City applications, particularly in urban

regions. One problem that many urban regions face is acoustic noise pollution. Many

wireless devices do not have the necessary battery life to support long term observations

with no maintenance. Hence, the potential use of beacons. Aside from pure localization

and tracking-based applications, additional sensors integrated into each beacon can be

exploited for unique means. In particular, the microphone is a very useful sensor that

is also included in the TI SensorTag [86].

6.3.1 Application Overview

The proposed application utilizes the SensorTag microphone in order to collect audio

data for processing. Specifically, the audio level and dominant frequency is calculated

and transmitted to a receiver, which then forwards this data, along with positioning

information to a central cloud server. This data can be utilized to create a heat-map of

a regions audio levels, with minor classification of sound, without intruding on peoples

privacy. Such data can be utilized for home realty, to get an understanding of a neigh-

borhood’s average noise levels, for noise pollution isolation sought out by municipalities,

and much more.

86

Page 98: BLE Beacons for Proximity-Based and Location-Based Services

Figure 6.17: Smart Cities: Audio Collection Framework.

The overall system framework can be seen in Fig. 6.17. Each beacon is assigned a loca-

tion (latitude and longitude), it transmits this location data along with the audio level

and dominant frequency. The audio level is calculated by calibrating the microphone

with a decibel meter. A number of points are taken at various audio levels and a calibra-

tion curve is made that translates the analog voltage magnitude into a decibel reading.

The dominant frequency is calculated by computing the fast Fourier transform (FFT).

The FFT computes the discrete Fourier transform (DFT) of a sequence. This converts

the signal in the time domain to the frequency domain. The DFT is defined as per

Eqn. 6.12. In order to get sufficient frequency granularity, a 2048 point FFT is taken.

Then the maximum magnitude across all frequency bins is found and its corresponding

frequency is returned.

Xk =

N−1∑n=0

xne−2πkn/N (6.12)

Where xn is a complex number in the time domain and N is the sample/FFT size.

Once the wireless BLE receiver records a packet with all the necessary information, it

is pushed to the cloud server and stored in a database. From here, a mobile application

designed for Android devices is able to connect with the server and create a useful user

interface (UI) with the data. The main screen of the developed application can be seen

in Fig. 6.18.

87

Page 99: BLE Beacons for Proximity-Based and Location-Based Services

6.3.2 Application User Interface

The application screen provides many useful features. First, the user is able to see a heat

map of the audio levels local to their current location. Circles are drawn at each recorded

location. The circles increase in opacity the higher the decibel level. The application

provides a simple classification of the audio with respect to dominant frequency. If

the recorded dominant frequency is below the threshold, the circle is red, above the

threshold it is blue. This distinguishes to what the human ear may perceive as low or

high-frequency sounds. Furthermore, the user is able to move a slider to choose which

audio levels are presented to them, giving the user control over what audio levels they

are interested in seeing on the map. Same goes for audio classification, high, low, or all

frequencies. Lastly, the user is able to navigate the map by pinching to zoom, scrolling

with their fingers to pan, or enter in a specific location into the latitude and longitude

fields provided.

6.3.3 Immediate Stakeholders and Potential Applications

Aside from noise pollution isolation, there are a number of stakeholders that could

benefit from such a system. Landlords and building managers can utilize this system

on a small scale in order to isolate potential noise problems on their property. If the

level of privacy is reduced and audio information is sent to the server for further signal

processing, classification models can be implemented. This opens up the breadth of

possible applications. For example, emergency services may be able to isolate car crashes

and shootings as they happen, improving the response time of emergency workers.

6.3.4 Concluding Statements and Future Directions

Audio sensing applications are a new field of study that has benefited vastly from low

power sensing devices and wireless technologies. Beacons are just one of the possible

devices that can help realize such audio collection systems. As security mechanisms

improve and user acceptance increases, the number of useful applications may increase.

Advanced classification models can be applied to audio data to provide more useful

information. This information has the potential to help emergency services in most

88

Page 100: BLE Beacons for Proximity-Based and Location-Based Services

environments. Future work should look at classification improvements, power consump-

tion improvements, and perhaps most importantly, privacy and security enhancements.

Without the assurance of high security, public perception may prevent such applications

from being implemented.

89

Page 101: BLE Beacons for Proximity-Based and Location-Based Services

Figure 6.18: Smart Cities: Audio Collection App UI.

90

Page 102: BLE Beacons for Proximity-Based and Location-Based Services

Chapter 7

Conclusions

This thesis introduced BLE beacon proximity and location-based services using RSSI.

Eleven beacons were characterized. The power consumption and localization accuracy

were investigated. Multiple published studies were presented in order to validate the fea-

sibility and effectiveness of using beacons for location-based IoT applications. Three spe-

cific applications were also introduced; Smart Parking, Energy-Wise Bike-Share Track-

ing, and Localized Environmental Audio Collection. The proposed systems described in

these applications are also published in various IEEE proceedings.

BLE beacons are a cheap and scalable means of providing indoor positioning, resource/as-

set tracking, and location discovery. It was shown that beacon devices can vary drasti-

cally in expected life and that scalable and improved BLE based positioning systems can

be created with a combination of parameter tuning and mobile software defined filtering

algorithms.

Under the employment of additional filters, such as the SMA, Gaussian, Kalman, parti-

cle, and NI filters presented in this work, it appears to be a feasible and effective solution

in many indoor environments. Multiple experiments were conducted in terms of energy

efficiency and proximity accuracy for multiple popular BLE beacon devices.

BLE beacons are proving to be very versatile devices, with a growing number of available

devices on the market. They are rooted in localization and proximity-based application

services. This work in this thesis consistently demonstrates localization and proximity

accuracy within 2 meters, beating GPS. Beacons also have the advantage of being utilized

indoors and can be highly scalable due to their small size and low cost. Their low power

91

Page 103: BLE Beacons for Proximity-Based and Location-Based Services

consumption, sub-1mW, also means that a deployed network lifetime can last months,

even years.

The future of BLE beacons is promising. The addition of various sensors means that the

possible applications are virtually limitless. However, more work should be conducted

regarding RSSI accuracy enhancements in especially noisy environments. Additionally,

security and privacy concerns should be addressed and clearly communicated to the

public in order to promote accelerated user acceptance.

7.1 Future Work

Future work will involve the implementation of machine learning estimation techniques,

such as K-NN, and comparing the results to those presented in this thesis. The effects of

beacon interference should also be investigated further. Future research should look at

changing the altitude/elevation of beacon placement and observing the effects it has on

the accuracy in various positioning systems. A variety of other beacon devices should

also be tested in an attempt to develop a more complete model and characterization

of BLE beacon devices available on the market. Lastly, future work could include ex-

tending the capabilities of the proximity and location systems presented to implement

orientation estimation using sensor fusion, exploiting the many sensors included in to-

day’s smartphones.

92

Page 104: BLE Beacons for Proximity-Based and Location-Based Services

Bibliography

[1] F. Zafari, I. Papapanagiotou, and K. Christidis. Microlocation for internet-of-

things-equipped smart buildings. IEEE Internet of Things Journal, 3(1):96–112,

Feb. 2016. ISSN 2327-4662. doi: 10.1109/JIOT.2015.2442956.

[2] P. Spachos, I. Papapanagiotou, and K. N. Plataniotis. Microlocation for smart

buildings in the era of the internet of things: A survey of technologies, techniques,

and approaches. IEEE Signal Processing Magazine, 35(5):140–152, Sept. 2018. ISSN

1053-5888. doi: 10.1109/MSP.2018.2846804.

[3] S. Sadowski and P. Spachos. Rssi-based indoor localization with the internet of

things. IEEE Access, 6:30149–30161, 2018. ISSN 2169-3536. doi: 10.1109/ACCESS.

2018.2843325.

[4] Amir Guidara, Ghofrane Fersi, Faouzi Derbel, and Maher Ben Jemaa. Impacts

of temperature and humidity variations on rssi in indoor wireless sensor net-

works. Procedia Computer Science, 126:1072 – 1081, 2018. ISSN 1877-0509. doi:

https://doi.org/10.1016/j.procs.2018.08.044. URL http://www.sciencedirect.

com/science/article/pii/S187705091831322X. Knowledge-Based and Intelli-

gent Information & Engineering Systems: Proceedings of the 22nd International

Conference, KES-2018, Belgrade, Serbia.

[5] A. Mackey and P. Spachos. Performance evaluation of beacons for indoor localiza-

tion in smart buildings. In 2017 IEEE Global Conference on Signal and Information

Processing (GlobalSIP), Nov. 2017.

[6] K. H. Chang. Bluetooth: a viable solution for iot? [industry perspectives]. IEEE

Wireless Communications, 21(6):6–7, December 2014. ISSN 1536-1284. doi: 10.

1109/MWC.2014.7000963.

93

Page 105: BLE Beacons for Proximity-Based and Location-Based Services

[7] S. Alletto, R. Cucchiara, G. Del Fiore, L. Mainetti, V. Mighali, L. Patrono, and

G. Serra. An indoor location-aware system for an iot-based smart museum. IEEE

Internet of Things Journal, 3(2):244–253, April 2016. ISSN 2327-4662. doi: 10.

1109/JIOT.2015.2506258.

[8] A. F. Harris III, V. Khanna, G. Tuncay, R. Want, and R. Kravets. Bluetooth low

energy in dense iot environments. IEEE Communications Magazine, 54(12):30–36,

December 2016. ISSN 0163-6804. doi: 10.1109/MCOM.2016.1600546CM.

[9] C. Gomez, I. Demirkol, and J. Paradells. Modeling the maximum throughput of

bluetooth low energy in an error-prone link. IEEE Communications Letters, 15(11):

1187–1189, Nov. 2011. ISSN 1089-7798. doi: 10.1109/LCOMM.2011.092011.111314.

[10] Veronique Rhys Evans. Beacons on track to hit 400m deployed by 2020 reports

unacast, 26, January 2016. URL http://www.businesswire.com/news/home/

20160126005779/en/Beacons-Track-Hit-400M-Deployed-2020-Reports.

[11] Sarah Parez. Target launches beacon test in 50 stores, will expand nation-

wide later this year, Aug 5 2015. URL https://techcrunch.com/2015/08/05/

target-launches-beacon-test-in-50-stores-with-expanded-rollout-later-this-year.

[12] Markets and Markets. Location-based services (lbs) and real-time location systems

(rtls) market by location type (indoor and outdoor), software (geocoding and re-

verse geocoding, location and predictive analytics), hardware, service, vertical, and

region - global forecast to 2023, 2019. URL https://www.marketsandmarkets.

com/Market-Reports/location-based-service-market-96994431.html.

[13] A. Akinsiku and D. Jadav. Beasmart: A beacon enabled smarter workplace. In

NOMS 2016 - 2016 IEEE/IFIP Network Operations and Management Symposium,

pages 1269–1272, April 2016. doi: 10.1109/NOMS.2016.7503001.

[14] S. Bobek, O. Grodzki, and G. J. Nalepa. Indoor microlocation with ble beacons

and incremental rule learning. In 2015 IEEE 2nd International Conference on

Cybernetics (CYBCONF), pages 91–96, June 2015. doi: 10.1109/CYBConf.2015.

7175912.

94

Page 106: BLE Beacons for Proximity-Based and Location-Based Services

[15] Chenhao Liu, Peng Zhao, Kaigui Bian, Tong Zhao, and Yan Wei. The detection

of physical attacks against ibeacon transmitters. In 2016 IEEE/ACM 24th Inter-

national Symposium on Quality of Service (IWQoS), pages 1–10, June 2016. doi:

10.1109/IWQoS.2016.7590453.

[16] F. Zafari, I. Papapanagiotou, M. Devetsikiotis, and T. J. Hacker. Enhancing

the accuracy of ibeacons for indoor proximity-based services. In 2017 IEEE In-

ternational Conference on Communications (ICC), pages 1–7, May 2017. doi:

10.1109/ICC.2017.7996508.

[17] S. Mascetti, C. Bettini, D. Freni, X. S. Wang, and S. Jajodia. Privacy-aware

proximity based services. In 2009 Tenth International Conference on Mobile Data

Management: Systems, Services and Middleware, pages 31–40, May 2009. doi:

10.1109/MDM.2009.14.

[18] D. Freni. Privacy-preserving techniques for proximity based lbs. In 2009 Tenth In-

ternational Conference on Mobile Data Management: Systems, Services and Mid-

dleware, pages 387–388, May 2009. doi: 10.1109/MDM.2009.68.

[19] Fadi Al-Turjman. 5g-enabled devices and smart-spaces in social-iot: An overview.

Future Generation Computer Systems, 2017. ISSN 0167-739X. doi: https:

//doi.org/10.1016/j.future.2017.11.035. URL http://www.sciencedirect.com/

science/article/pii/S0167739X17311962.

[20] T. Wu, L. K. Chen, and Y. Hong. A vision-based indoor positioning method with

high accuracy and efficiency based on self-optimized-ordered visual vocabulary. In

2016 IEEE/ION Position, Location and Navigation Symposium (PLANS), pages

48–56, April 2016. doi: 10.1109/PLANS.2016.7479682.

[21] J. Kim and H. Jun. Vision-based location positioning using augmented reality for

indoor navigation. IEEE Transactions on Consumer Electronics, 54(3):954–962,

August 2008. ISSN 0098-3063. doi: 10.1109/TCE.2008.4637573.

[22] K. Kaemarungsi and P. Krishnamurthy. Properties of indoor received signal

strength for wlan location fingerprinting. In The First Annual International Con-

ference on Mobile and Ubiquitous Systems: Networking and Services, 2004. MO-

BIQUITOUS 2004., pages 14–23, Aug 2004. doi: 10.1109/MOBIQ.2004.1331706.

95

Page 107: BLE Beacons for Proximity-Based and Location-Based Services

[23] G. D. Putra, A. R. Pratama, A. Lazovik, and M. Aiello. Comparison of energy con-

sumption in wi-fi and bluetooth communication in a smart building. In 2017 IEEE

7th Annual Computing and Communication Workshop and Conference (CCWC),

pages 1–6, Jan 2017. doi: 10.1109/CCWC.2017.7868425.

[24] Y. Zhuang, L. Hua, L. Qi, J. Yang, P. Cao, Y. Cao, Y. Wu, J. Thompson, and

H. Haas. A survey of positioning systems using visible led lights. IEEE Commu-

nications Surveys Tutorials, 20(3):1963–1988, thirdquarter 2018. ISSN 1553-877X.

doi: 10.1109/COMST.2018.2806558.

[25] J. Sanchez-Gomez, R. Sanchez-Iborra, and A. Skarmeta. Transmission technologies

comparison for iot communications in smart-cities. In GLOBECOM 2017 - 2017

IEEE Global Communications Conference, pages 1–6, Dec 2017. doi: 10.1109/

GLOCOM.2017.8254530.

[26] Ramon Sanchez-Iborra, Jesus Sanchez-Gomez, Juan Ballesta-Vias, Maria-Dolores

Cano, and Antonio F. Skarmeta. Performance evaluation of lora considering scenario

conditions. Sensors, 18(3), 2018. ISSN 1424-8220. doi: 10.3390/s18030772. URL

http://www.mdpi.com/1424-8220/18/3/772.

[27] A. Mackey and P. Spachos. Lora-based localization system for emergency services

in gps-less environments. In IEEE International Conference on Computer Commu-

nications (INFOCOM ) 2019, May 2019.

[28] K. Lam, C. Cheung, and W. Lee. Lora-based localization systems for noisy outdoor

environment. In 2017 IEEE 13th International Conference on Wireless and Mobile

Computing, Networking and Communications (WiMob), pages 278–284, Oct 2017.

doi: 10.1109/WiMOB.2017.8115843.

[29] J. Niu, B. Wang, L. Shu, T. Q. Duong, and Y. Chen. Zil: An energy-efficient indoor

localization system using zigbee radio to detect wifi fingerprints. IEEE Journal on

Selected Areas in Communications, 33(7):1431–1442, July 2015. ISSN 0733-8716.

doi: 10.1109/JSAC.2015.2430171.

[30] M. H. Habaebi, R. O. Khamis, A. Zyoud, and M. R. Islam. Rss based localization

techniques for zigbee wireless sensor network. In 2014 International Conference on

Computer and Communication Engineering, pages 72–75, Sep. 2014. doi: 10.1109/

ICCCE.2014.32.

96

Page 108: BLE Beacons for Proximity-Based and Location-Based Services

[31] E. Hatem, B. El-Hassan, J. Laheurte, S. Abou-Chakra, E. Colin, and C. Marechal.

Study the estimated distance error in indoor localization using uhf-rfid. In 2018

IEEE Middle East and North Africa Communications Conference (MENACOMM),

pages 1–5, April 2018. doi: 10.1109/MENACOMM.2018.8371026.

[32] B. Ben-Moshe, A. Dvir, H. Levi, and P. Shamil. Indoor positioning using time

of flight fingerprinting of ultrasonic signals. In 2013 International Conference on

Indoor Positioning and Indoor Navigation (IPIN), pages 1–6, Oct 2013.

[33] Kaibi Zhang, Yangchuan Zhang, and Subo Wan. Research of rssi indoor ranging

algorithm based on gaussian - kalman linear filtering. In 2016 IEEE Advanced In-

formation Management, Communicates, Electronic and Automation Control Con-

ference (IMCEC), pages 1628–1632, Oct. 2016. doi: 10.1109/IMCEC.2016.7867493.

[34] M. Kaczmarek, J. Ruminski, and A. Bujnowski. Accuracy analysis of the rssi ble

sensortag signal for indoor localization purposes. In 2016 Federated Conference

on Computer Science and Information Systems (FedCSIS), pages 1413–1416, Sept.

2016.

[35] A. Ozer and E. John. Improving the accuracy of bluetooth low energy indoor posi-

tioning system using kalman filtering. In 2016 International Conference on Compu-

tational Science and Computational Intelligence (CSCI), pages 180–185, Dec. 2016.

doi: 10.1109/CSCI.2016.0041.

[36] R. Faragher and R. Harle. Location fingerprinting with bluetooth low energy bea-

cons. IEEE Journal on Selected Areas in Communications, 33(11):2418–2428, Nov

2015. ISSN 0733-8716. doi: 10.1109/JSAC.2015.2430281.

[37] P. C. Ng, J. She, and S. Park. High resolution beacon-based proximity detection

for dense deployment. IEEE Transactions on Mobile Computing, 17(6):1369–1382,

June 2018. ISSN 1536-1233. doi: 10.1109/TMC.2017.2759734.

[38] R. K. Yadav, B. Bhattarai, H. Gang, and J. Pyun. Trusted k nearest bayesian

estimation for indoor positioning system. IEEE Access, 7:51484–51498, 2019. ISSN

2169-3536. doi: 10.1109/ACCESS.2019.2910314.

[39] Z. Chen, Q. Zhu, H. Jiang, and Y. C. Soh. Indoor localization using smartphone

sensors and ibeacons. In 2015 IEEE 10th Conference on Industrial Electronics

97

Page 109: BLE Beacons for Proximity-Based and Location-Based Services

and Applications (ICIEA), pages 1723–1728, June 2015. doi: 10.1109/ICIEA.2015.

7334389.

[40] M. S. Aman, H. Jiang, C. Quint, K. Yelamarthi, and A. Abdelgawad. Reliability

evaluation of ibeacon for micro-localization. In 2016 IEEE 7th Annual Ubiquitous

Computing, Electronics Mobile Communication Conference (UEMCON), pages 1–5,

Oct. 2016. doi: 10.1109/UEMCON.2016.7777904.

[41] L. Yang, Q. Wang, and G. Wang. Positioning in an indoor environment based on

ibeacons. In 2016 IEEE International Conference on Information and Automation

(ICIA), pages 894–899, Aug. 2016. doi: 10.1109/ICInfA.2016.7831945.

[42] Azadeh Kushki, Konstantinos N. Plataniotis, and Anastasios N. Venetsanopoulos.

WLAN Positioning Systems: Principles and Applications in Location-Based Ser-

vices. Cambridge University Press, New York, NY, USA, 2012. ISBN 0521191858,

9780521191852.

[43] F. Zafari and I. Papapanagiotou. Enhancing ibeacon based micro-location with par-

ticle filtering. In 2015 IEEE Global Communications Conference (GLOBECOM),

pages 1–7, Dec. 2015. doi: 10.1109/GLOCOM.2015.7417504.

[44] Apple. Getting started with ibeacon, June 2 2014. URL https://developer.

apple.com/ibeacon/Getting-Started-with-iBeacon.pdf.

[45] Google. Google eddystone format, July 5 2017. URL https://developers.

google.com/beacons/eddystone.

[46] M. Collotta and G. Pau. A novel energy management approach for smart homes

using bluetooth low energy. IEEE Journal on Selected Areas in Communications,

33(12):2988–2996, Dec 2015. ISSN 0733-8716. doi: 10.1109/JSAC.2015.2481203.

[47] . Morin, M. Maman, R. Guizzetti, and A. Duda. Comparison of the device lifetime

in wireless networks for the internet of things. IEEE Access, 5:7097–7114, 2017.

ISSN 2169-3536. doi: 10.1109/ACCESS.2017.2688279.

[48] Monsoon solutions. URL https://www.msoon.com/LabEquipment/

PowerMonitor/.

[49] A. Mackey, P. Spachos, and K. N. Plataniotis. Enhanced indoor navigation

system with beacons and kalman filters. In 2018 IEEE Global Conference on

98

Page 110: BLE Beacons for Proximity-Based and Location-Based Services

Signal and Information Processing (GlobalSIP), pages 947–950, Nov 2018. doi:

10.1109/GlobalSIP.2018.8646581.

[50] Niclas Bergman. Recursive bayesian estimation: Navigation and tracking applica-

tions. Technical report, 1999.

[51] Estimote. URL https://estimote.com/.

[52] Kontakt. URL https://kontakt.io/.

[53] Glimworm. URL https://glimwormbeacons.com/.

[54] David G. Young. Altbeacon, 2016. URL https://github.com/AltBeacon/

android-beacon-library.

[55] Gimbal. URL https://store.gimbal.com/products/s22.

[56] A. Mackey and P. Spachos. Energy consumption and proximity accuracy of ble

beacons for internet of things applications. In Global Information Infrastructure

and Networking Symposium (GIIS) 2018, Oct 2018.

[57] C. Tsiaras, L. Hobi, F. Hofstetter, S. Liniger, and B. Stiller. parkitsmart: Min-

imization of cruising for parking. In 2015 24th International Conference on

Computer Communication and Networks (ICCCN), pages 1–8, Aug 2015. doi:

10.1109/ICCCN.2015.7288448.

[58] Volkswagen Financial Services AG. Paybyphone, July 18 2018. URL https://www.

paybyphone.com/.

[59] T. N. Pham, M. Tsai, D. B. Nguyen, C. Dow, and D. Deng. A cloud-based smart-

parking system based on internet-of-things technologies. IEEE Access, 3:1581–1591,

2015. ISSN 2169-3536. doi: 10.1109/ACCESS.2015.2477299.

[60] Y. Geng and C. G. Cassandras. New smart parking system based on resource allo-

cation and reservations. IEEE Transactions on Intelligent Transportation Systems,

14(3):1129–1139, Sept 2013. ISSN 1524-9050. doi: 10.1109/TITS.2013.2252428.

[61] D. J. Bonde, R. S. Shende, A. S. Kedari, K. S. Gaikwad, and A. U. Bhokre. Au-

tomated car parking system commanded by android application. In 2014 Interna-

tional Conference on Computer Communication and Informatics, pages 1–4, Jan

2014. doi: 10.1109/ICCCI.2014.6921729.

99

Page 111: BLE Beacons for Proximity-Based and Location-Based Services

[62] Z. Suryady, G. R. Sinniah, S. Haseeb, M. T. Siddique, and M. F. M. Ezani. Rapid

development of smart parking system with cloud-based platforms. In The 5th In-

ternational Conference on Information and Communication Technology for The

Muslim World (ICT4M), pages 1–6, Nov 2014. doi: 10.1109/ICT4M.2014.7020616.

[63] Arnaud Doucet, Simon Godsill, and Christophe Andrieu. On sequential monte

carlo sampling methods for bayesian filtering. Statistics and Computing, 10(3):

197–208, Jul 2000. ISSN 1573-1375. doi: 10.1023/A:1008935410038. URL https:

//doi.org/10.1023/A:1008935410038.

[64] P. Kumar, L. Reddy, and S. Varma. Distance measurement and error estimation

scheme for rssi based localization in wireless sensor networks. In 2009 Fifth Inter-

national Conference on Wireless Communication and Sensor Networks (WCSN),

pages 1–4, Dec 2009. doi: 10.1109/WCSN.2009.5434802.

[65] J. Miranda, R. Abrishambaf, T. Gomes, P. Gonalves, J. Cabral, A. Tavares, and

J. Monteiro. Path loss exponent analysis in wireless sensor networks: Experimental

evaluation. In 2013 11th IEEE International Conference on Industrial Informatics

(INDIN), pages 54–58, July 2013. doi: 10.1109/INDIN.2013.6622857.

[66] Hyunhong Choi, Jungwoo Shin, and JongRoul Woo. Effect of electricity genera-

tion mix on battery electric vehicle adoption and its environmental impact. En-

ergy Policy, 121:13 – 24, 2018. ISSN 0301-4215. doi: https://doi.org/10.1016/

j.enpol.2018.06.013. URL http://www.sciencedirect.com/science/article/

pii/S0301421518304014.

[67] Brian Cox, Christopher L Mutel, Christian Bauer, Angelica Mendoza Beltran, and

Detlef P. van Vuuren. Uncertain environmental footprint of current and future

battery electric vehicles. Environmental Science & Technology, 52(8):4989–4995,

2018. doi: 10.1021/acs.est.8b00261. URL https://doi.org/10.1021/acs.est.

8b00261. PMID: 29570287.

[68] Erika von Schneidemesser. Institute for advanced sustainability studies e.v. - climate

change and air pollution, January 30 2019. URL https://climpol.iass-potsdam.

de/.

[69] Bike Share Toronto. Bike share toronto, experience toronto in a whole new way,

January 30 2019. URL https://bikesharetoronto.com/.

100

Page 112: BLE Beacons for Proximity-Based and Location-Based Services

[70] J. Sanchez-Gomez, R. Sanchez-Iborra, and A. Skarmeta. Transmission technologies

comparison for iot communications in smart-cities. In GLOBECOM 2017 - 2017

IEEE Global Communications Conference, pages 1–6, Dec 2017. doi: 10.1109/

GLOCOM.2017.8254530.

[71] Rajesh Kannan Megalingam, Pranav Sreedharan Veliyara, Raghavendra Prabhu,

and Rocky Katoch. Pedal power generation. volume 7, 01 2012.

[72] R. Gonzalez, L. Fajardo, and D. Florez. A prototype to manage the share of

assisted bicycles on bogota as a creative form of public transportation. In 2018 ICAI

Workshops (ICAIW), pages 1–6, Nov 2018. doi: 10.1109/ICAIW.2018.8555003.

[73] W. Jia, Y. Tan, and J. Li. Hierarchical prediction based on two-level affinity propa-

gation clustering for bike-sharing system. IEEE Access, 6:45875–45885, 2018. ISSN

2169-3536. doi: 10.1109/ACCESS.2018.2865658.

[74] Q. Chen, M. Liu, and X. Liu. Bike fleet allocation models for repositioning in bike-

sharing systems. IEEE Intelligent Transportation Systems Magazine, 10(1):19–29,

Spring 2018. ISSN 1939-1390. doi: 10.1109/MITS.2017.2776129.

[75] L. Liu, D. Gong, B. Guan, and J. Xiao. Cf-cluster: Clustering bike station based

on common flows. In 2017 IEEE 15th Intl Conf on Dependable, Autonomic and

Secure Computing, 15th Intl Conf on Pervasive Intelligence and Computing, 3rd Intl

Conf on Big Data Intelligence and Computing and Cyber Science and Technology

Congress(DASC/PiCom/DataCom/CyberSciTech), pages 356–361, Nov 2017. doi:

10.1109/DASC-PICom-DataCom-CyberSciTec.2017.75.

[76] K. Chun, Z. Chen, and C. Sun. Iot solution for public bicycle system. In 2016 IEEE

International Conference on Consumer Electronics-Taiwan (ICCE-TW), pages 1–2,

May 2016. doi: 10.1109/ICCE-TW.2016.7520911.

[77] Bluno - an arduino bluetooth 4.0 (ble) board, . URL https://www.dfrobot.com/

product-1044.html.

[78] Dragino Technology Co. Lora shield for arduino, 2019. URL http://www.dragino.

com/products/module/item/102-lora-shield.html.

[79] RobotShop inc. Lora/gps long range transceiver shield 915 mhz

(north america), 2018. URL https://www.robotshop.com/ca/en/

101

Page 113: BLE Beacons for Proximity-Based and Location-Based Services

lora-gps-long-range-transceiver-shield-915-mhz-north-america.html?

gclid=EAIaIQobChMI9Nivm4X03wIVdx-tBh1jmQ9yEAQYAiABEgL1wvD_BwE.

[80] Dynamo generator 12v 6w. bike light part, bicycle lightpart, lowrider ,

beach cruiser, stretch bike, bmx, track, fixie. URL https://www.amazon.

ca/Generator-bicycle-lightpart-lowrider-cruiser/dp/B00H3RDVKO/ref=

sr_1_5?crid=3IZ59T2WBE8E9&keywords=bicycle+dynamo+generator&qid=

1551211024&s=gateway&sprefix=bicycle+dyna%2Caps%2C159&sr=8-5.

[81] Acdelco 334-2114 professional alternator, remanufactured. URL https://www.

amazon.ca/ACDelco-334-2114-Professional-Alternator-Remanufactured/

dp/B000C9NN5S/ref=sr_1_2?keywords=alternator&qid=1551211300&s=

gateway&sr=8-2.

[82] Sram i-light dynamo 730 3w front hub, 32h qr, black. URL https:

//www.amazon.ca/SRAM-I-Light-Dynamo-730-Front/dp/B008OEAPHM/ref=

sr_1_1?hvadid=208381992892&hvdev=c&hvlocphy=9001013&hvnetw=g&hvpos=

1t1&hvqmt=e&hvrand=10440830801063780022&hvtargid=kwd-298581562969&

keywords=dynamo+hub&qid=1551210729&s=gateway&sr=8-1&tag=googcana-20.

[83] Bluecat, . URL https://www.bluecats.com/.

[84] Petros Spachos and Andrew Mackey. Energy efficiency and accuracy of solar pow-

ered ble beacons. Computer Communications, 119:94 – 100, 2018. ISSN 0140-

3664. doi: https://doi.org/10.1016/j.comcom.2017.12.007. URL http://www.

sciencedirect.com/science/article/pii/S0140366417309891.

[85] Kang Eun Jeon, T. Tong, and J. She. Preliminary design for sustainable ble

beacons powered by solar panels. In 2016 IEEE Conference on Computer Com-

munications Workshops (INFOCOM WKSHPS), pages 103–109, April 2016. doi:

10.1109/INFCOMW.2016.7562054.

[86] Texas Instruments. Simplelink bluetooth low energy/multi-standard sensortag,

2019. URL http://www.ti.com/tool/cc2650stk.

102