Indoor Location for Smart Environments with
Wireless Sensor and Actuator Networks
Zhongliang Zhao1 , Stephane Kuendig2 , Jose Carrera1 , Blaise Carron2 , Torsten Braun1 , Jose Rolim2

arXiv:1705.09543v1 [] 26 May 2017

University of Bern, Switzerland1 , University of Geneva, Switzerland 2
Email: {zhao, carrera, braun}@inf.unibe.ch, {stephane.kundig, jose.rolim}@unige.ch, blaise.carron@etu.unige.ch

Abstract—Smart environments interconnect indoor building
environments, indoor wireless sensor and actuator networks,
smartphones, and human together to provide smart infrastructure management and intelligent user experiences. To enable the
”smart” operations, a complete set of hardware and software
components are required. In this work, we present Smart Syndesi,
a system for creating indoor location-aware smart building environments using wireless sensor and actuator networks (WSANs).
Smart Syndesi includes an indoor tracking system, a WSAN
for indoor environmental monitoring and activation automation,
and a gateway interconnecting WSAN, tracking system with
mobile users. The indoor positioning system tracks the real-time
location of occupants with high accuracy, which works as a basis
for indoor location-based sensor actuation automation. To show
how the multiple software/hardware components are integrated,
we implemented the system prototype and performed intensive
experiments in indoor office environments to automate the indoor
location-driven environmental sensor monitoring and activation
process. The tracked indoor location of a user’s smartphone triggers the retrieval of environmental measurements and activates
the actuators automatically (i.e. turn on/off lights, switch on/off
fans) based on the location and correlated environmental sensor
information.
Keywords: Artificial Intelligence, Indoor Positioning, Environment Automation, Wireless Sensor and Actuator Networks.

I. I NTRODUCTION
Smart environments, for instance smart home or smart office, are expected to be intelligent and human-aware. Google’s
recent acquisition of Nest Labs [1], whose products include
smart sensor-driven and programmable thermostats, certainly
shows the huge market potential of smart environment applications. In the meanwhile, Human-Centric Computing (HCC)
focuses on improving application experiences by enhancing
application usability. Research activities on HCC have been
advancing in past years due to the rapid development of
mobile devices such as smartphones, wearable devices, as well
as distributed environmental sensors. Understanding human
beings and their contexts certainly helps to facilitate the
development of smart environment applications.
Home automation or office automation, targets to provide
convenient, comfortable, and energy efficient home or working
environments to the residents or occupants via the automation
of home or office appliances. In particular, office automation
could improve the office working experiences. For instance,
when a man enters the office room, the lighting system should
be switched on and be configured to a luminance level that

is of his favorites, and the window curtains should also be
opened automatically.
Recent advances in Artificial Intelligence (AI) technology
have enabled computer machines to perform better than human
being in certain tasks related to intelligence, such as aspects of
image recognition. The combination of artificial intelligence
and automation will automate entire task-handling process.
For instance, the latest machine learning algorithms enable
us to design efficient and scalable indoor positioning system
without calibration process, which makes the system much
more stable. The user’s indoor behaviors and preferences can
also be analyzed to find out patterns that can be used to trigger
the automation operations.
Given the previous examples, intelligent automation is the
key target in smart environment applications. However, most
of the existing products on the home/office automation markets
do not exhibit sufficient intelligence. To achieve the real intelligent automation, both software intelligence and hardware
automation procedure are needed. This means the ”smart environments” are really ”smart” only if they are aware of human
status such as their locations, preferences, intentions, etc. The
software intelligent algorithms should detect human status
first, which then trigger the hardware automation procedure.
To provide software intelligence and being the human status
aware, such as indoor locations, an efficient and accurate indoor positioning system is required. The system should be able
to track user’s indoor locations without asking people to carry
additional devices. Moreover, an infrastructure management
platform, such as a wireless sensor and actuator network,
should be established to connect the software intelligence with
hardware appliances such that intelligent decisions could be
transfered to trigger the electrical appliances.
In this work, we have built an indoor location-aware smart
office environment, by combining an indoor localization system with an infrastructure management system using existing
office WiFi networks and wireless sensor and actuator networks. The system is able to track people’s indoor location and
automate the operations of office building appliances properly.
The main contributions could be summarized as follows.
• We implement and deploy the indoor positioning system
in a smart office testbed, the Syndesi framework, and
integrate the indoor localization functions.
• We implement the Syndesi automation feature by enabling the indoor location-aware automation process.

We conduct a set of extensive experiments to validate the
system in complex indoor environments with long tracking paths. Results show that the indoor location-driven
smart environment appliances automation is working fine
in real-time fashion.
The structure of the paper is as follows: Section II discusses
existing solutions and background related to this work; Section III details the proposed system architecture and describes
the integration challenges, and Section IV presents the system
deployment and evaluation details to validate the proposed
integrated system. Finally, Section V concludes the paper and
discusses the main achievements of this research.
•

II. R ELATED WORK
The first problem in smart environment application is to
detect or identify the number and identification of the residents
or occupants in home or office building environments. Such
knowledge can be very useful to various home/office automation applications, such as energy management, lighting control,
and security. Ebadat et al. [13] proposed to estimate the
number of people in an indoor environment using information
available in standard HVAC (heating, ventilating, and air
conditioning) systems. Their approach avoids the installation
of extra hard sensors in the environment and offers a new
solution to this problem. He et al. [14] offers a different
solution to this problem by using the Google Glass, which
combines data from both visual and inertial sensors. Mao et
al. [15] investigated the issue of building occupancy estimation
by using a wireless CO2 sensor network.
Determining people’s indoor locations is another essential requirement for building smart office or smart home
applications. GPS technology, which provides accurate positioning for outdoor environments, cannot delivers satisfied
indoor positioning because of the signal propagation losses.
Therefore, many solutions have been proposed to provide
accurate indoor positioning service. In [16], authors proposed
a fingerprinting-based solution by combining digital compass
and WiFi information. The authors of [17] proposed a tracking
system by exploiting particle filter features. This work adopted
a particle filter to combine PDR (pedestrian dead reckoning),
and floor plans together. A WiFi component records RSSI
values periodically from all available access points on a floor.
WiFi information is used to perform room recognition and turn
verifying. The PDR component outputs a human motion vector
model, which is used as input for the particle filter component.
The authors of [18] implemented a Radial Basis Function
Network to estimate the location of occupants using RFID
(Radio-Frequency Identification) and IR (Infra-Red) sensor
data. Leveraging the fact that almost all the indoor occupants
carry smartphones, Carrera et al. [12] designed a terminalbased positioning system, which uses an enhanced particle
filter to fuse PDR, WiFi ranging, and floor plan, to further
improve indoor positioning accuracy. Chen et al. [19] designed
a smart home application, which focuses on indoor greeneries
for improving indoor living environments.

To build an infrastructure platform that controls the electrical appliances in smart environments, wireless sensor and
actuator networks are the dominant technology [20], [21],
[22], [23], [24]. WSN, rather than WiFi based networks, have
been popularly employed for remote control and monitoring
applications, mainly because of their low cost and reduced
power consumption [25], [26], [27], [28]. The deployment
of such a system is not easy due to the existences of different communication standards. Tudose et al. [29] proposed
a wireless sensor networking using 6LoWPAN to connect
sensors and actuators in a home automation application. The
authors of [11] presented Syndesi, a framework for creating
personalized smart environments using WSANs. It combines
WSANs with different communication technologies, such as
Near Field Communication (NFC), Bluetooth, ZigBee, and
6LoWPAN along with an electrical interface to control office
appliances.
III. I NDOOR L OCATION FOR S MART E NVIRONMENTS
This section details the design of the proposed indoor location-aware smart environment architecture. We first
present the architecture of the proposed system and it components. Then, we describe some implementation details and
mathematical algorithms that support our application. Moreover, we discuss the challenges when integrating all the
components.
A. Overall Architecture
The Smart Syndesi framework, as shown in Figure 1,
is a system comprised of heterogeneous hardware devices
together with intelligent software engines. It has three main
components, namely the Syndesi wireless sensor and actuator network management testbed, an indoor localization and
navigation engine, and a human-centric actuation automation
module. The Syndesi testbed is responsible for creating and
managing personalized smart environments using WSANs.
It can also control electronic appliances via an electrical
interface. The indoor localization and navigation engine estimates the indoor location of users in real-time fashion. The
human-centric actuation automation module is responsible for
activating the correlated actuators automatically based on the
estimated user locations. In the following, we describe the
functions of each module in detail.
B. Syndesi Testbed
Syndesi [11] is focused on providing personalized services
for smart environments combining sensor networks, electrical
appliances, actuators and gateways, utilizing communication
protocols and technologies such as Near-Field Communication (NFC), Bluetooth, ZigBee, 802.15.4, 6LoWPAN etc.
The whole system is built following a RESTful architectural
approach, providing interoperability between its resources,
devices, services and the Internet. Benefiting from Syndesi’s
REST-enabled services, many additional updates have been
implemented. One of the most important updates is an interactive Android application for mobile devices, which allows

Figure 1: Smart Syndesi System Architecture.
smartphone users equipped with the Syndesi Android application to directly interact with the system’s actuators, as well
as contribute with data collected from the smartphone sensors. Moreover, the mobile app integrates indoor localization
mechanisms, which are discussed in detail in the next sections,
in order to provide live location-stamped data and allow for
operation automation based on user location.
The Syndesi components are deployed in 4 office rooms in
the University of Geneva premises where 7 people currently
work. The core WSAN is comprised by 28 TelosB [7] and
Zolertia Z1 [8] sensor motes which are connected with the
existing electrical and electronic office devices, such as lights,
fans, electric curtains etc., via solid state relays. The core of
the Syndesi testbed is implemented on a Linux based machine
where the gateway server is deployed. It serves as a connection
point for all the elements and components as the WSAN,
the mobile crowdsensing smartphone application, the web etc.
Every service or resource is provided as a web service, in the
form of a RESTful API deployed also in the gateway server,
and linked to the web through a proxy service. In addition,
an SQL database is hosted on the server where sensor data
can be pushed via corresponding APIs. As REST architecture
implies, the API calls have the simple form of a URI utilizing
GET or POST methods.

Figure 2: 3D representation of office environment. Green
marks are sensors and red marks are actuators.

In figure 2 we present a 3D-model of one of the offices. The
red marks indicate the electrical devices that are connected to
Syndesi and thus capable of being triggered via the designated
APIs. Most of devices such as the fans, lights and coffee
machine support switching on/off while the electric curtain
motor is actuated up/down. Some sensor motes (green marks)
are placed on the wall for purely monitoring purposes. Using
those motes, an automated polling scheme is set-up since
September 2016 which collects environmental data, such as
temperature and illuminance, and stores it on the server
database following a predefined temporal pattern.
C. Indoor Localization and Navigation Engine
To track people in indoor environments, we have designed
an indoor positioning system to support real-time indoor
localization and navigation. Our approach [12] is able to
provide high accuracy by fusing smartphone’s on-board sensor
readings, such as Inertial Measurement Unit (IMU), WiFi
received signal strength (RSS), and floor plan information
in a particle filter. All the tracking algorithms run on the
smart-phone itself, which requires no additional hardware
deployment. Figure 3 depicts the system architecture of the
indoor positioning system, which contains four components
as follows:
1) Inertial Measurement Unit: In order to estimate the
pedestrian displacement, we use two sensors, the accelerometer, and the geomagnetic field sensor. The displacement of
the pedestrian at time t is defined by the motion vector
Mvt = [θt , `t ], where θt is heading orientation and `t is
stride length at time t. Time t is the instant that the pedestrian
executes a new step. Therefore, step recognition and heading
orientation methods are implemented in this component. The
step recognition method is developed by parsing acceleration
readings, whereas the heading orientation is determined by
a digital compass developed from the geomagnetic field and
accelerometer sensors. Despite the stride length value can vary
along the trajectory, in this work we assume that ` is a constant
value in order to focus on the tracking algorithm.
2) Floor Plan Component: Information about the area of
interest is used to further improve the tracking accuracy. This

D. Machine learning for Room Recognition

Figure 3: Indoor Positioning System.
component defines the constraints by the area of interest. Thus,
zones in the floor plan, where the pedestrian is not allowed to
walk, e.g., walls, furniture, are defined as not allowed zones.
3) Radio Information Component: Radio information needs
to be converted to range values. In order to achieve high
ranging accuracy we adopt the Non-Linear Regression (NLR)
model presented in [10]. The NLR model is defined as follows:
dj,t = αj ∗ eRSSj,t ∗βj .

(1)

dj,t is the distance between the target object and the jth AN
at the instant t. Both αj and βj are environmental variables
defined for the jth AN. RSSIj,t is the signal power measured
from the jth AN at time t.
4) Data Fusion Component: We propose a particle filter
approach by fusing PDR, WiFi, and floor plan information
to support real-time tracking in indoor environments. In our
approach, an additional re-sampling method is incorporated
in order to further mitigate the errors caused by off-the-shelf
WiFi sensors embedded on commodity smartphones. Thus, the
state vector at time t is defined as follows:
Xt = [xt , yt , θt , `t ],

(2)

(xt , yt ) are the Cartesian coordinates of the target object, θt
is the heading orientation and `t is the stride length at time t.
The prediction function can be written as:
Xt = F · Xt−1 + η,

(3)

where


1
0
F =
0
0

0
1
0
0

0
0
0
0




0
` ∗ cos(θ)
0

0
0
` ∗ sin(θ)
,η = 




0
θ
0
0
0
`
0

0

θ =θ +ε
0

`=` +ε

00

Heading orientation and stride length are assumed to inter0
fere by zero-mean Gaussian random noises. Therefore, ε and
00
ε are the errors introduced in the calculation process.
All the components and algorithms are running on the
smartphones, which continuously explore the existing WiFi
network and on-board sensors.

Location plays an essential role in context-aware smart
environment applications. Information about the location of
users or their identities could be needed to develop customized
services. Therefore, different localization approaches should
be implemented based on the required accuracy. Some applications might need sub-meter level accuracy, while meter level
accuracy could be sufficient for some applications. In smart
environment applications, room level accuracy could already
enable automate activations of actuators based on estimated
user locations, such as turn on/off lights and open/close
curtains when a user is coming/leaving into a room. Before
the integration of the localization mechanisms, Syndesi application users had an assigned office room corresponding to
their working location, which was used as location on their
sensed data. Therefore, in this work, we regard a room level
localization accuracy is enough and propose an indoor localization approach, which is able to provide user localization
information in a room level accuracy.
The rapid development of WiFi capable mobile devices,
and the wide availability of WiFi network infrastructure have
promoted several research on providing indoor localization
by using WiFi technology. However, instability of the WiFi
signal propagation in indoor environments introduces errors in
the localization process. Therefore, a simple WiFi localization
approach like triangulation cannot cover the demands of
practical applications. Nevertheless, WiFi signal propagation
instability can be used as fingerprinting identifier for locations
in indoor environments. Thus, we consider the room recognition as a classification problem and we propose a simple
WiFi fingerprint room recognition approach. The key idea is
to combine the signal strength from multiple access points in
order to build WiFi fingerprints for supervised learning. In
this work we propose a fingerprinting room recognition based
on the WiFi RSS transmitted by nearby WiFi access points.
This approach does not require additional specialized hardware
or special infrastructure support, thus making it feasible for
implementation even in mobile devices limited in power and
resources. The proposed approach consists of two phases: the
off-line training phase and the on-line localization phase. The
training phase is intended to build the fingerprint database,
which consists of vectors of WiFi RSS collected from the
nearby WiFi access points. During the training phase, each
survey room is characterized by a set of vectors of WiFi RSS
readings. During the on-line localization phase, the predicted
room likelihood is calculated based on the previously collected
information and the current WiFi RSS vector. Thus, room
recognition can be handled by searching for the closest match
of the test data in feature space. We implement two simple
yet proven to be efficient classification algorithms for this
purpose: the K-Nearest Neighbor (KNN) algorithm and the
Support Vector Machine classifier. KNN ans SVN are some of
the simplest classification algorithms available for supervised
learning [2]. Therefore, when a localization task is launched
in the mobile app, both classifiers are employed and in case of

Figure 4: Integrated Android application architecture.
a classification mismatch the process is repeated with a newly
collected WiFi RSS vector.
E. Mobile Application
The mobile application has been developed in Android
Studio and IntelliJ IDEA [4] using the Android SDK with
API level 21. It supports devices from API level 15 and above,
which now encompasses over 99.1% of Android smartphone
users [6]. Figure 4 depicts the main components of the app.
The sensing unit is responsible for querying the smartphone
sensors for values. The localization unit is responsible for
estimating the smartphone location. The control unit handles
the various actuation/automation tasks as well as the resource
and power management. The application is constructed around
the Model-View-Controller (MVC) pattern [30]. Users, sensor
data and nodes are models, views are handled by Android
activities and controllers are using services to run in the
background and the broadcast method to communicate and
update the user interface. The application follows the Separation of Concerns (SoC) design principles [31] to facilitate the
maintenance and development. All the data transmitted to the
server are formatted in JSON format.
1) Sensing unit: When a user gives permission to access
his/her device sensors in the settings, the application first
discovers the available sensors in the device and then establishes a monitoring scheme. The polling rate is set manually
in the settings, the default value being one measurement
per minute. After each new sensing event, the raw data is
converted to JSON, after being stamped with the user’s id and
location provided by the localization unit. Then, a network
controller communicates with the RESTful service provided
by the Syndesi server and transmits the data via HTTP calls.
This controller can easily be derived to create subclasses
to connect to other types of servers, making the app easily
adaptable to different environments. The HTTP requests are
made using Volley [9], an HTTP library made for Android that
permits more efficient and faster networking by using caching,
multiple concurrent connections and an automatic scheduling
for network requests. All tasks performed by the sensing

unit are run as services that can run also in the background,
therefore allowing for continuous data collection even during
the smartphone’s idle periods.
2) Localization unit: The localization unit is where the
localization tasks are implemented. As mentioned in section
III-D the full tracking mechanism was evaluated as too powerconsuming to be used in a mobile app, so we adopted a
lightweight version of the same algorithm to achieve accurate
room-level localization. The lightweight version uses only the
radio information component to derive the user room, in a
temporal interval defined by the user. When a localization
task is launched, the app scans for surrounding WiFI signals
and forms a new WIFi RSS vector which is then fed on the
SVN and KNN classifiers. The classifiers are trained every
time the app is initially launched, providing that way the
possibility of training on different data without the need of
re-installation of the whole application. Just as in the sensing
unit, the localization tasks are run as services that can be run
on the background. The classifiers used for the localization
come from OpenCV [3], an open source computer vision and
machine learning library.

Figure 5: Sensors monitoring. Figure 6: Application settings.

12

4

AP1

10

AP2

3

Y(Axis((meters)

5
8

6
AP5

6

7

2

4

8

End

1(
2
AP4

0

Start
2

4

6

8

AP3
10

12

14

16

X(Axis((meters)

Figure 7: Experiment scenario.

3) Control unit: The control unit communicates with the
gateway server via a network controller who sends HTTP
requests in order to receive the list of sensor nodes registered
in the WSAN. The nodes are parsed from the JSON response
and displayed on the app screen. The user can toggle a node
by clicking on it, which enables the network controller to
send a mediate (HTTP GET) request to the server, using the
node’s id and the desired status as parameters. Besides the
manual triggering of the actuators, the control unit includes
an automated environment control module which uses the
tracked indoor location to activate smart management within
the Syndesi framework. If a user enables that option on the
settings, When a change of location is detected it will trigger
a process that switches on the appropriate appliances, such
as lights, that are in the same room as the device, switching
off the ones in the previous room if no one else is currently
located inside. The user can also set in the environment control
configuration a desired ambient temperature and illuminance,
which when compared to the live measured values will actuate
an office fan, turn off some lights or pull up/down a curtain
in corresponding cases. Figure 5 shows a screenshot of the
application home screen, where the latest sensor values are
displayed as well as the current location and the server status.
Figure 6 shows the various settings of the application.
F. Integration challenges
1) Machine learning library: The first challenge when
integrating the indoor localization algorithm in the mobile
application was the inclusion of the different classification
algorithms such as K-Nearest Neighbors (KNN) and Support
Vector Machines (SVM). Presently, there does not exist separate pure machine learning libraries developed for Android,
so we decided to utilize the OpenCV even though OpenCV
was initially designed for image precessing tasks. This library
is open source and already exists in Android but the downside

is that the user has to install it separately, something our
app prompts him/her to do if it is not already installed.
We are currently in the process of moving the localization
computations on the server side for future versions of the app
to deal with this issue.
2) Android permissions: The initial app was built and tested
on phones running Android OS version 5.x. Most of the OS
updates since then have modified the permission policy for the
application, which led to a constant refactoring of the app in
order to be in line with the newest changes and the advanced
Android policy. Right now the app is fully compatible with
the latest version of Android 7.1.2.
3) Battery consumption: The initial version of the app
was configured to collect data every 3 minutes and in a full
working day (8 hours) we measured an average of 3% battery
consumption. Although, as new features continued to be added
to the app, e.g. faster polling rates, expensive localization
processing, node management etc., it became significantly
more power demanding. To deal with this issue, we introduced
a new power management feature, where the polling rates as
well as the localization WiFi sampling intervals are depending
on the smartphone’s state and its current battery level. The user
can still choose a desired polling rate in the settings but when
the phone battery reaches levels below 50%, the polling rate is
reduced by half, and furthermore if the battery life goes below
20% the sensing and localization functions are both disabled.
We plan to further improve power efficiency by batching data
that are not critical to automation before sending them to the
server and by activating the localization only when a user
move has been detected.
IV. S YSTEM D EPLOYMENT AND E VALUATION
In this section, we explain how the system is deployed and
evaluated in an indoor office environment at the Computer
Science department of University of Geneva.

A. System Deployment
We deployed the system at the TCS-Sensor Lab in the
Computer Science department of University of Geneva with an
office area of nearly 260 m2 . In order to cover the area of the
4 office rooms and the in-between corridor with WiFi signals
that are sufficient to feed the localization algorithm, we have
deployed 5 WiFi access points strategically. Each room has
multiple sensors (e.g., humidity sensor, illuminance sensor,
etc) and electrical appliances as actuators (e.g., desk fans,
desk lights, and electrical curtains). Each actuator is paired
to a sensor mote via a solid state relay [32]. The relay is
connected to the 220V power supply, to the actuator and to
the sensor mote. The relay receives a 3V output from the
mote once a location match is detected on the app, thanks
to the accurate indoor localization mechanisms. The current
generated from this voltage then enables the relay’s underlying
circuit and the correlated appliances will be switched on
automatically. During the experiments, a person walks through
the office areas holding a smartphone with the Smart Syndesi
app installed and enabled (as shown in Figure 7).
B. Evaluation
This section includes two types of experiment evaluations:
a functional one, and a non-functional one. The function
evaluation is to validate the prototype functionalities, while
the non-function one is about the evaluation of the indoor
localization accuracy.
For the functionality evaluation, when the person holding
the smartphone enters an office, the actuators of that office
should be automatically triggered based on the user preferences. As shown in Figure 8, the ”environment control” feature
correctly triggers the specific appliances based on user settings,
displaying in its interface the automation status based on the
current location/office. The interface of ”Node Manager” will
also present the actuators that are in the current room and their
status for manual triggering, as shown in Figure 9.

Figure 8: Appliance Automa- Figure 9: Nodes Manager.
tion.
For the evaluation of the accuracy of the room recognition,
as well as the automated environment control, an experiment

Localization5Acuracy
100%

100% 100%

Appliances5Correctly5Actuated

100% 100% 100%

100% 100% 100%

100% 100% 100% 100% 100%

98%
96%
94%

94%
92%

92%

91%

90%
88%
86%

1

2

3

4

5

6

7

8

Check Point

Figure 10: Evaluation results.

scenario and walking path have been defined. As shown in
Figure 7, the experiment consists of a person holding the
smartphone and walking through the office areas following a
predefined path (shown as green dash line). From the starting
point, the person holds the smartphone and enters office rooms
one by one, triggering the ”relocate” function on the defined
”check points” on the ground (shown as number 1-6 in Figure
7). During that time, the mobile app is configured to have
the environment control function enabled so the expected outcome is the enabling/disabling of the corresponding electrical
appliances as the location changes. As WiFi received signal
strength depends on the smartphone hardware components, we
used 3 smartphone models from different manufacturers, and
their detailed specifications are shown in Table I.
Table I: Smartphone Models
Model

Specifications

Samsung Note 3

Android 5.0; Quad-core 2.3 GHz Krait 400;
Wi-Fi 802.11 a/b/g/n/ac; 3GB RAM

Sony Xperia Z5

Android 7.0; Quad-core 2.0 GHz;
Wi-Fi 802.11 a/b/g/n/ac; 3GB RAM

LG Nexus 5X

Android 7.1.2; Hexa-core 1.8 GHz Cortex-A53;
Wi-Fi 802.11 a/b/g/n/ac; 2GB RAM

The experiments were run 20 times for each phone and for
every checkpoint we gathered metrics on the room recognition
and appliance actuation. As results shown in Figure 10, the
overall accuracy of the room recognition was far greater than
90%, which proves the efficiency of the deployed localization
system. In particular, we notice that check points 1,3,5,7 and
8 which are all located inside the 4 offices achieved perfect
score. This is an important result since when it comes to
localization misses, a corridor miss is far less critical since it
is basically transitive state. Regarding the actuation of office
appliances, in the case where the office room was correctly
detected, the system demonstrated robustness and reliability
as there were almost no fails in the steps followed by the
phone-server-WSAN to enable the automation, as shown in
the results figure.

V. C ONCLUSION
In this paper, we presented an indoor location-aware smart
environment system. The system consists of an indoor localization module, a wireless sensor and actuator network
for electrical appliance management, and a gateway interconnecting office appliances, localization engine with smartphone
users. Thanks to the accurate indoor localization module, the
system is able to identify people’s indoor locations in realtime, which then trigger the automation of office appliances.
We have implemented the prototype, and deployed the system
in an indoor environment with 4 office rooms in the Computer Science department of University of Geneva. We have
performed multiple experiments with different smartphones
models to validate the system functionalities and performance.
Evaluation results show that the estimated indoor locations are
of high accuracy, and the automation of office appliances can
be triggered by the estimated indoor locations in real-time.
In the future, an envisioned milestone is to offload the
localization algorithm computations to the cloud/edge servers
that are deployed in the smart environments. In this way, we
can deploy the full tracking system and even experiments with
more advanced machine learning techniques and algorithms
which were overly demanding in power and computational
resources to be implemented on a mobile device. Moreover,
we plan to enhance the system with more power-efficient
management as well as security features to make it privacypreserving.
ACKNOWLEDGMENT
This work was partly supported by the Swiss National
Science Foundation via the SwissSenseSynergy project under
grant number 154458.
R EFERENCES
[1] Nest Labs Home Automation Producer[Online]. Available:
https://nest.com/
[2] OpenCV.org K-Nearest Neighbour[Online]. Available:
https://goo.gl/RXDGwP
[3] OpenCV.org OpenCV library[Online]. Available:
http://docs.opencv.org/3.0-beta/index.html
[4] IntelliJ IDEA the Java IDE [Online]. Available:
https://www.jetbrains.com/idea/
[5] Android 5.0 API[Online]. Available:
https://developer.android.com/about/versions/android-5.0.html
[6] Android Developers Dashboard[Online]. Available:
https://developer.android.com/about/dashboards/index.html
[7] Telosb Mote[Online]. Available: https://telosbsensors.wordpress.com/
[8] Zolertia Z1 sensor[Online]. Available: http://zolertia.io/z1/
[9] Transmitting Network Data Using Volley[Online]. Available:
https://developer.android.com/training/volley/index.html
[10] Z. Li and T. Braun and D. Dimitrova, A PassiveWiFi Source Localization
System Based on fine-grained power-based trilateration. Proceedings of
the IEEE International Symposium on a World of Wireless, Mobile and
Multimedia Networks (WoWMoM), 2015.
[11] O. Evangelatos and K. Samarasinghe and J. Rolim, Syndesi: A Framework for Creating Personalized Smart Environments Using Wireless
Sensor Networks. Proceedings of the IEEE International Conference
on Distributed Computing in Sensor Systems (DCOSS), 2013.
[12] J. Carrera and Z. Li and Z. Zhao and T. Braun and A. Neto, A Realtime Indoor Tracking System in Smartphones. Proceedings of the 19th
ACM International Conference on Modeling, Analysis and Simulation of
Wireless and Mobile Systems (MWSiM), 2016.

[13] A. Ebadat, G. Bottegal, D. Varagnolo, B. Wahlberg and K. H. Johansson,
Regularized Deconvolution-Based Approaches for Estimating Room Occupancies. IEEE Transactions on Automation Science and Engineering,
vol. 12, no. 4, pp. 1157-1168, Oct. 2015.
[14] H. He, Y. Li, and J. Tan, Wearable ego-motion tracking for blind
navigation in indoor environments. IEEE Transactions on Automation
Science and Engineering, vol. 12, no. 4, pp. 11811190, Oct. 2015.
[15] C. Mao, and Q. Huang, Occupancy Estimation in Smart Building using
Hybrid CO2/Light Wireless Sensor Network.
ASA MULTIDISCIPLINARY RESEARCH SYMPOSIUM, 2016.
[16] P. Nagpal and R. Rashidzadeh, Indoor Positioning using Magnetic
Compass and Accelerometer of Smartphones.
Proceedings of the
International Conference on Selected Topics in Mobile and Wireless
Networking, 2013.
[17] F. Hong and Y. Zhang and Z. Zhang and M. Wei and Y. Feng and Z.
Guo, WaP: Indoor Localization and Tracking Using WiFi-Assited particle
Filter. Proceedings of the 39th IEEE Conference on Local Computer
Networks (LCN), 2014.
[18] M.V. Moreno-Cano, M.A. Zamora-Izquierdo, Jos Santa, and Antonio
F. Skarmeta, An indoor localization system based on artificial neural
networks and particle filters applied to intelligent buildings. Elsevier
Journal on Neurocomputing, Volume 122, 25 December 2013, Pages 116125.
[19] M. Chen, J. Yang, X. Zhu, X. Wang, M. Liu, and J. Song, Smart
Home 2.0: Innovative Smart Home System Powered by Botanical IoT
and Emotion Detection.
Springer Journal on Mobile Networks and
Applications, 2017.
[20] D. M. Han J. H. Lim Smart home energy management system using
IEEE 802.15.4 and Zigbee Transactions on Consumer Electronics, vol.
56, no. 3, pp. 1403-1410, August 2010.
[21] J. Byun B. Jeon J. Noh Y. Kim S. Park An intelligent self-adjusting
sensor for smart home services based on ZigBee communications Transactions on Consumer Electronics, vol. 58, no. 3, pp. 794-802, August
2012
[22] H. Wang J. Wang Design and implementation of a smart home based
on WSN and AMR Applied Mechanics and Materials, vol. 271-272, pp.
1485-1489, 2013.
[23] J. M. Wang H. B. Wei Design of smart home management system based
on GSM and Zigbee Advanced Materials Research, vol. 842, pp. 703707, 2014.
[24] W. Liu Y. Yan Application of ZigBee wireless sensor network in smart
home system International Journal of Advanced Computer Technology,
vol. 3, no. 5, pp. 154-160, June 2011.
[25] V. C. Gungor B. Lu G. P. Hancke Opportunities and challenges of
wireless sensor networks in smart grid
Transactions on Industrial
Electronics, vol. 57, no. 10, pp. 3557-3564, October 2010.
[26] X. Cao J. Chen Y. Xiao Y. Sun Building-environment control with
wireless sensor and actuator networks: Centralized versus distributed
Transactions on Industrial Electronics, vol. 57, no. 11, pp. 3596-3605,
November 2010.
[27] M. Magno et al. Extended wireless monitoring through intelligent hybrid
energy supply Transactions on Industrial Electronics, vol. 61, no. 4, pp.
1871-1881, April 2014.
[28] S. D. T. Kelly N. K. Suryadevara S. C. Mukhopadhyay Towards the
implementation of IoT for environmental condition monitoring in homes
IEEE Sensors Journal, vol. 13, no. 10, pp. 3846-3853, October 2013.
[29] D. S. Tudose et al., Home automation design using 6LoWPAN wireless
sensor networks.
Proceedings of the International Conference on
Distributed Computing in Sensor Systems and Workshops (DCOSS),
2011.
[30] Model-View-Controller-design pattern [Online]. Available:
https://developer.apple.com/library/content/documentation/General/Concep
tual/DevPedia-CocoaCore/MVC.html
[31] D. Jackson, E. Kang, Separation of concerns for dependable software
design FoSER ’10 Proceedings of the FSE/SDP workshop on Future
of software engineering research, 2010.
[32] DC to AC Solid State Relay [Online]. Available:
http://www.fotek.com.hk/solid/SSR-1.htm

