99
Internet of Things for the Smart Home António Gonçalves Vian Costa Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering Supervisor: Prof. Maria Helena da Costa Matos Sarmento Examination Committee Chairperson: Prof. Gonçalo Nuno Gomes Tavares Supervisor: Prof. Maria Helena da Costa Matos Sarmento Member of the Committee: Prof. Rui António Policarpo Duarte June 2018

AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Internet of Things for the Smart Home

António Gonçalves Vian Costa

Thesis to obtain the Master of Science Degree in

Electrical and Computer Engineering

Supervisor: Prof. Maria Helena da Costa Matos Sarmento

Examination Committee

Chairperson: Prof. Gonçalo Nuno Gomes Tavares

Supervisor: Prof. Maria Helena da Costa Matos Sarmento

Member of the Committee: Prof. Rui António Policarpo Duarte

June 2018

Page 2: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

ii

Page 3: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Declaration

I declare that this document is an original work of my own authorship and that it fulfills all the requirements

of the Code of Conduct and Good Practices of the Universidade de Lisboa.

iii

Page 4: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

iv

Page 5: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Acknowledgements

This dissertation marks the end of a long journey. One that proved itself challenging but worth it and

now very welcomed. The Internet of Things was a topic that I wanted to explore even before I took on

this thesis, and is one that kept me interested and engaged since the beginning. Through it, I learned a

lot, and my interest in it only grew. For this final work, I would like to thank the people who helped

bring this project to fruition during the time I worked on it and throughout my university years.

To Professor Maria Helena da Costa Matos Sarmento for the guidance in this work and the interest shown

in the topic. The availability to help, not only through meetings, but also for the support, understanding

and the patience shown at every step of the way.

To Narrownet, for the availability to help and the support shown.

To my parents for all the support provided even at the worst times. Not only for this thesis but throughout

all of my education. A special thank you to my Mother, for whom I have the deepest admiration, for the

emotional support and never wavering in the belief that I could do it.

A special thanks to my godparents for the support and peace of mind that they provided, for without

their help these final steps on my education would not have been possible. To the rest of my family, too

many to thank by name, for all their support, understanding, laughter and jokes.

Lastly and not least important to all my friends. In particular to Rui, Zé Pedro, João, Manuel, Zé Miguel,

Margarida and Marta for their continued friendship and support.

To all of them and more, I dedicate this work.

v

Page 6: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

vi

Page 7: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Abstract

As increasingly more things become connected to the internet, the Internet of Things is becoming a reality

faster than expected. Smart homes, a setting in which the Internet of Things is predicted to have a

high impact on the betterment of everyday lives, is a topic of high interest. Allied to other technological

advances like cloud computing, machine learning, and miniaturization, the Internet of Things is turning

devices away from performing taxing computing skills. Here, low power wide area networks are vital,

providing energy efficient devices at low costs. Sigfox and LoRa are two significant players in this field.

In this work a prototype using Sigfox technology was developed for the smart home and a study was

made on possible consumer interaction solutions, using various Internet of Things web platforms. Another

objective, to compare the Sigfox prototype with LoRa technology, is also achieved. It is concluded that

Sigfox, because of its limitations, cannot be the only technology used in a smart home. LoRa technology,

while offering more freedom of use, has a more difficult and complex implementation and is still behind on

the simplicity offered by the Sigfox infrastructure.

Keywords: Internet of Things, Smart Home, Low Power Wide Area Network, Sigfox, LoRa, IoT Platforms

vii

Page 8: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

viii

Page 9: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Resumo

Com o aumento de coisas ligadas à Internet, a Internet das Coisas está a tornar-se realidade mais

rapidamente do que o esperado. As casas inteligentes, um ramo onde se espera que a Internet das Coisas

tenha grande impacto para o melhoramento da vida das pessoas, é um dos tópicos de mais interesse. Aliada

à evolução de outras tecnologias como cloud computing, machine learning e miniaturização, a Internet das

Coisas está a permitir que as tarefas mais exigentes de processamento não sejam feitas nos dispositivos.

Aqui, entram as redes de baixa potência e longo alcance (Low Power Wide Area Network), onde dispositivos

de baixo consumo de energia são comercializados a baixos custos. Sigfox e LoRa encontram-se, neste

espaço, como duas das maiores tecnologias em expansão. Neste trabalho foi realizado um protótipo de

um sistema para uma casa inteligente com tecnologia Sigfox. Foram também analisadas plataformas

de Internet das Coisas que permitem ao consumidor gerir a informação obtida. Outro objectivo, o de

comparar o protótipo Sigfox com a tecnologia LoRa, é também alcançado. Conclui-se que, pelas limitações

tecnológicas da Sigfox, esta tecnologia nunca poderá ser a única utilizada numa casa inteligente. A

tecnologia LoRa, embora oferecendo mais liberdade na sua utilização, tem uma implementação mais difícil

e complexa e ainda está atrás da simplicidade oferecida pela infraestrutura Sigfox.

Palavras-chave: Internet das Coisas, Casa Inteligente, Low Power Wide Area Network, Sigfox, LoRa,

Plataformas IoT

ix

Page 10: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

x

Page 11: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Table of Contents

Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v

Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii

Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix

Table of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi

List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii

List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv

List of Acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii

1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3 Structure of the Dissertation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 The Internet of Things . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.1 Defining IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.2 The IoT Reference Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.3 Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.4 Standards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.5 Privacy and Legal Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

2.6 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

3 Communication Technologies for the IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.1 Wireless Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

3.2 Low Power Wide Area Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.1 Sigfox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.2.2 LoRa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.2.3 Differences between Sigfox and LoRa . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.3 State of the Art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

xi

Page 12: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

4 Smart Home Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4.1 Smart Home Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.2 Sigfox Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.2.1 TD1208 Evaluation Board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

4.2.2 SmartEverything Board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

4.2.3 Sigfox Radio Shield for Arduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4.2.4 Sigfox IoT Platforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.3 LoRa Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

4.3.1 RadioHead Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.3.2 LoRaWAN Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5 Results and Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.1 Sigfox Boards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.2 LoRa Dragino Kit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

6 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

6.1 Developed Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

6.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Annex A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

xii

Page 13: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

List of Figures

Figure 1.1: New dimension in the ICT paradigm adapted from [1]. . . . . . . . . . . . . . . . . . 3

Figure 2.1: Technical overview of the IoT [5]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Figure 2.2: IoT reference model [28]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Figure 3.1: Range versus bandwidth [58]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Figure 3.2: The Sigfox architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Figure 3.3: A detailed view of the Sigfox cloud [72]. . . . . . . . . . . . . . . . . . . . . . . . . . 26

Figure 3.4: LoRaWAN device classes [79]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

Figure 3.5: The LoRa architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Figure 4.1: Smart home architecture solution using only cloud services. . . . . . . . . . . . . . . 36

Figure 4.2: Smart home architecture solution using IoT platforms. . . . . . . . . . . . . . . . . . 36

Figure 4.3: Proposed smart home architecture using Sigfox technology. . . . . . . . . . . . . . . . 37

Figure 4.4: View of a Sigfox email callback. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Figure 4.5: Experiments conducted on the moisture and temperature sensors. . . . . . . . . . . . 41

Figure 4.6: Example of a Sigfox message at the back-end. . . . . . . . . . . . . . . . . . . . . . . 41

Figure 4.7: Battery tests conducted on the prototype. . . . . . . . . . . . . . . . . . . . . . . . . 41

Figure 4.8: Callback configuration for the Thinger Platform. . . . . . . . . . . . . . . . . . . . . 43

Figure 4.9: Proposed smart home architecture using LoRa technology. . . . . . . . . . . . . . . . 44

Figure 4.10: Dragino devices. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Figure 4.11: A compressed view of the LG01 gateway interface. . . . . . . . . . . . . . . . . . . . 46

Figure 4.12: The ThingSpeak Platform experiment. . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Figure 4.13: LoRa/GPS shield experiment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Figure 5.1: Example of a Sigfox message received at the Carriots IoT platform. . . . . . . . . . . 50

Figure 5.2: The SmartEverything board [138]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Figure 5.3: Cooking hacks Sigfox radio shield and module [114]. . . . . . . . . . . . . . . . . . . . 52

Figure 5.4: Custom payload configuration at the Sigfox back-end. . . . . . . . . . . . . . . . . . . 52

Figure 5.5: Custom payload display attempt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Figure 5.6: Sigfox module fails to switch on. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Figure 5.7: A Sigfox warning event for a break in message sequence. . . . . . . . . . . . . . . . . 53

Figure 5.8: Example of an email received using a Sigfox data callback. . . . . . . . . . . . . . . . 54

xiii

Page 14: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 5.9: Callback error to Cloudthing platform. . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Figure 5.10: Data received at the Wia platform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Figure 5.11: Tago dashboard view of the data widget. . . . . . . . . . . . . . . . . . . . . . . . . . 56

Figure 5.12: Amazon AWS DynamoDB table. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

Figure 5.13: Results obtained with Amazon AWS platform . . . . . . . . . . . . . . . . . . . . . . 57

Figure 5.14: Custom signals received at the Databoom platform. . . . . . . . . . . . . . . . . . . . 58

Figure 5.15: Custom IoT dashboard built at the Databoom Platform. . . . . . . . . . . . . . . . . 58

Figure 5.16: Thinger platform custom dashboard. . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

Figure 5.17: LoRa device and gateway tests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

Figure 5.18: Temperature and humidity values in ThingSpeak platform. . . . . . . . . . . . . . . . 61

Figure 5.19: The successful reception of the payload at the TTN platform. . . . . . . . . . . . . . 62

Figure 5.20: The unsuccessful reception of the GPS signal at TTN. . . . . . . . . . . . . . . . . . 62

xiv

Page 15: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

List of Tables

Table 2.1: The Internet of Things three main segments. . . . . . . . . . . . . . . . . . . . . . . . 10

Table 2.2: Nine settings where IoT creates value (adapted from [22]). . . . . . . . . . . . . . . . . 10

Table 2.3: Complementary aspects of cloud computing and the IoT [30]. . . . . . . . . . . . . . . 14

Table 2.4: Possible layers of a fog computing architecture (adapted from [38]). . . . . . . . . . . 15

Table 2.5: IoT attacks characterized by type [15]. . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Table 3.1: Short and long range IoT Technologies [59]. . . . . . . . . . . . . . . . . . . . . . . . . 20

Table 3.2: Differences between Sigfox and LoRa/LoRaWAN. . . . . . . . . . . . . . . . . . . . . 30

Table 5.1: Shield solutions for the Sigfox module. . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Table 5.2: Shield solutions for the LoRa module. . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

xv

Page 16: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

xvi

Page 17: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

List of Acronyms

3GPP 3rd Generation Partnership Project

ABP Activation By Personalization

BPSK Binary Phase Shift Keying

BSS Business Support System

CSS Chirp Spread Spectrum

DDoS Distributed Denial-of-Service

DSL Digital Subscriber Lines

ETSI European Telecommunications Standards Institute

FSK Frequency Shift Keying

FTC Federal Trade Commission

IEEE Institute of Electrical and Electronics Engineers

IoE Internet of Everything

IoT Internet of Things

IoTSF Internet of Things Security Foundation

IP Internet Protocol

ISM Industrial, Scientific and Medical

ISO International Organization for Standardization

ITU International Telecommunication Union

LPWAN Low Power Wide Area Network

LTE Long-term Evolution

M2M Machine-to-Machine

MTC Machine Type Communications

xvii

Page 18: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

OSS Operations Support System

OTAA Over The Air Activation

QoS Quality of Service

RFID Radio-frequency Identification

SoC System on a Chip

UNB Ultra-narrow Band

xviii

Page 19: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

xix

Page 20: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

xx

Page 21: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Chapter 1

Introduction

This chapter presents a brief overview of the scope and history of the Internet of Things as well as the

motivations that led to choose this project. The objectives established for the thesis and the work structure

are presented.

1

Page 22: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

1.1 Motivation

The introduction of the personal computer into society changed the way people live their lives, from how

they interact with each other to how they conduct business. Today, computers can be found everywhere

and with them came a series of new technologies that helped shape the world. One of these technologies

was the Internet. Mark Weiser, a computer scientist who coined the term of ubiquitous computing [1],

meaning devices which can be used anytime, anyplace and in any format, said in 1991 that "The most

profound technologies are those that disappear. They weave themselves into the fabric of everyday life

until they are indistinguishable from it" [2].

Now the next revolution is coming in the form of the Internet of Things (IoT). Although the concept is said

to have originated in 1991, as ubiquitous computing, the term was first coined in 1999 by Kevin Ashton

during a presentation on the use of Radio-frequency Identification (RFID) [3]. Still, it was only in the past

years that the IoT has begun gaining momentum, not only in the technology side, due to the appearance

of new technologies, but also on the marketing side. Today, it can be found on the industrial, commercial

and consumer markets. However, its meaning and definition are still in a fog. It comes attached with

many names and related to a series of technologies, such as Internet of Everything (IoE), the industrial

Internet, industry 4.0. [4], cloud computing, Machine-to-Machine (M2M) communications, and big data,

to name a few. All these concepts and technologies are, in a way, a part of IoT and a part of a world

connected to the internet. In the Information and Communications Technology (ICT) paradigm, which is

focused on representing all things relating to communications in computer and digital technologies, the

IoT adds a new dimension, the "Any Thing Connection", shown in figure 1.1. This new dimension joins

the already existing "Any Time" and "Any Place" connections [5] which refer to communications that can

be made independently of the time or place, whether outdoors, indoors, at night or during the day. The

new "Any Thing" connection enables communications between: personal computers; humans, without the

use of PCs; humans and IoT devices; and between IoT devices.

With this new dimension a series of new business opportunities arise. With predictions in the range of 20

to 30 billion connected devices by 2020 [6], global spending of 1.4 trillion dollars by 2021 [7] and the fact

that today billions of devices generate more than two Exabyte’s of data each day [8] confirm that IoT is

quickly rising to a definite stay in our everyday lives. According to a Verizon report [9], 2016 was the year

that the IoT gained the most momentum and 2017 gave definite proof that IoT solutions are the next big

step. In the same report, 73% of executives were either researching or deploying IoT related solutions in

their companies.

Smart home, e-Home, automated or connected home is a living environment filled with advanced automatic

computer systems [10], with its primary function to improve and simplify the quality of life of its inhabitants.

In a Gartner [11] report it was estimated that by 2022 a typical family home will contain 500 smart

devices and today the smart home represents one of the fastest growing settings of IoT. This growing

interest in smart homes can be seen in another study, made in the UK by Deloitte [12], where 66% of

2

Page 23: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 1.1: New dimension in the ICT paradigm adapted from [1].

consumers agreed that connected devices had the potential to make their lives more comfortable. Advances

in the smart home setting can already be seen today, as smart assistants coupled with advancements in

AI, pushed by big technology companies, enable things like smart lighting and smart appliances. Other

devices, such as thermostats, smart locks, health monitoring and pet tracking systems are also entering

the home of consumers. One market which has seen tremendous growth due to smart home technology

development is the IoT platform services, as seen in a 2017 report which states that IoT platforms, in the

IoT consumer segment, have a 21% focus on the smart home [13]. Smart homes have very high market

potential, but there are also many issues to overcome from the user point of view, such as [11]:

• Security: one of the most critical aspects for customers. It represents the steps taken to protect the

home, either through hardware or software security, from such threats as Internet attacks, robberies

or IoT device tampering.

• Ease of Use: the system must be easy to understand and work with, offering a comfortable experience.

• Cost: price stands as one of the most delicate aspects in all business areas and can hinder smart

home device adoption.

• Convenience: problems must be easy to solve; if possible, without user intervention. This makes

monitoring, control and intelligence vital functions of the smart home.

• Energy Efficiency: electricity represents significant costs in most countries and it is where Low Power

Wide Area Network (LPWAN) technologies are starting to take center stage as leading devices in

energy consumption and battery life.

• Privacy: the costumer expects that his personal and home information remain guarded. For example,

in cases where the devices have a direct internet connection, it is imperative to guarantee that they

have the necessary protection against possible security attacks.

3

Page 24: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

In the years to come, the Internet of Things is sure to become a large part of society and will be

incorporated in every setting possible, blending its way into cities, homes, hospitals and more, until it

merges into the fabric of everyday lives just as Mark Weiser predicted. The most important feature of

IoT is the impact it will have on several aspects of the daily lives of its users, in both the working and

domestic fields [14].

1.2 Objectives

The main objective of this work is to develop a smart home system using LPWAN IoT technologies. To

achieve this, specific objectives were defined:

• To study IoT, its challenges and technologies with a focus on LPWAN.

• To analyze the two most significant LPWAN technologies in the market, Sigfox and LoRa, while

also studying their differences in the smart home context.

• To study the various IoT platforms that have a focus on the smart home setting.

• To create a prototype using Sigfox technology and to synchronize it with IoT platforms chosen, to

obtain a user friendly smart home system.

• To create a prototype using LoRa technology and, like Sigfox, to synchronize it with the IoT

platforms chosen.

• And finally, to compare the technologies and analyze the results from both experiences.

For each topic discussed in the following chapters there are several papers addressing each subject at

length, whether it be IoT [5], security [15], rights [16], LPWANs [17], Sigfox and LoRa [18] technologies.

In fact, for each of the latter, a different thesis could be written, covering the subject with a more in-depth

focus. This work provides an overview on several of these topics and a basic understanding regarding an

IoT project, and brings innovation by building a IoT smart home project from its most basic stage, the

devices from which information is captured, to the very last, where through the use of IoT platforms a

customer may use the information for their gain.

4

Page 25: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

1.3 Structure of the Dissertation

The present document is divided into six chapters and one annex.

In Chapter 2, the definition, the architectural reference model and other fundamental concepts of IoT are

addressed. An overview of technologies related to IoT, like cloud computing and M2M communications,

as well as the challenges that IoT faces and their impact on its adoption are also discussed.

In Chapter 3, some of the communication technologies behind IoT are reviewed, with a focus on LPWAN.

A more in-depth study on Sigfox and LoRa technologies is presented as well as a discussion on their

differences. An analysis of the state of the art is conducted.

In Chapter 4, the prototype developed with Sigfox is presented along with an explanation of the architecture

used and the steps taken to synchronize the service with the IoT platforms tested. The testing and

implementation of LoRa technology as well as the steps taken for the synchronization of the devices with

their respective IoT platforms are detailed.

In Chapter 5, the results and the analysis of the work are presented and the problems faced during the

project are addressed.

In Chapter 6, an overview of the work is presented with its main objectives revisited and discussed. The

chapter ends with some ideas regarding the possible continuation of this work.

All work presented in this thesis was made using a Macintosh MacBook Pro. Icons used in several figures

were made by Freepik and Kiranshastry and can be found in [19]. The annex contains code created for

the prototype used in the work.

5

Page 26: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

6

Page 27: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Chapter 2

The Internet of Things

In this chapter, the basic concepts and other fundamental aspects of IoT are addressed. Challenges faced

by IoT, such as security, privacy, standards, rights and legal issues are also reviewed.

7

Page 28: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

2.1 Defining IoT

In recent years the IoT has become a favorite topic of discussion, an industry buzzword but also a clouded

term. There are several advances in technology fields which prompted the appearance of IoT. These

technologies continue to evolve alongside it, providing it with new ways for implementation. Among them

are [20]:

• Ubiquitous Connectivity: more devices at lower costs coupled with new technologies and faster

connection speeds, are slowly connecting the world to the internet.

• Widespread adoption of IP-based networking: more devices connected to the internet and better

software programs enable an IoT connected world.

• Miniaturization: computers with better performance while, at the same time, diminishing in size,

price and power consumption, speed the advance of computer technologies.

• Advances in Data Analytics: new algorithms capable of solving more complex tasks, better and

bigger data storage and higher computing power enable new ways for data analysis that can generate

added value, information and knowledge.

• Cloud Computing: allows for small and distributed devices to use more powerful servers capable of

advanced analytic and control capabilities for the processing, management and storing of information.

There is not a clear consensus on what IoT is. Different organizations have put forward slightly different

definitions. According to the International Telecommunication Union (ITU) it is “a global infrastructure

for the information society, enabling advanced services by interconnecting (physical and virtual) things

based on existing and evolving interoperable information and communication technologies (ICT)” [5].

Figure 2.1 shows a technical overview of the IoT.

As the figure shows, in IoT there are physical and virtual things. The physical things are objects which

can be sensed, actuated and connected. Examples include machines, goods, appliances, buildings, vehicles,

animals, plants, soil and even people. The virtual things are movies, music, books, tickets and application

software, among others, which can be stored, processed and accessed.

Physical things are connected to devices which in turn can be represented in the information world by one

or more virtual things, with the latter being able to exist without being associated with a physical thing.

The devices are hardware equipment capable of communication and, if necessary, with sensing, actuation,

data capture, data storage and data processing capabilities. They collect information from the physical

world and send it to the information world. They can communicate between themselves in three ways:

through communication networks, shown in the figure by the "b" connection; without communication

networks, shown by the "c" connection; or with gateways, which can be compared to bridges responsible

for ensuring that the information arrives at its proper destination, shown by the "a" connection. Virtual

8

Page 29: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 2.1: Technical overview of the IoT [5].

things can also exchange information without the need of the physical things they are connected to. The

devices in figure 2.1 can be categorized into four different types [5]:

• Data-carrying devices: they connect to physical things in order to bridge the gap between the latter

and communication networks, for example RFID tags.

• Data-capturing devices: they have the capability to interact with physical things, for example devices

capable of reading QR codes, bar codes and RFID tags.

• Sensing and actuating devices: they interact with physical things in the environment. They detect

and measure information or convert signals into operations, respectively.

• General devices: with processing and communication capabilities such as smart phones, home

appliances and industrial machines.

The devices, described previously, are used in many different applications. These applications can be

grouped into several categories. However there is not a consensus on these classifications. In [21] the IoT

segmentation is presented in table 2.1 and in [22] in table 2.2.

In table 2.1 the consumer segment is directly related to an individual or family. Normally devices in this

segment have shelf lives between months and years with limited maintenance, with an individual capable

of having numerous of these devices. The commercial segment shares characteristics of both the consumer

and industrial IoT. It deals with inventory, tracking, management and data analysis. In some cases this

segment is grouped with the industrial segment. Lastly, the industrial IoT, is the area where solutions are

custom tailored for each application [23].

9

Page 30: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Table 2.1: The Internet of Things three main segments.

Consumer IoT Commercial IoT Industrial IoT

Smart Appliances Retail Heavy Machinery

Wearables Asset Tracking Transportation

Auto-Industry Medical Equipment Power Plants

Smart Homes Smart Cities

The segmentation in table 2.2 presents the nine settings in which IoT is expected to create value for

industry and users alike. It was made by reviewing three hundred IoT applications. The categorization

by settings was proposed as a better alternative to the more conventional approach of categorizing

vertical industry markets. For example, in a city setting sensors in cars can be used by an automaker to

determine when a vehicle needs maintenance, but they can also be used to help manage traffic congestions,

maximizing the use of smart devices.

Table 2.2: Nine settings where IoT creates value (adapted from [22]).

Setting Description Examples

HumanDevices attached to or

inside the human body

Devices to monitor and maintain human health;

disease management, increased fitness, higher productivity

Home Residential buildings Home controllers and security systems

RetailWhere commercial

exchange takes place

Stores, banks, restaurants, arenas, self-checkouts,

in-store offers, inventory optimization

Offices WorkspacesEnergy management and security in office buildings;

improved productivity, including for mobile employees

FactoriesStandardized production

environments

Hospitals and farms; operating efficiencies,

optimizing equipment use and inventory

WorksitesCustom production

environments

Mining, oil and gas, construction; operating efficiencies,

predictive maintenance, health and safety

VehiclesSystems inside

vehicles

Cars, trucks, ships, aircraft and trains;

condition-based maintenance, usage-based design, pre-sales analytics

Cities Urban environments

Public spaces and infrastructure in urban settings;

adaptive traffic control, smart meters, environmental

monitoring, resource management

OutsideBetween urban environments

(and outside other settings)

Railroad tracks, autonomous vehicles and flight navigation;

real-time routing, connected navigation, shipment tracking

10

Page 31: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

2.2 The IoT Reference Model

There is no standard architecture for IoT. Depending on the communication technology used, or re-

quirements for the project, the architectures may use a different number of layers [24]. Some differ

in their abstraction levels, going into considerable detail on the layers used. Other go beyond IoT to

include business layers [25], manufacturing and logistic details, while others focus on the industry aspects.

Reference models proposed for the IoT, with the status on their development can be found in [26]. One

of the most critical technologies for IoT architecture [27], that finds itself under the IoT umbrella, its

Machine-to-Machine (M2M) communications, sometimes referred as Machine Type Communications

(MTC). Considered a key enabler for IoT, M2M communications is how mechanical or electronic devices

communicate and share information with each other and with other applications, most of the time without

the intervention of a human counterpart.

The International Telecommunication Union (ITU) proposed reference model for IoT is the one that

better applies to a higher number of solutions, because of its level of abstraction. Figure 2.2 presents this

architecture consisting of four layers: the device, the network, the service and application support and the

applications layer. Present in all these layers are management and security capabilities.

Figure 2.2: IoT reference model [28].

The device layer, sometimes referred to as the perception or sensing layer, is composed by devices and

gateways. The device capabilities are responsible for tasks such as identification, gathering and uploading

11

Page 32: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

information from the environment or from the thing they are connected to. Devices may also support

"sleeping" and "waking-up" features to save power and can build networks in an ad-hoc manner in

scenarios where increased scalability and quick deployment may be needed [5]. Gateways are protocol

converters and their capabilities are needed when communications at the device layer differ from the ones

used at the network layer, for example, when a Sigfox communication is used at the device layer and

a 3G communication is used at the network layer. For this reason gateway capabilities need multiple

interfaces support. At the device layer wired or wireless technologies such as ZigBee, Bluetooth, Wi-Fi,

Sigfox, LoRa, 2G, 3G, Long-term Evolution (LTE) and Ethernet can be used. Gateways are not always

necessary, for example when the protocol used in the device is the same as the network layer and, in that

case, the exchange of information is done directly between the device and the communication network.

The network layer is responsible for the transport and networking capabilities. The networking capabilities

connect things to networks and maintain the connectivity. They include functions for access control,

mobility management, routing and resource allocation. The transport capabilities are in charge of assuring

the transport of the IoT application data, from the device layer to the service layer, and IoT-related

control and management information. The network layer is capable of supporting network layer protocols

such as IPv4 and IPv6, cellular networks (2G, 3G and LTE) and various technologies, such as Ethernet,

Wi-Fi and Digital Subscriber Lines (DSL) among others [28]. One important aspect regarding this layer is

the increasing number of IoT devices connected to the internet, which the current IPv4 network protocol

cannot support, due to address limitations. As such IPv6 will prove critical in the advancement and

adoption of IoT, playing a major role in handling the network layer scalability.

The service and application support layer, also called the middleware layer, creates and manages services

required by users or applications. It is a software layer responsible for generic support capabilities that can

be used for different IoT applications like data processing or data storage as well as specific capabilities

that are catered to specific applications. It is on this layer that the management of data, search engines,

communication and information exchange and storage occurs [29]. In [27] an architectural framework for

the M2M service layer was proposed, positioned between the application layer and network layer of the

IoT reference model. In it M2M is be responsible for capabilities such as device discovery and registration,

identification, naming and addressing, group management, location provisioning, accounting, and charging,

among others.

The application layer, is responsible for the interaction methods with users or applications. This layer

contains the IoT applications, corresponding to the settings described in table 2.2, such as smart home,

e-health, smart-grids, etc. It is at this layer that the user gets important real-time information [24].

The security and management capabilities are transversal to all layers of IoT architecture. Both are

divided into general and specific capabilities. In security, the generic capabilities include authorization,

authentication, privacy protection and data confidentiality. The specific capabilities depend on the IoT

application in use and can be, for example, tighter security requirements or better mobile payment security.

In management, the generic capabilities include functions such as device management, for example,

12

Page 33: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

remote device activation and deactivation, local network topology management, traffic and congestion

management and status monitoring and control. Specific capabilities are normally application specific.

2.3 Cloud Computing

Cloud computing is way to store, manage and process data in a network server, which is hosted on the

Internet, instead of using a local server or personal computer. It eases the process of collecting and

processing the information from the IoT devices, and also enables the rapid setup of new ones, lowering

the costs for the deployment of IoT solutions and complex data processing [30]. The cloud handles the

data flow to and from the client, data synchronization between devices and data processing [8]. It is in

the cloud that all the information from the billions of IoT devices is stored, processed and analyzed.

The advantages offered by the cloud to IoT are better seen when one considers the complementary aspects

of both technologies as shown in table 2.3. The cloud acts as a centralized manager that can see all the

applications requiring computational effort, and therefore reallocate its resources to better manage its

demands. There are three main drivers for cloud usage in IoT [30]:

• Communication: the cloud offers low cost solutions to connect, track, and manage any thing from

anywhere at any time by using web portals and specific applications. Coupled with high speed

networks, monitoring and control of remote things, their coordination, communication and real-time

access to the produced data, becomes possible.

• Storage: cloud offers the most convenient and cost effective solution to deal with the data produced

by IoT. It enables new opportunities for data aggregation, integration, and sharing with third

parties.

• Computation: with virtually unlimited processing capabilities, performing real-time data analysis

to implement scalable, real-time sensor-centric applications, for managing complex events and for

supporting task offloading for energy saving, becomes possible for IoT solutions.

For LPWAN technologies, cloud computing takes an even bigger role as report [31] shows. In it, IoT

devices are separated by their computational abilities where LPWAN solutions were found to rely heavily

on the cloud, due to their low computational abilities, for data storage and management, focusing only on

data acquisition.

The cloud can also offer opportunities to implement applications and services that exploit the things and

the data they produce, for example, IoT platforms. These platforms aim to reduce development risk and

cost so that companies can bring products to the market faster and more easily. They are capable of

displaying the information sent from the devices in a easy to use and appealing way, giving users a new

way to interact with their devices and companies a way to manage their fleet. In [32] a list of 450 IoT

13

Page 34: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Table 2.3: Complementary aspects of cloud computing and the IoT [30].

IoT Cloud

Displacement Pervasive Centralized

Reachability Limited Ubiquitous

Components Real world things Virtual resources

Computational capabilities Limited Virtually unlimited

Storage Limited or none Virtually unlimited

Role of the Internet Point of convergence Means for delivering services

Big data Source Means to manage

Platform companies is presented, where big technology companies, like Microsoft [33], Amazon [34] and

Google [35] already offer IoT platform solutions.

Big Data is another new term born from the continued expansion of cloud computing and IoT. It represents

not only the large amounts of data that the cloud stores, but also what can be gained by managing that

data, labeling, processing and analyzing it. IoT is expected to generate most of the information for big

data, which coupled with the benefits of the cloud will enable the possibility to perform extremely complex

analysis, data driven decision making and develop better prediction algorithms at low costs [30].

IoT cloud computing solutions bring some challenges as well [36], such as: the cost of the transfer may

be high, depending on the amount of information; storing large amounts of data on the cloud may be

expensive; Internet access may be unavailable, unreliable and slow, or congested by big data transmissions;

Internet transmissions may increase the probability of information leakage; the devices that do not have

the necessary security measures may be targeted for Distributed Denial-of-Service (DDoS) attacks; and

others. Fog computing, sometimes referred as edge computing, solves most of aforementioned problems.

Fog computing acts as a middle cloud between the devices and the cloud, moving closer to the things

that produce and act on IoT data. Any device with computing and storage capabilities that has network

connectivity may act as a fog node. Some of the most important characteristics of fog computing solutions

are [37]: fast transmission speeds; wide-spread geographical distribution; mobility; and a very large number

of nodes.

Table 2.4 shows the differences between the layers of fog nodes and the cloud. After receiving information

from the things it is then up to the fog IoT applications to decide where the data should be sent for analysis.

The most time-sensitive information is acted upon by the fog nodes closest to the things generating the

data, as shown in the table. Data that can wait seconds or even minutes for action can be passed along to

an aggregation node for further analysis and action. Finally, the data which is less time sensitive can be

sent to the cloud for storage, historical analysis and big data analytics. Examples of devices which may

take advantage of fog computing are generally time sensitive, such as opening doors, zooming on security

cameras, opening pressure reading valves, switches and routers.

14

Page 35: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Table 2.4: Possible layers of a fog computing architecture (adapted from [38]).

Fog Nodes Close to IoT Devices Fog Aggregation Nodes Cloud Services

Response time Milliseconds to subsecond Seconds to minutes Minutes, days, weeks

Application examplesTouch communications,

telemedicine and training

Visualization,

Simple analytics

Big data analytics,

Graphical dashboards

Data storage duration TransientShort duration: hours,

days, or weeksMonths or years

Geographic coverage Local: one city block Wider: entire cities Global

2.4 Standards

Standardization brings a lot of benefits to technology areas but it can also be a very slow process, hindering

rapid success or adhesion. According to [22] 40% of the IoT total value that can be unlocked requires

different IoT systems to work together.

There are several organizations currently working on IoT standards, such as: the European Telecommuni-

cations Standards Institute (ETSI) [39], the Institute of Electrical and Electronics Engineers (IEEE) [40],

the International Organization for Standardization (ISO) [41], and the International Telecommunication

Union (ITU) [42]. The European Commission is also working in IoT standardization, launching a paper

[43] on the standardization requirements for IoT technologies where the current standards are reviewed,

the gaps are discussed and recommendations for the future are presented. A table with all organizations

working on IoT standards and their standardization activities can be found in [44].

There were not found any standards from ETSI specifically relating to IoT. However the organization has

various standards under development which relate to technologies associated with it. Most of these are

about M2M communications and, for example, the impact that smart city activity could have on IoT

environments.

IEEE was the organization found with most standards associated to IoT, but like with ETSI, specific

ones for IoT, were not found. It has eighty IoT related standards, such has wireless access in vehicular

environments, health informatics and others like Ethernet standards which, although under the IoT

umbrella standard division, are not about IoT.

ISO has a technical committee, the ISO/IEC JTC 1/SC 41, with a scope on the IoT and related technologies.

These include sensor networks and wearable technologies. It has fifteen published standards focusing

on sensor networks, underwater acoustic sensor networks and IoT use cases. Nine others are currently

under development, for example on IoT definition and vocabulary, the interoperability in IoT systems,

underwater acoustic sensor networks and the IoT reference architecture.

15

Page 36: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

ITU was found to have only e-health IoT related standards, and a recommendation specific to IoT

technology. The recommendation gives an overview on the technology, its scope and reference model [5].

Other recommendations, such as how M2M can be incorporated in IoT architecture were also found.

When it comes to cellular technologies used in IoT, the organization responsible for developing standards is

the 3rd Generation Partnership Project (3GPP), which is composed of seven telecommunications standard

development organizations. The 3GPP has continued to move forward in the standardization of IoT

related technologies. NB-IoT, a promising low power technology has seen, in 2016, its standardization

complete, with the Release 13 specification [45]. The organization now turns to the introduction of 5G

technology, expected to be used in IoT solutions.

2.5 Privacy and Legal Issues

The amount of information captured by IoT devices, along with advances in processing, capable of building

personal profiles, lead to questions of privacy which are one of the main concerns when it comes to

challenges presented by IoT technologies. In [46], 80% of IoT devices were found to violate the privacy

of personal information, such as name and date of birth. More than 80% failed to ask for passwords of

sufficient length and complexity and 60% had security vulnerabilities in their user interfaces [46].

Over the last few years reports made by government bodies address some of these challenges. In [16],

aspects of the European Union protection laws, in regards to IoT, are discussed. In America, the Federal

Trade Commission (FTC) also faces challenges of rights and legal aspects, publishing reports on security

and privacy [47].

Starting with personal data, under EU law, users of IoT devices will qualify as data subjects, which means

that if a device possesses personal information about that user, the individual in question will be classified

as a data subject even if the device does not belong to them. The stakeholders, which are classified

as data controllers, are responsible for processing and for the purpose of personal data. Examples of

stakeholders include device manufacturers, social media platforms, data hosting providers and third-party

application developers. The way the personal data is handled is also addressed under EU law, with the

consent of the data subject on how the information is processed a key aspect, but keeping in mind that

personal data process may be a necessity for the performance of the contract or application which the

data subject agreed to. Additionally, that same data process may be necessary for the legitimate interest

of the data controller, except when it conflicts with the fundamental rights of the data subject. The

fairness of data handling and processing is also addressed. Aspects like purpose limitations, which state

that the data collected must have specific, explicit and legitimate proposes are addressed. Furthermore,

data minimization aspects are mentioned as well, which discuss how the data should only be collected for

the necessary use, and not stored by default.

16

Page 37: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

In [48] other points ranging from transparency, security, data subjects rights, processing of sensitive data

like health information and recommendations to stakeholders and device manufacturers are presented.

However, all these challenges expressed previously represent only a small part of the problems facing IoT

and the prospect of a connected world. For example, legal issues also encompass problems such as: cross

border data flows; data discrimination; the case of IoT in the aid of law enforcement and public safety,

which leads to questions of mass surveillance systems; the liability of IoT devices; and the proliferation of

legal actions in regards to IoT [20].

2.6 Security

There are an extensive number of security attacks, to which IoT is vulnerable, that can be categorized

by type. They are: physical attacks, network attacks, software attacks and encryption attacks. Table

2.5 shows some of these attacks. In the following section only what are considered the worst attacks in

accordance with [15] will be discussed.

Table 2.5: IoT attacks characterized by type [15].

Physical Attacks Network Attacks Software Attacks Encryption Attacks

Node Tampering Traffic Analysis Attacks Virus and Worms Side-channel Attacks

Malicious Code Attacks Sinkhole Attacks Spyware Cryptanalysis Attacks

Sleep Deprivation Attacks Denial of Service Trojan Social Horse Man in the Middle Attacks

Physical Damage Man in the Middle Attacks Malicious scripts

RF Interference Sybil Attacks Denial of Service

Starting with the physical attacks, the malicious code injection attack is considered one the worst. In this

type of attack, a new malicious code is uploaded to devices or gateways that contains a virus or a new

device is added to the network, already infected. The affected device can then send the wrong information

to other devices in the network and corrupt them. The attacker may gain access to the network and

even cause the service to become unavailable. Defenses to this type of attack are, among others, secure

authentication and booting, intrusion detection technology or a monitoring verification scheme, where

a monitoring node verifies others for abnormal behaviour and acts accordingly. Other types of attacks

found in this category are, for example, node tampering or direct physical damage, meaning devices that

have been altered, replaced or damaged respectively. These leave the information contained in that device

susceptible to being taken, such as encryption keys, routing tables, communication keys among others.

This leads to the device becoming a threat to the higher levels of the architecture.

In the network attacks section, the sinkhole attack is one of the most dangerous. In this attack a device is

compromised and used to commit the attack. The attack is made by faking the routing information so

that the other devices on the network think the compromised device is the closest to a base station or

17

Page 38: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

gateway, redirecting the traffic to it, which can then result in altered or even dropped data. Defenses

include encryption and secure authentication so that the compromised node cannot enter the network,

or security measures added directly on the packets sent. Other types of attacks include man in the

middle attacks where an attacker intercepts data sent between nodes through the Internet, or Distributed

Denial-of-Service (DDoS) attacks where an attacker floods the network with traffic leaving it unavailable

or unusable.

Viruses, worms, spyware and adware are the worst and most common type of attack in the software section.

These attacks are made with malicious code, capable of replicating itself, and are normally transmitted by

emails or by downloading files from the Internet. Defenses against these types of attacks include anti-virus,

anti-spyware and anti-adware software as well as advanced encryption and web application firewalls.

In encryption attacks, the side-channel attack constitutes one of the most dangerous. This type of attack

uses cryptosystems, which are a series of cryptographic algorithms most commonly used in encryption,

to gain information about the system such as power management, time to perform tasks on the system,

partial or full plaintexts or even the cryptographic key. There are several types of side-channel attacks,

such as timing attacks, which measure how much time computations take to perform, or differential fault

analysis attacks, where secrets about the system can be uncovered through the introduction of faults in

computations. Defenses against this type of attack focus on advanced encryption techniques.

More attacks and their counter measures can be found in [15] and [49]. These attacks endanger the

perception and adoption of IoT, and there are already cases that have put IoT adoption into question due

to particular attack cases. In the smart home setting, for example, ways to control personal assistants

in the home through the use of ultrasounds imperceptible from humans [50] have been found. By using

normal voice commands and transforming them using programs, through the use of harmonics, that shift

the signal into frequencies above the human hearing range. These attacks gained the term of "dolphin

attack" because of the way dolphins use high pitched noises for echolocation. There are also worries

that IoT devices with cameras represent a way to introduce a camera into peoples homes [51]. Hardware

hack techniques, called flash memory attacks, exploit software bugs that not only expose the hacked

device but every other unit of that model [52]. Other, more personal and concerning problems are hacked

baby monitors [53], or being able to stop a pacemaker from working [54]. To face these problems the

Federal Trade Commission (FTC) and other organizations like the non-profit Internet of Things Security

Foundation (IoTSF) have provided reports [55] and studies [56] to alert to the possible dangers that IoT

may bring and the first steps to prevent them.

18

Page 39: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Chapter 3

Communication Technologies for the IoT

This chapter addresses some of the technologies which power the IoT. An overview of LPWAN technologies

is presented, followed by a comprehensive look and discussion on the various aspects of Sigfox and LoRa

technologies. Subsequently, a look at current hardware solutions for the smart home and some commercial

applications are presented.

19

Page 40: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

3.1 Wireless Technologies

In IoT there is not a solution to fit every project and to find a technology that fills the necessary

requirements for it, a compromise between range, data rate and transmit power must be found. Some

of the most important design factors when choosing a wireless technology are [57]: data rate; range or

distance from the gateway; the environment; the need for encryption or authentication; power consumption;

the capacity of the network (number of connected devices); quality of service and reliability; the network

topology (star, mesh or other); one-way or two-way communications; licensed or unlicensed spectrum;

available integrated circuits, modules and equipment; the cost (design, manufacturing and internet access);

the development platform (if software is required); the type of internet access; and licensing conditions of

standards available.

There are various wireless technologies which can be used in IoT projects, such as: cellular technologies;

Wi-Fi; Bluetooth; Zigbee; Sigfox; LoRa; and Weightless. Figure 3.1 shows the relation between range and

bandwidth offered by several IoT technologies. LPWANs offer the greatest range with very low bandwidth,

which no other technology can match.

Figure 3.1: Range versus bandwidth [58].

There are several ways to classify these technologies, whether from short to long range [59] or from low to

high power. Table 3.1 represents nine technologies grouped from short range to long range, both LPWAN

and cellular.

Table 3.1: Short and long range IoT Technologies [59].

Fixed & Short Range Long Range Cellular Long Range LPWAN

Wi-Fi LTE-M Weightless

Bluetooth NB-IoT Sigfox

Zigbee EC-GSM LoRa

20

Page 41: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

The most used Wi-Fi protocol, is the 802.11. It operates in the 2.4 GHz or 5GHz band and can handle

speeds from 300 Mbps to 1.3 Gbps, with ranges up to 100 meters depending on the environment. New

advancements in Wi-Fi continue to be made with the Wi-Fi Alliance planing to implement a program for

testing and certification of the 802.11ah protocol by 2018. This new protocol, nicknamed HaLow, is set to

compete with IoT technologies by using lower bandwidth and power with frequencies below the 1 GHz

band [60]. HaLow has a data rate of 150 kbps to 345 Mbps and can reach up to a kilometer with the

right antenna. Another Wi-Fi standard with focus on IoT settings is the 802.11af, which uses TV white

spaces or unused TV channels from 54 to 698 MHz. Stations use a database to confirm which channels

are available for transmission [57].

Bluetooth operates in the 2.4 GHz band. It has several different versions which offer different data rates,

power levels and range potentials. Normal data rate is 1 Mbps, with 2.1 Mbps and 3 Mbps possible [57].

It has three ranges, the first reaches up to 100 meters, the second 10 meters and the third only has a

reach of one meter. The last version, Bluetooth 5.0, offers a specific connection for long range, with the

worst case being 200 meters outdoors and 40 meters indoors [61].

Zigbee is a technology based on IEEE 802.15.5 standard for low rate wireless personal area networks. It

operates in the 2.4 GHz band but it also has the ability to be used in the sub 1 GHz bands. Data rates

in the 2.4 GHz band are 250 kbps, and in the sub 1 GHz are 20 kbps. It has a reach of 100 meters in

line-of-sight conditions [57].

LTE-M can be used to refer to all LTE based technologies for IoT. This includes LTE-Cat-1, LTE-Cat-0,

LTE-Cat-M1 and eMTC. These represent simplified versions of LTE, especially designed for low power

and low speed, with Cat-0 and Cat-1 solutions offering data rates of 1 Mbps and 10 Mbps respectively.

They have battery life up to ten years [62] and use licensed frequency bands. LTE IoT objects will use

SIM cards for security [63].

NB-IoT, which stands for Narrowband IoT, is a new radio technology being standardized by 3GPP. It uses

14 different frequency bands with 10 of them in the sub-GHz range [64]. It offers low complexity (close to

90% in comparison to Cat-1 [62]), low power consumption and long range, with data rates ranging from

100 kbps to 1 Mbps. This new standard can also be deployed in any LTE network as a software overlay

[57], and depending on traffic and coverage needs can achieve a battery life close to ten years.

EC-GSM which stands for Extended Coverage GSM, is an evolution of EGPRS towards IoT, with data

rate between 70 kbps and 240 kbps and like LTE-M and NB-IoT offers a battery life in the ten year range

[65]. This standard includes the latest enhancements to the GSM and EGPRS standards to support better

coverage, with the possibility of being deployed in existing GSM networks [62].

Last but not least, 5G technology is expected to play a bigger role in the IoT future but is still a few

years away, with its first specification released in the end of 2017 and a goal to complete Release 15 in

mid 2018 [66]. These new cellular IoT solutions although still a few years away from being deployed are

considered the biggest threat to LPWANs like Sigfox and LoRa.

21

Page 42: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

3.2 Low Power Wide Area Networks

Before 2013 the LPWAN term did not exist[67]. LPWAN are technologies which focus on three main

aspects:

• Low power: few applications in IoT have the possibility to use a generator for power, so most devices

are powered by batteries. LPWAN devices have a battery life with ranges in 5 to 10 years.

• Long range: wireless networks need some kind of access point (gateway or base station). LPWANs

generally have ranges from 2 to 10 km in urban settings, offering more mobility in deployment and

the need for less gateways [68].

• Low data rates: data rates are generally lower than 5 kbps and therefore LPWANs only send small

packets of information ranging from 0 to 256 bytes [58].

One of the characteristics that separates LPWANs is the type of radio spectrum they use. Most operate in

the sub-GHz band which are Industrial, Scientific and Medical (ISM) bands. These are public, open but

regulated radio bands designed especially for use proposes other than telecommunications. The equipment

in these bands are subject to all interference generated by ISM applications. The most used bands for

LPWANs are generally: the 433 MHz and 902-928 MHz, in Asia; the 902-928 MHz in America; and the

863-870 MHz band in Europe. As the work focused on the 868 MHz band, only this band was reviewed.

The 863-870 MHz band has a power limitation of 25 mW (14 dBm) and a duty cycle of 0.1%. In the

868-868.6 MHz band there is an extension to a 1% duty cycle and in the 869.4-869.65 MHz band an

extension to 10% duty cycle and 500 mW (27 dBm) power is possible, which is normally used for downlink

messages [63].

Currently there is no adopted standard available in the LPWAN market [67] and they are usually defined

by the radio technology used [69]:

• Ultra-narrow Band (UNB): this type of technology uses modulation to achieve a very narrow

bandwidth, reaching greater distances. It only supports low data rates, with a typical payload

being around 12 bytes with its duration taking around 2s [63]. UNB LPWANs are only used in

applications where reliability and Quality of Service (QoS) are not very important.

• Narrowband: this type of technology offers the best compromise between QoS, capacity, cost and

network efficiency. With channel bandwidths around 12.5 kHz wide, they offer the best capacity for

uplink traffic of moderate sized data payloads from a large number of terminal devices;

• Wideband: the channel bandwidth of these technologies range from 500 kHz to over 1 MHz.

As this thesis focus on Sigfox and LoRa, a more in depth discussion of these technologies will be presented

in the following section. Another LPWAN technology is described, chosen for being an open standard.

22

Page 43: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Weightless is a LPWAN open wireless technology, from Weightless Special Interest Group, which includes

three specifications, each catering to a different LPWAN need. Weightless-W operates in the TV white

space, using channels 6 MHz wide in the 470-790 MHz band. It offers bi-directional transmission and the

data rate is between 1 kbps to 1 Mbps. It has a range of 5 km and a battery life around 3 to 5 years.

Weightless-P is a high performance bi-directional communication, using 12.5 kHz wide channels, that

operates in the 169, 433, 470, 780, 868, 915 and 923 MHz bands. Data rates can range from 200 bps to

100 kbps, with a typical range of about 2 km and a battery lifetime of 3 to 8 years. Weightless-N uses

UNB technology, operates in the 800-900 MHz band and only offers uplink transmissions. It has data

rates of 100 bps and has a typical range of 5 km. Intended for low cost applications, it reduces the power

consumption, with battery life up to 10 years [63] [57].

3.2.1 Sigfox

Sigfox has the objective to deploy a global cellular network with a focus only on IoT applications. It is

the most mature LPWAN technology, with their first network deployed in 2012 in France, and currently

present in 45 countries throughout the world [70]. In a move to become a more active player in the

development of IoT standards, Sigfox has joined ITU as a member in 2017 [71].

Technology Characteristics

Sigfox uses a proprietary technology offering low power, low data and long range solutions. It is both a

wireless technology and a network service. It is a UNB technology, works in the ISM band, and in Europe

uses 192 kHz, in the 868-868.2 MHz band [72]. In the rest of the world it uses the 902-928 MHz band,

with restrictions according to the regulations of the country.

Sigfox messages can be bi-directional. The uplink uses Binary Phase Shift Keying (BPSK) modulation

and has a data rate of 100 bps in Europe and 600 bps in America. Each message is 100 Hz wide, and is 0

to 12 bytes long, with the latter taking 2.08 seconds over the air [72]. Europe regulations only permit the

use of the 868 MHz band 1% of the time, which equates to 36 seconds air time in an hour, corresponding

to 140 messages, per day, per device, or roughly six messages per hour. Although messages that use fewer

than 12 bytes would be sent faster, making it possible to send more messages in a day, Sigfox does not

allow it. Sigfox uses the honor system to ensure the users comply with these limitations, saying that it is

the responsibility of the country’s telecommunications authorities to ensure the regulations are followed,

but also saying that if a user abuses the system they can blacklist devices [73]. All Sigfox messages are

sent in hexadecimal format. The Sigfox protocol overhead uses and additional 14 bytes making the Sigfox

frame 26 bytes in total. When a device sends a message, it uses a random frequency and then sends two

replicas on different frequencies and time. The maximum range achieved by Sigfox is in the thirty to fifty

kilometers in the countryside, or three to ten kilometers in an urban setting [17], with battery life usually

in the 10 year range.

23

Page 44: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

The downlink uses G-Frequency Shift Keying (FSK) modulation with a data rate of 600 bps. The downlink

frequency is the frequency of the first uplink message plus a known delta, which puts the frequency

generally 1 MHz higher where the regulations on the band are 10% duty cycle. Downlink messages are

static eight bytes and only four, per device, per day are permitted. If, for example, more than four

messages are sent a best effort will be made to see if more can be received but devices which have not

received the four message daily limit will take precedent. The downside of Sigfox downlink messages is

that they can only be initiated by the devices following an uplink message. There is a twenty second

delay between the first frame and the reception window, that lasts for twenty five seconds maximum [70].

Following the reception of a downlink message, the device has to wait a minimum of six seconds before

sending another uplink message [18].

Architecture

Figure 3.2 presents the Sigfox architecture, which consists of devices, base stations, the Sigfox cloud and

the interfaces used to access the information on it. According to Sigfox [72], the architecture is divided

into two layers: the network equipment layer, and the support systems layer. The network equipment

layer includes the base stations and other equipment, such as antennas, and is responsible for receiving

the messages from the devices and sending them to the Sigfox support systems. The support systems

layer is the core network, or the Sigfox cloud. It is responsible for the processing of the messages sent

from the base stations. This layer also provides the entry point for different actors, which interact with

the Sigfox eco-system, such as Sigfox itself, Sigfox operators, channels and customers, to interact with the

system through web platforms, APIs and callbacks, as shown in the figure.

In the network equipment layer Sigfox implements a star topology where devices connect with base

stations, constantly monitoring for UNB signals. The devices are not connected to a single specific base

station unlike cellular protocols. All base stations near the device receive the message with the average

number of base stations being three, that means that three equal messages are sent to the Sigfox cloud.

The base stations are responsible for detection, demodulation and reporting the messages to the cloud.

Each base station has a direct point-to-point connection with the Sigfox cloud, through the public internet,

with the use of a VPN [72]. This connection uses DSL connectivity, 3G or 4G as a back-up, and when

neither is available, satellite connectivity can be used as an alternative.

The support system layer, present in figure 3.3 shows a detailed view of the Sigfox cloud. The back-end

servers are responsible for message processing, where all the messages that arrive at the cloud are sift

through with only one being stored on the network. The messages are stored in two locations: the

metadata storage to be used by the Sigfox web portal; and the customers message storage, so that the

customers can be able to retrieve them later via APIs or callbacks. It is in the cloud that the status of the

network is monitored and the base stations managed globally. This layer also includes critical modules

and features, such as the Business Support System (BSS) for ordering and billing and the Operations

Support System (OSS), as shown in figure 3.2. The latter are used for management functions, such as for

network inventory, service provisioning, and network configuration. These are all essential functions for

24

Page 45: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 3.2: The Sigfox architecture.

the deployment, operation and monitoring of the network. Also on this layer are the tools to analyze the

data collected or generated by the network.

There are three ways to interact with the Sigfox cloud, as shown in figure 3.2:

• Internet: access to a web portal, through a web browser, made for end-users to access all Sigfox

cloud functions.

• APIs: access to the cloud functionality using APIs in pull mode, permitting the integration of some

of the Sigfox cloud functions in third party applications.

• Callbacks: enable the reception of new events automatically, such as messages in push mode, which

means getting data directly, without asking, by being notified by the Sigfox cloud when a new

messages comes in.

Access to these interfaces and tools depends on the type of profile the user has on the Sigfox cloud. For

example, a user can be only authorized to view messages, manage users and device fleets, see service maps

or check contracts. A distributor will be able to create contracts, while an operator will be able to access

radio planning tools and network monitoring solutions [74].

Callbacks can be custom made or use simplified bridges, with Sigfox currently supporting bridges for

Amazon AWS, Amazon AWS Kinesis, Microsoft Azure Event Hub and IoT Hub. There are three types

of callbacks: data, service and error [75]. Data callbacks can be uni-directional, offering three types

of channels: email, URL and batch-URL. Or they can be bi-directional, offering URL and batch-URL

channels.

Security

Sigfox implements security on all aspects of its architecture, from devices, to data, to radio and the cloud.

At the device level, devices do not have internet connectivity, which ensures that they cannot be hacked

through the internet. Each device has a different key unique to it, which guarantees that the compromise

25

Page 46: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 3.3: A detailed view of the Sigfox cloud [72].

of one device has a limited impact on the system. Also, Sigfox devices have dedicated resistance to

interference available through secure elements, which are microcontrollers that secure applications and

their confidential data. Sigfox devices have three levels of security, with the device maker deciding which

to implement based on use case and sensitivity, which are:

• Medium: stores the security credentials on the device.

• High: stores the security credentials in a software based protected area.

• Very High: stores the security credentials in a secure element, which encrypts the data that is

transferred over the network. Only the device and the end-customer know the secret key and the

algorithm does not impact the size of the payload.

At the data level it has payload encryption as an option, based on Advanced Encryption Standard (AES).

It offers isolation of each part of the network and risk assessment, so that in the case of a hack, only a

minor segment of the network is impacted.

At the radio level, the Sigfox system uses authentication and relay avoidance measures, with the help of

sequence numbers on the messages, with optional anti-eavesdropping measures. Base stations although

26

Page 47: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

connected to the internet also have numerous layers of protection. One of them is the ability of the base

station to only be able to boot from an OS built by Sigfox. In the same way an OS built by Sigfox can

only be run on a base station hardware [72].

At the cloud level, the servers are in secured certified data centers and each rack is protected by biometric

authentication for physical access. The cloud also offers corrupted message detection and has dedicated

solutions against DoS and DDoS attacks, among others.

3.2.2 LoRa

LoRa (LOng RAnge) technology was designed and developed in 2009 by Cycleo [76], and later acquired

and patented by Semtech in 2012 [77]. It is an established LPWAN technology, focused on IoT applications.

Semtech expected it to be present in more than 60 countries around the world at the end of 2017 [78].

LoRa has two distinct aspects. The first is the LoRa physical layer and the second, an open MAC layer

protocol called LoRaWAN, that provides access to the LoRa architecture [79]. To talk about LoRa

one has to address the LoRaWAN protocol, an open standard communication, and the proposed MAC

layer defined by the LoRa Alliance consortium, a non-profit association led by IBM, Actility, Semtech,

Microship and many other members, which drives the advancement of LoRa and the LoRaWAN protocol

[80]. However, LoRa can use other MAC layers protocols.

Technology Characteristics

LoRa is a proprietary technology that uses modulation based on Chirp Spread Spectrum (CSS) [18]. It

is a wideband technology and works in the ISM band. The most used frequencies are: in the USA the

915 MHz band, in Europe the 868 MHz band, and in Asia the 470 MHz band. A LoRa radio has four

configuration parameters, which determine the energy consumption, transmission range and resilience to

noise, which are [81]: carrier frequency, spreading factor, bandwidth, and coding rate.

Those parameters change the way the LoRa/LoRaWAN payloads are transmitted. LoRaWAN can use

channels with a bandwidth of either 125, 250 or 500 kHz, depending on the region or the frequency plan.

The data rate ranges from 250 bps to 27 kbps using a spreading factor of seven and a 500 kHz channel

[65] or, for example, 300 bps to 5 kbps using a 125 kHz channel [82]. LoRaWAN supports data payloads

between 19 to 250 bytes and uses a protocol overhead of 12 bytes [18]. It also offers ranges from two to

five kilometers in urban areas, and fifteen to forty five kilometers in rural areas, with battery life in the 10

year range.

LoRaWAN defines three types of classes for devices: class A, class B and class C. While the implementation

of class A is mandatory, class B and C are optional. In LoRaWAN 1.0 specification only the Class A

devices are supported, but at the end of 2017 the LoRa Alliance released the LoRaWAN 1.1 specification

which supports Class B devices. Class C is not currently supported. Figure 3.4 shows the three classes

with their major differences being the trade off between latency and power consumption [82] [80].

27

Page 48: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Class A, for "All", supports bi-directional communication, where the devices can initiate the data

transmission at any time. After the transmission, the device enters a listening state where it will open,

at minimum, two listening windows waiting for acknowledgment, some type of command, or a data

packet from the network server. If nothing is received, the next opportunity will be after the next uplink

transmission. This class has the lowest power consumption and a high latency.

Class B, for "Beacon", allows for a bi-directional link with scheduled listening time-slots, introduced

to decouple uplink and downlink transmissions. Devices synchronize with the network server by means

of beacon packets, shown as "BCN" in figure 3.4, which are broadcasted on a regular basis by Class B

gateways. The devices can then receive downlink data, or command packets in specific time windows,

irrespective of the uplink traffic. This class also provides support for fallback to class A, in case of battery

constraint operation models. It has medium power consumption and low latency.

Class C, for "Continuous", allows the device to be always listening for data packets except during

transmission. These devices are used for applications that have sufficient power available or are connected

to the grid and thus do not need to minimize reception time windows. Class C devices will listen with

"RX2" windows parameters as often as possible, only stopping for either sending or receiving on "RX1",

as shown on figure 3.4. They open a short window on "RX2" parameters between the end of the uplink

transmission and the beginning of the "RX1" reception window, after which they switch to "RX2"

reception parameters, as soon as the window is closed. The "RX2" reception window remains open until

the end-device has to send another uplink message. This class has the highest power consumption and the

lowest latency.

Figure 3.4: LoRaWAN device classes [79].

28

Page 49: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Architecture

Figure 3.5 presents the LoRa architecture. The devices are connected to one or many gateways. LoRa

uses star topology, where the gateways relay messages between devices and a network server [79]. The

communication between the devices and the gateways uses different spread out frequency channels and

data rates, through a trade-off between the communication range and the message duration. A standard

LoRa device can decode only one spreading factor modulation over a single frequency [81]. The gateways

forward the payload information to their associated network server and act as a bridge, totally transparent

to the end devices. They are connected to the network server through Ethernet, 3G, 4G, Wi-Fi or satellite

connection. At the base of all gateways sits a LoRa concentrator, which is a multi-channel demodulator,

able to decode all versions (obtained by varying the SF parameter) of LoRa modulation, on several

frequencies at the same time [83]. The LoRa gateways are capable of decoding up to 9 channels at the

same time, with channels being identified by a specific sub-band and spreading factor [80] [82].

The network server is responsible for decoding the messages, performing security checks, filtering duplicate

and unwanted packets and for replying to the end devices by choosing one of the gateways in range [80].

It also enables remote management of gateway modules, device level management and enhances security

through a web service which the end user can connect via the internet [81]. The application interface may

be provided by the network server, or the information can be sent from the network server to a custom

IT solution developed by the costumer, or an IoT platform. The network server must be provided by

third-party companies as Semtech does not have one.

Figure 3.5: The LoRa architecture.

Security

Devices using LoRaWAN have two ways of joining a network server: either through Over The Air

Activation (OTAA) or Activation By Personalization (ABP) [84]. Using OTAA, each device is deployed

with a unique 128-bit app key "AppKey" which is used when the device sends a join-request message.

The message is not encrypted, but signed using this "AppKey". The message comes with: an "AppEUI"

value, unique to the owner of the device; a "DevEUI" value, globally unique identifier for the device; and

a "DevNonce", which is a randomly generated two byte value. The network server then checks the values

and, if valid, responds with a join-accept message.

29

Page 50: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

In ABP, the devices are shipped with the device address value "DevAddr", and both the network session

value "NwkSKey" and "AppKey", which are unique to it. As the devices already have the information

and keys they need, they can begin communicating with the network server without the need for join

messages. As the "NwkSKey" and "AppKey" session keys are only known by the network server and the

device, there should be no way for other devices, or a man-in-the-middle attack, to recover the data. The

encryption of messages is made using AES128. LoRa devices also feature up and down message counters

which are maintained by the device and the network server, and these counters never repeat.

3.2.3 Differences between Sigfox and LoRa

Table 3.2 presents some the differences between the most important technical aspects of both technologies.

As LoRa only represents the physical layer, the differences to Sigfox were made with LoRa using LoRaWAN.

Table 3.2: Differences between Sigfox and LoRa/LoRaWAN.

Sigfox LoRa/LoRaWAN

Frequency868 MHz (EU)

902-928 MHz (USA, AS)

868 MHz (EU)

915MHz (USA), 470 MHz (AS)

Range3 - 10 km (urban)

30 - 50 km (rural)

2 - 5 km (urban)

15 - 45 km (rural)

Data Rates 100 bps (Up), 600 bps (Down) 250 bps - 27 kbps

Topology STAR STAR

Modulation DBPSK (Up), GFSK (Down) CSS

Payload 12 Bytes (Up), 8 Bytes (Down) 19 - 250 Bytes

Power levels 0 - 14 dBm 0 - 14 dBm

Battery Life 10 years 10 years

Messages/Day 140 (Up), 4 (Down) Unlimited

Bandwidth 100 Hz (Up), 1.5 kHz (Down) 125 kHz, 250 kHz, 500 kHz

Both technologies use the same frequency band in Europe and their ranges are very similar. Sigfox uses

ultra-narrowband technology, with very small bandwidth. LoRa, on the other hand, uses modulation

based on Chirp Spread Spectrum (CSS), with a wider band [85].

The technologies also differ in the amount of messages that can be sent in the up and downlink transmissions,

as well as the size of the payload. Therefore, Sigfox is better suited for applications that do not require

constant exchange of messages, but only a handful of messages per day. LoRa has more leverage in the

amount of messages it can send daily. For example, it does not send two replicas of the same message every

time one is sent. It can manage higher transmission speeds, which equate to less time on air, therefore,

account for even more messages. As referenced before, Sigfox takes 2.08 seconds to send a twelve byte

30

Page 51: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

message but, even if only a six byte message is sent, which would takes less time, Sigfox continues to only

allow the 140 daily limit, while on LoRa, different sized messages will have an impact on the air time and

consequently on the number of messages that can be sent.

Another difference is in the base stations from Sigfox and the gateways from LoRa. Sigfox deploys and

manages its own base stations, while LoRa gateways can be bought or made. LoRa gateways can be

found at varying price levels with some costing 1600 e[86], others 800 e[86], or even 150 e[87], with the

use of a raspberry pi.

There are also significant differences in their business model. With Sigfox, the company owns all of its

technology from the back-end data and cloud servers to the device software. Sigfox partners with other

companies in each country to build and operate the network infrastructure, with existing cell towers and

placements being used to minimize cost. Additionally, only one Sigfox network can be deployed in an

area, because the company has exclusive arrangements with its network operators [85]. However, in some

cases, Sigfox itself deploys the network and acts as the network operator.

LoRa uses a different strategy. Semtech leaves the development of network products and services to

third party companies such as Cisco, Actility and IBM [88]. Just like SigFox, the LoRa Alliance wants

network operators to deploy the LoRa network, but they also want private companies and start-ups to

do it. LoRaWAN is an open standard that can have two types of networks, the private and the public.

The private is operated by private individuals, for private asset tracking, wireless sensor networks or for

obtaining an individually catered home automation network. It can also serve for companies in industrial

context for networks related to the industrial IoT segment. The public LoRaWAN network is where mobile

networks operators own the network infrastructure and offer it as a service to their clients [18]. According

to the LoRa Alliance deploying a LoRa network from scratch costs about the same as upgrading a mobile

network with software to support NB-IoT [89].

Regarding devices, both technologies also differ. Sigfox does not design any hardware, opting instead to

share their design and license its software to vendors, such as, Texas Instruments, Samsung, Telit and

Axcem. It uses a certification scheme on the hardware, called "SIGFOX Ready", with devices getting

sorted by class 0, 1, 2 or 3 based on their radiation performance rating [90]. More information on Sigfox

certification and devices classification can be found in [91]. This type of model means that is necessary to

work directly with Sigfox because there is no other option.

LoRa technology is free to use, but Semtech is the sole company that designs and fabricates the LoRa

transceiver chips for the end devices, as well as the concentrator chips for the gateways. However, any

hardware or gateway manufacturer can join the LoRa Alliance and build a module or gateway that

conforms with the LoRa specifications. So, although the LoRa ecosystem itself is open, it has a closed

element.

31

Page 52: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

3.3 State of the Art

Through the Sigfox partner solutions [92] site, Sigfox offers transceivers, System on a Chip (SoC), modules,

devices and developer kits. Five transceivers are currently available from Texas Instruments and Silicon

Labs. They are: the AX5043; S2-LP; CC1120; CC112; and the SI446X transceiver family. These

transceivers are all capable of working in the ISM frequency bands at 433, 868 and 902 MHz and at

additional programmable frequencies. The prices vary between the 0.5 to 5 erange. Also available at the

Sigfox site are 10 system-on-chip, 54 modules, 374 devices and 66 developer kits.

For LoRa, Semtech currently has five transceivers available. They are: the SX1272 and SX1273 for

frequencies between 860-1000 MHz; the SX1276, for 137-1020 MHz; the SX1277, for 137-1020 MHz; the

SX1278, for 137-525 MHz; the SX1279, for 137-960 MHz; and the SX1268, the SX1262 and the SX1261

for 150-960MHz [93]. These devices are currently all within the 4 to 10 eprice range. Also available are

two chips for LoRa gateways: the SX1308 for indoor gateways and SX1301 for outdoor gateways.

Lora deployment has continued to advance as networks are set up all over the world. In Korea and the

Netherlands, the telecom companies responsible for the deployment of LoRa network in their respective

countries were both members of the LoRa Alliance [94]. In London The Things Network (TTN) launched

fifty LoRaWAN base stations free to use across the city for IoT devices [95].

Because cellular IoT technologies are still in their early stages of development products which use these

technologies are hard to find. However, for NB-IoT the first roll-outs of the technology are expected for

2018 [96]. In 2017, u-blox, a Swiss company in the natural gas market announced their successful field

trials on their NB-IoT network [97]. At the start of 2018 Cisco was the first company to launch a global

NB-IoT platform solution that, in conjunction to NB-IoT, will also allow for enterprises to manage cellular

devices [98].

IoT is also seen entering commercial areas. For example, the Amazon Go [99] is a new generation of shop

where through the use of sensors, machine learning, artificial intelligence and computer vision, shoppers

can enter the store, take the products they want and leave, effectively eliminating queues. After leaving,

the user will be notified of the purchase and the price of the products will be deducted from their account.

One of the ways that the IoT has found a way into the consumer lifestyle and by extension its home is

through smartphones, particularly smart assistants. The development of virtual assistants like Google

Now, Amazon Alexa, Apple Siri, and Microsoft Cortana, coupled with push toward artificial intelligence

by tech companies, will prove an important step for a more cohesive IoT world. Some products, like

Google Home [100] and Amazon Echo [101] partnered with the smart assistant Alexa have already entered

the smart home setting. Advances with these smart assistants, in conjunction with IoT products, can

already open and close doors. Such is the case for the Amazon key [102], which opens doors remotely

through the installation of a smart lock on the door, with a series of smart cameras that let couriers open

the door with a request, so they can drop packages inside the house when a costumer is not home.

32

Page 53: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Other products for the smart home, such as the door bird [103] device are already available. Like the

Amazon key, this is a smart lock device, which alerts the user through his or hers smartphone when there

is someone at the door, enabling them to see the person, talk to them and open the door from anywhere

in the world. It uses Wi-Fi technology, when in the home, and 3G/4G networks, when anywhere else in

the world. The Eve Degree [104] is a device which lets the user see the current temperature and humidity

in the home and comes with a mobile application for easy access to the information. There are also smart

homes built entirely from the ground up, with a focus on mobility and the IoT. Kasita [105] is a compact

home that enables the user to adjust every aspect of it, using voice commands from smart assistants.

Sigfox devices for the smart home are also available. The Sens’it 2.0 [106] device can be used for reading

temperature and humidity, or ambient light in a home. Another product from Sigfox, the "bttn" [107], is

a small programmable device which lets the user order services or products with just one push. Sigfox has

also partnered with Louis Vuitton on a luggage tracker [108].

LoRa also has devices with focus on the smart home. Company Eddy Home offers a water monitoring

and consumption tracking system [109] based on LoRa technology. It offers a custom dashboard that lets

users see their home water usage and statistics, either through a smart device, with the eddy home app,

or using a computer with a browser.

Questions of security and privacy continue to dominate the IoT. One solution which is currently being

studied to solve these problems is Blockchain. It can already be seen entering solutions like the IBM

Watson IoT Platform [110]. Applications of this technology can already be seen entering the smart home

also. An Australian company, Telestra, has started to use blockchain to secure smart home systems by

storing biometric and authentication data on a private blockchain. This blockchain is then capable of

verifying the identity of the IoT devices and of the people interacting with them, to prevent compromised

devices from usurping the platform [111].

33

Page 54: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

34

Page 55: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Chapter 4

Smart Home Project

In this chapter, the smart home system is detailed. First, the experiences with Sigfox and the various

modules and sensors are presented, ending with the steps to synchronize the devices with various IoT

platforms. Second, the LoRa experiences in setting up the gateway and modules and also the steps to

synchronize them with their own network services and IoT platforms are detailed.

35

Page 56: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

4.1 Smart Home Architecture

There were two possible ways considered to implement a smart home IoT architecture solution. Presented

in figure 4.1 and figure 4.2 are two general architectures which could be used for the desired result of the

smart home project.

Figure 4.1: Smart home architecture solution using only cloud services.

On the first solution, present in figure 4.1, the devices would send the information to their respective

cloud services. That information could be accessed in two ways: by a custom smart home and smartphone

application; or by a web browser and a smartphone application. The custom smart home application would

be an embedded central computer system in the home, usually referred to as a hub. This system would

gather all information from the devices, sent from the cloud, and present it on specific home consoles,

which can be embedded on walls, or in tablets with custom software. The custom smart home system

could also have a smartphone companion application for users to download, so they could access home

information on the go. The other possibility would be to access the device information from the cloud

service using a web portal with a web browser, through the use of a personal computer, smartphone or

tablet, or through a smartphone application, made by the cloud service itself.

Figure 4.2: Smart home architecture solution using IoT platforms.

36

Page 57: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

In the second solution, present in figure 4.2, the devices would send the information to their respective

cloud services also, but now that information would be redirected to an IoT platform. The information

could then be accessed the same way as the previous solution, by a custom smart home application or a

web browser. The only difference being that IoT platforms have a better user interface and generally are

more user friendly. This means, for example, that a custom smart home application, in this case, would

only need to present the information sent from the platform as opposed to having a custom software, built

specifically for presenting it. The IoT platform could also have a smartphone application specific for it.

In the case of Sigfox, the cloud has a very basic and not user friendly interface, because it is not meant

to be used as a platform, and the options for device analytics are limited. So, the better solution would

be to use the architecture in figure 4.2. This way the information from the devices could be parsed and

better presented by the IoT platforms, offering more statistics and history about the home devices, for a

better understanding of their home use.

In the case of LoRa, because some of the network servers also serve as IoT platforms, the better solution,

would be to implement the architecture in figure 4.1.

4.2 Sigfox Solution

For the Sigfox smart home solution, the architecture used in this work is presented in figure 4.3. To

achieve it, several steps were taken.

Figure 4.3: Proposed smart home architecture using Sigfox technology.

The first step was to make and program a prototype using Sigfox technology. The second was to register

the prototype with the Sigfox cloud and successfully receive the Sigfox messages at the back-end. The

third was to synchronize the prototype with several IoT platforms to see which one would be better suited

for the smart home architecture designed. The fourth, and last, was to build a dashboard, so that a user

could access it by way of a web browser or smartphone application, as shown in figure 4.3.

37

Page 58: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Three hardware developer kit modules were used. The Telecom Design TD1208 Evaluation Board Kit [112],

which was given by Narrownet, the Sigfox operator in Portugal. The SmartEverything [113] evaluation

board, and finally an Arduino UNO R3 equipped with a shield and Sigfox module from Cooking Hacks

[114].

The modules used the Arduino IDE software with C programming language, aside from the TD1208

Evaluation Board Kit. Programs using Arduino are generally called sketches. They use two basic functions:

the setup, and loop functions. The setup function is called once upon the device turning on or resetting. It

is mainly used for initiating variables, addressing input and output pin modes and other possible libraries

needed in the program. The loop function, as its name implies, is a continuous loop, only stopping by

turning off or resetting the device.

4.2.1 TD1208 Evaluation Board

This kit from Telecom Design was used in the first experiences with the Sigfox network and IoT platforms.

It includes a breakout board with the Sigfox module, a twenty centimeter 868 MHz antenna, a FTDI serial

cable, one year subscription to the Sigfox network and one year access to the TD developer back-end,

which gives access to a Telecom Design IoT platform where the Sigfox messages can be visualized.

This board works by sending Sigfox messages with the use of AT commands from a command-line interface.

"AT" commands, short for attention, are simple instructions used to communicate and control a modem.

They are the lowest level of interaction available with a Sigfox module, except when using a Software

Development Kit.

As the board was already registered at the Sigfox back-end only the token for it, which is a one

year Sigfox contract, had to be renewed. After sending the first Sigfox message with the command

AT$SS=414243444546, corresponding to ABCDEF, it was possible to confirm on the Sigfox back-end that

the messages had been received.

To test the callback feature, an email callback was created. It was necessary to select the device name at

the Sigfox back-end, and choose the create NEW callback option. In that callback sub-menu it is possible

to select between a custom or dedicated bridge callback. Figure 4.4 presents the options necessary for an

email callback. The email recipient, the subject and the body of the message were filled as the figure

shows. The time sent from Sigfox is represented in a Unix time stamp.

The second data callback, was made to the Carriots platform [115]. This type of callback has an URL

channel, with the HTTP method selected as POST. After creating a Carriots account, an URL address

was available to use, which was filled on the designated field for the callback, with the respective API key

generated on the platform. This type of callback is further explained in the section 4.2.4.

38

Page 59: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 4.4: View of a Sigfox email callback.

4.2.2 SmartEverything Board

The SmartEverything evaluation board comes with a Sigfox module, has Bluetooth and NFC connectivity,

a GPS receiver, a cryptography authentication chip, an absolute barometer and altimeter, proximity and

ambient light sensors, a 3D accelerometer, a 3D gyroscope, a 3D magnetometer, and a temperature and

humidity sensor. The board comes with a one year subscription to the Sigfox network.

After installing the necessary drivers, board support and libraries in the Arduino IDE, the board was not

recognized by the software. Searching for an answer through forums and help guides proved unsuccessful,

although the problem seemed to be related to the fact that the computer used was a Mackintosh. However,

this could not be confirmed. When the use of this board was beginning to seen impossible a beta version

of the Arduino IDE was made available to solve this problem. This software version solved the problem of

the board being recognized by the computer, but introduced another one. The software was now unable

to create new sketches, rendering it useless. After installing the old version of the Arduino software, the

board was now recognized and sketches could be created.

After solving the problem of the installation, all sensors of the board were tested, with the GPS receiver

taking a long time to locate the device. To test the Sigfox network the board had to be registered at the

Sigfox back-end. After registering, the Sigfox connection was tested as well. Other experiments were

conducted by using sketches found for the board, for example, one which sent a test message every ten

minutes to the Sigfox network [116]. Further experiments with this board were not possible because the

token expired.

39

Page 60: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

4.2.3 Sigfox Radio Shield for Arduino

The Arduino UNO R3 was equipped with a shield and Sigfox module from Cooking Hacks. It was the

board where most Sigfox experiments were conducted and the prototype device used for the smart home

system. With the Arduino board, several sensors were used, such as: two temperature and humidity

sensors (model DHT11 and SHT31); two rain detection sensors (no visible markings on the model); a

moisture sensor (model IM121017001); two PIR motion sensors (model PTR004226); and an adapter

board designed for the evaluation of an accelerometer (model LIS344ALH).

All sensors were tested and for each one the necessary libraries were installed, with some getting multiple

trials with different ones. The DHT11 sensor presents the temperature and humidity. The rain detection

sensors present three situations: no rain, a rain warning or a flood warning. The moisture sensor, shown in

figure 4.5a, returns a value for the moisture content in the soil. The two motion sensors detect movement

up to seven meters. The SHT31 sensor also presented temperature and humidity values. And lastly,

several tries were made to test the accelerometer.

The sensor chosen for the smart home system was the SHT31 temperature and humidity sensor. First the

Cooking Hacks libraries for the Arduino software were installed. Upon starting to use the module it was

found that the software did not allow to upload sketches, citing errors in the upload progress. The solution

was found by removing the Sigfox module, uploading the sketch to the board, and finally connecting the

Sigfox module again. This had to be done every time that a new sketch had to be uploaded.

In figure 4.5b the Arduino board can be seen connected to the shield and Sigfox module, with the SHT31

sensor connected with the help of a breadboard. A new program was created for this prototype, presented

in Annex A, which only used the loop function of the Arduino, a measure taken to prevent errors from

disconnecting and connecting the Sigfox module to upload sketches.

The sketch created first initialized the temperature sensor followed by the Sigfox module; second, the

temperature and humidity values are retrieved and sent, in a 8 byte message, 4 bytes for the temperature

and 4 for the humidity, to the Sigfox back-end; and third, a delay of twenty minutes is issued. Figure 4.6

shows the message received at the Sigfox back-end with a custom payload display, created for decoding

the hexadecimal data. To change the payload display data one has to select the Device Type at the Sigfox

back-end and edit its information. In the payload parsing field it was necessary to chose the custom

grammar option and input the custom configuration for the data.

As the Arduino is not a very power efficient board, a sleep library called "Narcoleptic" [117] was added to

the program to see if the board could sustain itself for longer periods of time, powered only by batteries.

The "Narcoleptic" library uses features from the Arduino microcontroller and reduces power consumption.

It is best used when the device is in a stand-by mode, to simulate a power-off state. Two trials were

conducted, shown in figure 4.7. The first used a 9V battery and the second an eight 1.5V AA battery

holder.

40

Page 61: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

(a) Moisture sensor experiment. (b) Temperature and humidity sensor experiment.

Figure 4.5: Experiments conducted on the moisture and temperature sensors.

Figure 4.6: Example of a Sigfox message at the back-end.

An email callback was set up to ensure that the messages were being received without having to check

the Sigfox back-end every time a new sketch was uploaded. Another sketch was created which made

use of the PIR sensor. The sketch continuously searched for movement and, if detected, sent a message

to the Sigfox back-end. A simple downlink experiment was also conducted. To make it, in the Device

Type configurations, the device was edited to allow a direct downlink from Sigfox. The downlink message

contained the time and RSSI values.

(a) With a 9V battery. (b) With an eight 1.5V AA battery holder.

Figure 4.7: Battery tests conducted on the prototype.

41

Page 62: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

4.2.4 Sigfox IoT Platforms

To complete the smart home architecture defined in figure 4.3, it was necessary to synchronize the devices

with IoT platforms, through the use of Sigfox callbacks. Several platforms were considered and seven

were tested with the prototype Arduino device. They were: the Cloudthing [118]; the Tago [119]; the Wia

[120]; the Thinger [121]; the Databoom [122]; the Amazon AWS [123]; and the Microsoft Azure [33]. In

this section only the two platforms which had the most different implementation and were considered the

most important will be addressed. The rest of the platform experiments are explained in the next chapter,

along with a discussion on some of their implementation difficulties.

To use the Thinger platform, there were three steps taken: the first was to create the data bucket, which

stores the received information from Sigfox, and an access token, necessary for the data to be accepted by

the platform; the second to create the Sigfox callback with the necessary authentication to the platform;

and the third to create the dashboard at the platform for easy access to the prototype information.

For the first step:

• A data bucket was created in the Buckets section of the platform, and a bucket ID, name, and

description were filled. A switch to enable the possibility to write data on the bucket had to be

activated, and the Data Source had to be set as From Write Call, because the Sigfox device is not

connected to the platform but pushes the messages using the callback feature.

• In the Access Tokens section, when a new token is created, the token ID, and name were filled. The

access token enables access to the data bucket and to write operations. A switch was enabled to

activate the token, and at the end the Token permissions needed to be granted to the data bucket

created previously. After creating the token, a value for it will be generated.

For the second step:

• At the Sigfox back-end, a custom data callback was created, using a custom payload configuration

which already parsed the temperature and humidity sent from the device. The callback is shown in

figure 4.8a. The URL pattern is configured according to the user and bucket ID from the platform

account. The HTTP Method must be set to POST, and the Headers option must contain the

text Authorization in the header field, and the value field must be Bearer {access_token}, where

the token is the one generated previously in the platform. The body of the callback is in JSON

(JavaScript Object Notation) format, shown in figure 4.8b and contains some information of the

device and the Sigfox base station that received the message.

The third was to build a dashboard using the values on the data bucket to create widgets for each message

field.

42

Page 63: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

(a) Data callback example using URL channel. (b) JSON data.

Figure 4.8: Callback configuration for the Thinger Platform.

Another platform tested was the Amazon AWS. This type of platform uses a simplified bridge callback,

dedicated to its service. The platform configuration had three steps. The first was to create the Sigfox

callback choosing the AWS IoT option. The second was to create a Stack in the AWS Cloud Formation

console, where several parameters are generated which are then inserted in the callback. The third

was to create an AWS IoT Rule in the Amazon cloud, responsible for storing the data into an Amazon

DynamoDB table.

After creating the AWS IoT callback at the Sigfox back-end, the Config method must be left as

CROSS_ACCOUNT and the External ID must be saved to use later at the platform.

The callback has a link that redirects to the Amazon CloudFormation platform where the Stack name,

the AWSAccountId, the External Id, which was obtained in the callback, the Region and the Topic Name

were filled, finalizing the stack construction.

Then it was necessary to obtain the stack values for the ARNRole, Region and Topic key. This values

are then inserted in their respective fields at the Sigfox AWS callback as well as the JSON body, closely

relating the one from Thinger shown in figure 4.8b. However, the data field was sent in hexadecimal,

because AWS does not support custom payload configurations. With this two steps it is possible to see if

the callback was set successfully by confirming it at the message section in the Sigfox back-end.

The last step was to create an AWS IoT Rule to store the data received in a Amazon DynamoDB table.

After going to the DynamoDB section a new table was created. There, a name, partition and sort key

are also created. When the table was finished, a new IoT Rule was created where the message source,

DynamoDB table, Hash and Range keys are filled. The latter ones are used for ordering the Sigfox

messages at the platform.

Further experiments to parse the information in the platform were conducted. Amazon AWS also has a

mobile application where it is possible to access some limited information about the devices connected to

it.

43

Page 64: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

4.3 LoRa Solution

For the Lora smart home solution, the architecture used was different from Sigfox, and is presented in

figure 4.9.

Figure 4.9: Proposed smart home architecture using LoRa technology.

To bring this architecture to fruition, a prototype device was needed using LoRa technology. Next a

gateway had to be acquired to receive the LoRa messages from the device and to redirect them to the

chosen LoRa network server. There are several companies which offer LoRa network services, with some

offering IoT platform capabilities as well. Lastly, the information would be accessed through the network

server portal, using a web browser accessed with a computer, tablet or smartphone. The network server

could also have a dedicated smartphone application.

For this solution the first step was to buy a LoRa gateway device, which was necessary, as the LoRa

Network does not deploy their own gateways like Sigfox. The solution was found to be the Dragino LoRa

gateway kit [124]. This kit came with a LoRa Gateway-LG01 P, shown in figure 4.10a, which can have 3G

and 4G module installed. The kit also had two Arduino UNOs, a LoRa shield, shown in figure 4.10b, a

LoRa/GPS shield, three 868 MHz antennas, a flame sensor, an ultrasonic sensor, a photosensitive sensor,

a buzzer, a relay, and a temperature and humidity sensor.

The LoRa technology was tested using two different protocols, the RadioHead and the LoRaWAN. The

former was the recommended protocol, by the Dragino kit, to test the basic LoRa technology connection.

The latter is the most used protocol with LoRa technology. For these LoRa experiments all modules used

the Arduino IDE software program, including the LoRa gateway which also had a web browser interface.

All the code used in the LoRa solution was found at [125].

44

Page 65: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

(a) The Dragino LG01 Gateway [126]. (b) The Arduino LoRa Shield.

Figure 4.10: Dragino devices.

4.3.1 RadioHead Protocol

For the experiments using this protocol the LG01 gateway was used with the Arduino LoRa shield, and

one DHT11 temperature and humidity sensor. The gateway comes pre-configured as a Wi-Fi access point

by default. When turned on, it generates an unsecured hotspot in its vicinity, where it is possible to

connect to it. To test the gateway, first the necessary boards were installed.

Next, a way to test the LoRa connection between the gateway and the Arduino with LoRa shield was

conducted. For this experiment the RadioHead library [127] was used. A sketch for the Arduino LoRa

shield was uploaded, which sent a message to the gateway and then waited for a response. If successful it

shows the RSSI and a response to its message. If no response is received the program would remain in

loop asking if the LoRa server was running. The sketch for the gateway was also uploaded which waited

for the message from the LoRa shield, and if successful showed the message received, the RSSI, and sent

a message back. The RadioHead library used by both sketches utilized the same frequency (868 MHz),

bandwidth (125 kHz), coding rate (4/5) and spreading factor 7 (128 chips/symbol).

The next experiment performed with the RadioHead library was to synchronize the LoRa shield and

gateway with an IoT Platform. The recommended platform, by the Dragino company, was the ThingSpeak

[128], which is an open platform that supports LoRa devices. The gateway would have to be configured

to be able to join the home Wi-Fi network in order to be able to send the information to the platform.

There are several ways to configure the gateway to access the internet, and the Wi-Fi client mode was

used. To configure it, it was necessary to access the gateway web interface, presented with all its options,

in a compressed view, in figure 4.11. To configure the gateway in Wi-Fi client mode, it was necessary to

select the Network tab and disable the Wi-Fi access point and Wi-Fi Mesh Network, enable DHCP server

in its LAN port and enable internet access via Wi-Fi client mode. Then the necessary SSID, password

and encryption for the home network were filled.

45

Page 66: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 4.11: A compressed view of the LG01 gateway interface.

With the gateway configured it was now necessary to create an account at the ThingSpeak platform. A

dashboard at the platform was created, with fields for temperature and humidity, that generate a specific

ID and API key. The ThingSpeak library was then installed in the Arduino IDE software. The DHT11

sensor was connected to the LoRa shield and a sketch was upload to the Arduino. In the sketch, the sensor

reads the temperature and humidity values, sends the data and waits for a possible acknowledgement

from the gateway which has to have the correct LoRa node ID. Just as the previous experiment this data

is sent with the same LoRa radio configurations as the gateway. The sketch was changed so that instead

of the thirty seconds interval between messages, a twenty minute interval was used.

In the gateway sketch, the ID channel number and API key, generated in the ThingSpeak, were filled.

The sketch listens for data sent from the LoRa node, checks if the LoRa node ID is correct, sends an

acknowledgment reply to the node and lastly sends the information to the platform. Figure 4.12 shows

the gateway, in Wi-Fi client mode, and the LoRa shield with the DHT11 sensor.

46

Page 67: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

(a) Dragino gateway in Wi-Fi Client mode. (b) LoRa shield with DHT11 sensor.

Figure 4.12: The ThingSpeak Platform experiment.

4.3.2 LoRaWAN Protocol

For the LoRaWAN protocol, the LG01 gateway was used with both the Arduino LoRa shield and the

Arduino LoRa/GPS shield. For these experiments the devices were set up with the "The Things Network"

(TTN) network service [129], which allows for the management of both the gateway and the device but it

did not have dashboard capabilities. After creating an account at the platform it was necessary to both

register the gateway and the device. In the gateway console page, the ID, which is an eight byte hex value,

had to be created. The MAC address that comes on the underside of the gateway was used for it, but as

the address only has a six bytes, a suffix was added. It was also necessary to select the packet forwarder

option of the gateway and upload the sketch for it. But before the sketch could be uploaded, the gateway

had to be configured to support the LoRaWAN protocol.

First, the configurations for the LoRa radio were made, such as the frequency channel, the spreading

factor, the coding rate and the signal bandwidth which had to be the configured to match the ones from

the Arduino LoRa shield. The following parameters were set: frequency of 868.1 MHz; spreading factor

seven (SF7); coding rate of 4/5; signal bandwidth of 125 kHz; and preamble length set at eight. Second,

the LoRaWAN server options had to be enabled in the gateway interface and the configurations for the

LoRaWAN settings filled, which were the server address, server port and gateway ID, obtained after

registering the gateway. The gateway was then ready at TTN and the sketch was uploaded to it.

For the device, in its console page at TTN, the register device option was selected and it has necessary to

enable the ABP method, the only one supported by the Dragino gateway. As the Arduino LoRa shield

did not come with the device address "DevAddr", network session key "NwkSKey" and app session key

"AppKey", the values, in this case, were generated by the TTN service.

47

Page 68: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

The sketch for the Arduino LoRa shield, available at [130], used in the first experiment, had to be changed

to support the right device address, network session key and app session key fields obtained before. After

installing the necessary libraries, the sketch, which sent a test message, was uploaded. In the serial

monitor it was possible to see that the messages were being sent to the gateway and in the gateway web

UI possible to check that the gateway was receiving them. At TTN the communication from the device

could be confirmed in the Data section of the device page.

With the Arduino LoRa/GPS shield it was necessary to register a new device. As the gateway had already

been registered and there was no need to change its configurations, no changes were made. Only the new

values for the "DevAddr", "NwkSKey" and "AppKey" had to be filled at the new sketch used. Several

sketches were used with the LoRa/GPS shield and the implementation for this experiment had several

challenges, explained in the next chapter. A sketch [131] was found that was able to be uploaded to the

Arduino LoRa/GPS shield. This new sketch required the installation of two new libraries, one for the

GPS [132] and another for LMIC (LoraMAC-in-C) [133]. After the sketch for the LoRa/GPS shield was

uploaded, where the latitude, longitude and altitude were sent as the payload, the communication to the

TTN service was confirmed. Figure 4.13 shows the LoRa/GPS shield experiment conducted outdoors to

see if the GPS location could be found.

Figure 4.13: LoRa/GPS shield experiment.

48

Page 69: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Chapter 5

Results and Analysis

In this chapter, the results of the smart home project obtained in the previous chapter are presented. The

chapter starts with a review of the Sigfox boards and the results achieved for the smart home project.

The results of the synchronization with the IoT platforms are presented along with an analysis on their

performance. An analysis of the LoRa kit is conducted with its results discussed.

49

Page 70: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

5.1 Sigfox Boards

For Sigfox only one module was considered to use as the prototype. The module could be used with a

shield on an Arduino, Raspberry Pi or Waspmote boards. Table 5.1 presents the three shield options from

Cooking Hacks for the module, with the Sigfox shield, and their associated prices. Two developer kits

were also considered, the Akeru from Snootlab [134] and the SmartEverything board [113], which had

prices around 90 eand 85 erespectively. All prices do not include tax or shipping costs.

Table 5.1: Shield solutions for the Sigfox module.

Arduino Raspberry Pi Waspmote

Shield Price 65 e[135] 90 e[136] 160 e[137]

Board Price 23 e 40 e +160 e

The Arduino was chosen for providing the cheaper solution, and the SmartEverything board for the

connection to the Sigfox network and for having a series of embedded sensors. The first board used, the

TD1208, had already been acquired before the start of this project.

TD1208 Board

The tests conducted with this board where meant to test the Sigfox network. It was also the first board to

be used with an IoT platform, through the creation of a callback, where the device ID and time were sent

as data. The board is no longer available, but Telecom Design offers other Sigfox devices. The results

from the Carriots platform can be seen in figure 5.1. The tests using this board, both with Sigfox and the

Carriots platform, proved successful and the results were good. The board proved a good starting point

for the project and through it, it was possible to see how the Sigfox back-end worked. It also provided a

better insight at how the callback process was made.

Figure 5.1: Example of a Sigfox message received at the Carriots IoT platform.

SmartEverything Board

The tests using this board were made using code from examples, in order to understand how the board

worked and how to program it. All tests using the board were made connected to a power supply and

never using batteries because, although the board uses a Sigfox module, that is very energy efficient, the

board is not. All Sigfox tests were successful. This board, shown in figure 5.2, ended not being used

to its full potential. Additional tests were envisioned for it, such as, using the gyroscope to attach the

module to a door or drawer. In the test envisioned, the user could be alerted that the front door, or a

50

Page 71: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

drawer, of their house had been opened. As the token for this board expired and because the steps taken

to synchronize the Arduino board with shield and Sigfox module to the IoT platforms presented difficult

challenges, the planned tests for this board were not achieved. The problem faced where the uploads were

not possible was not identified and even the beta version of the Arduino IDE used was not found after,

leading to believe that the problem had been resolved with a new software update.

Although the full use of the board was not possible, the tests conducted with it allowed to see that this

board had a greater learning curve than the Arduino with the Sigfox shield, and sketches designed for it

would be harder to code, mainly because it had its own Sigfox library, it its own set functions.

Figure 5.2: The SmartEverything board [138].

Sigfox Radio Shield for Arduino

The Arduino with shield and Sigfox module, shown in figure 5.3, was the board used as the prototype for

the smart home project and the one used with seven IoT platforms. The objective with this board was to

be able to send messages to the Sigfox back-end and to redirect them to IoT platforms. It was the board

with the faster learning curve. The sensors tested worked as expected, except for the rain sensor which

with a single drop of water accused a flood warning. The accelerometer was tested several times but it

was not possible to make it work, or conclude if it even worked. Although all sensors described in section

4.2.3 were tested with the Arduino, the SHT31 sensor and the PIR motion sensor were the ones chosen

to be used with the Sigfox module. The SHT31 sensor was preferred to the other temperature sensor,

the DHT11, because it had more accurate readings for both temperature and humidity. The decision to

first use the SHT31 sensor for the prototype was made to ensure that the smart home solution could be

implemented, before starting to add more sensors to the prototype.

The tests to the Sigfox back-end were successful, but the messages could only be viewed in hexadecimal.

As the temperature and humidity values were an eight byte hexadecimal value, the display information

shown in figure 5.4 was created. It was found that the first code used to convert the float values to

hexadecimal, needed to send the information to the Sigfox back-end, was not working correctly, as shown

in figure 5.5. A new way to send the data, by using a union, proved successful.

51

Page 72: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 5.3: Cooking hacks Sigfox radio shield and module [114].

Figure 5.4: Custom payload configuration at the Sigfox back-end.

The Cooking Hacks Sigfox module presented a problem which could not be solved throughout the work

relating to the upload of sketches to the Arduino. Theoretically, once assembled, the Arduino Sigfox shield

with the Sigfox module, should be able to connect to the Arduino IDE software for sketch uploading.

The Shield used to connect the Arduino board to the Sigfox module has a switch that selects the serial

connection (USB or XBEE). After researching the problem thoroughly in forums and help guides, several

attempts were made to solve it, starting with the switch on the shield, to switching the software serial

ports on the sketch. After several failed attempts, and finding that this was a common problem with the

shield, the solution found was to upload the sketches when the Sigfox module was not connected to the

shield.

While this method worked, it is believed to be the cause for the Sigfox module to sometimes report not

being switched on successfully. This sometimes presented errors when the prototype was first turned on,

as seen in figure 5.6. In the figure it can be seen that the module is first switched on correctly but the

packet sent gave an error command; while after, the module does not switch on correctly but says that the

message was sent. Sometimes when the module gave the packet sent error the message still arrived at the

Sigfox back-end. This is believed to be the reason for receiving an event message warning at the Sigfox

back-end, as figure 5.7 shows. This warning is sent when the message counter number is not the same

Figure 5.5: Custom payload display attempt.

52

Page 73: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

as the one expected by Sigfox, meaning that some message might have been lost. To solve this problem

the sketch created for the prototype did not use the setup function, only using instead the loop function,

which meant that every time the prototype would send a message it would re-initialize the sensor and

Sigfox module to avoid any errors. The sketch used sent information to the back-end every twenty minutes

to ensure that the daily limit allowed by Sigfox would not be broken. The temperature and humidity

values were 4 bytes each, making the payload 8 bytes total. This was not the most efficient way to send

the temperature and humidity as both can be sent using only 2 bytes each.

Figure 5.6: Sigfox module fails to switch on.

Figure 5.7: A Sigfox warning event for a break in message sequence.

The Narcoleptic sleep code used in the Arduino sketch did not prove very effective. Two tests were

conducted to see how much time the device would last only powered by batteries. In the test with the

9V battery the sketch was made to send data in twenty minute intervals, but after further studying this

type of battery with Arduino solutions it was found that this type of battery drains fast. After a few

hours a change to a two hour interval between messages was made. Based on the last message received at

the Sigfox back-end, the device was powered by the battery for sixteen hours with the twenty minute

interval plus an additional fifteen more hours with the two hour interval, reaching a total of thirty one

hours using the 9V battery. The test with the eight 1.5V batteries used from the beginning a two hour

interval between messages and managed to stay on for four days before losing power.

The second sketch created, which used the PIR sensor to detect movement, had the message received at

the Sigfox back-end successfully, but its implementation was not further developed due to time constraints.

The downlink test made was successful, but because there was not a need for downlink messages in the

smart home system designed, further tests were not performed.

Only one email callback was created for the prototype where the custom fields for the temperature and

humidity, already parsed by the Sigfox back-end were sent in the payload. In figure 5.8 the message

received at the email client is presented.

53

Page 74: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 5.8: Example of an email received using a Sigfox data callback.

This module proved difficult to use, as every time a sketch was uploaded to it the Sigfox module had to

be removed. Still the Sigfox functions for the module were simpler and easier to implement than the

SmartEverything ones, which made possible to perform more tests. Although the Arduino Sigfox shield

had its challenges, all tests originally designed for it were achieved and successful.

Sigfox Platform Results

As the Sigfox back-end was constantly being updated some of the documentation for synchronizing Sigfox

devices with platforms were out of date and could no longer be followed. Other platforms were still in

development and did not have full Sigfox compatibility, such as not supporting custom fields in their

JSON format, which meant that the data sent to Sigfox had to be parsed at the platforms.

The first platform used with the prototype was the CloudThing platform. It was chosen because it was

free when used with five or less devices and it provided the use of email and SMS message alerts. The

callback for this platform followed the same steps as the Thinger platform with a productId value obtained

after registering a device at the platform necessary to put in the URL field at the Sigfox callback. Many

attempts were made to synchronize with this platform but all proved unsuccessful. Figure 5.9 shows the

result of a failed callback to the CloudThing platform at the Sigfox back-end.

Figure 5.9: Callback error to Cloudthing platform.

Wia was another platform tested, chosen for having a visually appealing dashboard for IoT devices, which

was one of the objectives for the smart home system. The first time the platform was tested, it required

certain API fields for the Sigfox callback, which the Sigfox account used did not have access to. So, the

use of this platform was not deemed possible. However, when reviewing the platforms for the project,

54

Page 75: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

the Wia platform was found to have radically changed. It did not allow for the creation of a dashboard

anymore but it could be used to send SMS alerts and Twitter messages, and the way the callback was

used was now different. It was then possible to sync it with the Sigfox back-end. To do it, first an

integration with the platform was needed. To achieve it, it was necessary to: enter the Group section at

the Sigfox back-end, where the user is registered; go to the API ACCESS section; create a new API with

DEVICES_MESSAGES[R] option enabled, for the necessary keys to be generated. These keys would

then be used at the platform side to complete the integration process. Then the callback was created in

the same way as the Thinger platform, explained in section 4.2.4, with the only difference being that the

JSON body structure for this platform was slightly different. The platform did not support custom fields

in the JSON body, so the data had to be parsed at the Wia platform with JavaScript code. Figure 5.10

shows an event on the Wia platform where the payload sent from the Sigfox back-end can be seen in the

sigfoxData field. Besides offering its own cloud solution, Wia also offers the possibility to be self-hosted

on the customers own cloud solution. Although the platform was used, it was not possible to achieve the

parsing of the data or the use of the SMS and twitter solutions.

Figure 5.10: Data received at the Wia platform.

The Tago platform was another that, like Wia, did not offer the possibility to receive custom Sigfox fields.

However, it was possible to create a custom dashboard for IoT devices. The callback for this platform

had a JSON body structure which differed from all other platforms. The hexadecimal data from Sigfox

was not possible to be parsed on this platform as well. Widgets were created for all fields sent, such as

the device ID, SNR, RSSI, base station ID and hexadecimal data. Figure 5.11 shows a view of the data

widget created.

The Microsoft Azure platform was also tested. This was the most complex, difficult and time consuming

platform to set up. Like Amazon AWS it had a dedicated simplified bridge at the Sigfox back-end, called

Microsoft Azure IoT Hub. Microsoft offers the possibility to build an IoT dashboard but to build it

requires the use of a business analytics service, the Power BI. The use of this platform was abandoned for

55

Page 76: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 5.11: Tago dashboard view of the data widget.

two main reasons: first because setting the callback to this platform had already been very time consuming;

and second, because the synchronization with the Power BI service had very little documentation to help

construct the IoT dashboard. Based on the already difficult set up of the Sigfox callback the use of the

second service to display the information was deemed to complex to achieve. For Microsoft, although

through the Sigfox back-end it was possible to confirm that the callback created was working, it was not

possible to view this information in the Microsoft cloud. Only some statistics, like how many messages

were received, could be accessed.

Amazon AWS, although equally difficult to implement, possessed a friendlier user interface and better

documentation for Sigfox integration. Figure 5.12 shows a partial view of the DynamoDB table, explained

in section 4.2.4, and figure 5.13a shows a detailed view of a message in that table. Figure 5.13b presents

the Amazon AWS app where it was possible to confirm that the Sigfox device was active, the storage it

already used (709833 bytes), and the number of messages received (4184).

The Microsoft and Amazon IoT cloud services proved the most challenging. It was possible to synchronize

the prototype with both of them, even though the creation of IoT dashboards was not achieved. Amazon

did not have support for custom field data at the JSON structure, unlike Microsoft, but both had the

possibility to parse the Sigfox data on their services. These were the only platforms which differed from

the usual IoT platform business model, which offers "pack" solutions depending on the number of devices

used. Instead they offer one year free connectivity to their respective platforms, after which the user

would be charged according to the use of the platform. These charges would be related to the number of

messages sent, the time on air, the size of the messages, among others. These platforms were concluded to

be directed to enterprise solutions, like IoT fleet management services, and have the greatest learning

curve compared to all the rest tested.

Figure 5.12: Amazon AWS DynamoDB table.

Another platform used was Databoom. The callback setup was the same as the Thinger platform. Although

not yet compatible with custom Sigfox fields, after exchanging some emails with the customer support

they were able to create two custom signals, for this particular case, one for the temperature and another

56

Page 77: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

(a) A detailed view of one message from the DynamoDB

table.

(b) The AWS smartphone application.

Figure 5.13: Results obtained with Amazon AWS platform

for the humidity, shown in figure 5.14. With these new signals, it was possible to create a complete IoT

dashboard with all data fields sent from the prototype. The widget created for the temperature and

humidity is shown in figure 5.15. This platform was one were a complete IoT dashboard for the smart

home system planned was achieved.

The most successful IoT platform tested was the Thinger platform. Through the documentation from

this platform, not only was it possible to have a functioning and complete IoT dashboard, but also gain

a better understanding of how the process of synchronization between the Sigfox back-end and the IoT

platforms worked. It was through the use of this platform that most problems faced with the others

were resolved. In figure 5.16 the Thinger dashboard is shown, with widgets for the temperature and

humidity, the SNR, the RSSI, the device ID, and a map showing the location of the base station, based

on the latitude and longitude values. Widgets for the latitude, longitude, time and base station ID were

also created. The widgets are the result of the data bucket created at the platform. This was the most

successful dashboard implementation, completing the smart home architecture designed for the project,

marking the success of the Sigfox solution implementation.

57

Page 78: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 5.14: Custom signals received at the Databoom platform.

Figure 5.15: Custom IoT dashboard built at the Databoom Platform.

Through the use of all seven platforms a better understanding of the Sigfox architecture was achieved.

The Sigfox back-end was considered difficult to navigate and the options for device management hard to

find. Still, the Sigfox architecture solution for the smart home, initially proposed, was achieved. However,

from the seven platforms used, the solution was only possible on two of them, the Thinger and Databoom.

Although on the other platforms a dashboard was not able to be created, the synchronization with them

was still achieved, except for the CloudThing platform.

58

Page 79: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 5.16: Thinger platform custom dashboard.

5.2 LoRa Dragino Kit

For the LoRa solution, two modules were considered, both for LoRa and LoRaWAN. The modules, from

Cooking Hacks, were to be used with a shield on a Arduino, Raspberry Pi or Waspmote board. Table 5.2

shows the six Cooking Hacks shield options and their prices. This solution would also need a gateway. As

LoRa gateways are very expensive, the two options considered were: to build one, using a Raspberry Pi;

or to find an already built gateway solution which would not be very expensive. The custom Raspberry Pi

gateway had a price around 150 e[87], and the cheap gateway solution found was the Dragino kit which

had a price around 90 e. All prices do not include tax or shipping costs.

Table 5.2: Shield solutions for the LoRa module.

Arduino Raspberry Pi Waspmote

LoRa Shield Price 75 e[139] 85 e[140] 147 e[141]

LoRaWAN Shield Price 90 e[142] 95 e[143] 163 e[144]

Board Price 23 e 40 e +160 e

The model chosen for the LoRa solution ended up being the Dragino kit. This decision was made based

on the study of LoRa gateway implementation, which after the time spent with Sigfox, was deemed

to complex and difficult to implement in the time available for this work. As the Dragino kit already

possessed a LoRa gateway, two LoRa nodes, and several sensors, it was found to be a better alternative

for the LoRa tests.

59

Page 80: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Dragino Gateway

The Dragino LG01 gateway proved a good device to gain knowledge on LoRa technology. It was not

designed to support LoRaWAN and, as such, only supports one LoRaWAN channel, instead of eight. The

gateway can only receive one packet at a time, usually taking two to three seconds to process each packet,

which equates to roughly twenty to thirty packets per minute. Using LoRaWAN it can communicate with

other LoRa devices, as long as they share the same frequency, spread factor, bandwidth, preamble length

and sync word (a one byte value used to differentiate LoRa networks that use the same frequency bands).

As a result, the gateway cannot support many devices, with lab tests showing packet loss when fifty to

sixty devices each send messages within ten minute intervals [145].

RadioHead Protocol Tests

In the RadioHead tests two other ways to connect the gateway to the home network were tried. The first

by connecting the gateway directly to the home Wi-Fi router, through its WAN port. The gateway would

then act as a Wi-Fi access point for the home network, sharing its Internet connection through its access

point or by connecting to its LAN port. And the second by connecting the gateway to a Wi-Fi range

extender. Both tests proved unsuccessful.

To be able to monitor both the device and the gateway in the first LoRa experience, a new program,

ZTerm [146], was installed. This was due to the Arduino IDE only being able to show the serial monitor

of the device connected to the PC. The experience was successful and the result of the connection can be

seen in figure 5.17.

(a) The LoRa device monitor window. (b) The LoRa gateway monitor window.

Figure 5.17: LoRa device and gateway tests.

Figure 5.18 shows the result of the ThingSpeak platform test. At the platform two widgets were created,

one for the temperature and another for the humidity. The platform had a good user interface. The LoRa

architecture, proposed in section 4.3, was achieved with the RadioHead protocol, using this platform.

60

Page 81: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 5.18: Temperature and humidity values in ThingSpeak platform.

LoRaWAN Protocol Tests

The configuration of the gateway to support LoRaWAN proved very time consuming. A new firmware

[147] add to be installed to support LoRaWAN connectivity. The upload of this firmware proved very

challenging. Several reboots were necessary until the upload was finally successful. The upload of the

LoRaWAN sketch to the gateway was also complicated. To do it it was necessary to upload a new MCU

profile. Two versions of this file were available, version 2 and 3. Although the documentation advised the

installation of the latest version 3 of the file, upon first installing it the upload was unsuccessful. After

other tries with the file were attempted, followed by several resets, the upload was finally successful. Even

though the version 3 was uploaded, the gateway showed version 2 installed. After these steps, and the

gateway configuration, both at the web interface and at TTN, the gateway appeared as "connected" on

the service.

The gateway only supports Activation By Personalization, and can only receive a packet using one

frequency channel. This meant that the Arduino LoRa shield had to be configured to send the payload

using only one frequency, and the gateway had to be on that same frequency or the data will be lost.

The sketches used sent the payload using three frequencies, the 868.1, the 868.3, and the 868.5 MHz. To

achieve the results necessary two of the frequencies should be disabled. As the gateway was configured for

only the 868.1 MHz frequency, only the messages using that frequency were received. Because the other

two frequencies ended up not being disabled, when the device communicated it gave two pending errors

for the packets sent from those frequencies.

The first experience to send a simple tests message proved successful with the result shown in figure 5.19,

which presents the data payload, sent in hexadecimal.

For the second experience, the new sketch available at [148] failed to upload to the board with the error

"sketch too big" displayed. This was found to be related to the libraries used for the sketch not being

correct, even though they were provided specifically for this test. After trying to find a solution, a new

example available at [131] was found. This new sketch required the installation of two new libraries, one

for the GPS [132] and another for LMIC (LoraMAC-in-C) [133]. After uploading the sketch, the messages

61

Page 82: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Figure 5.19: The successful reception of the payload at the TTN platform.

were shown to not being received at the platform. Using the serial monitor it was confirmed that the new

LMIC library was defined for the 434 MHz channel frequency. The frequency had to be changed in the

"lorabase.h" file, found inside the source library folder. After the change in frequency the messages were

received at the platform.

At TTN, it was also possible to expand the view of each payload to see some statistics about the message.

One of these parameters available was the message time-on-air. The GPS LoRaWAN message contained

32 bytes, which equated to an average time on air around 75 milliseconds. Following this test, and keeping

the TTN fair access policy in mind, of allowing only thirty seconds uplink time, per device, per day [149],

means that four hundred LoRa messages could be sent in a day doubling what Sigfox offers.

TTN has a security feature against replay attacks for ABP devices, which uses frame counters for the

device every time a message is sent. If either the device or the network receives a message with a frame

counter that is lower than the expected one, the message is ignored. For this type of device the frame

counter resets every time the device restarts, preventing the messages from being received at the platform.

Because of this every time an ABP device receives a new power cycle it is necessary to then reset the

frame counters at the platform. The possibility to disable these frames is also possible, but doing so will

expose the device to possible replay attacks.

The GPS test was made both indoors and outdoors and a signal was not found. Several attempts were

made to solve the problem, by switching the software serial ports, but although the device sent information

to the network service, the payload remained empty. This led to the possible conclusions that: there was

a mistake in the code; the GPS module was not properly connected to the Arduino board; the library for

the GPS was not the right one; or the GPS module was not functioning properly. Figure 5.20 shows the

result of the failed GPS test.

Figure 5.20: The unsuccessful reception of the GPS signal at TTN.

62

Page 83: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

With LoRaWAN the proposed architecture was not achieved as TTN is a network server that does not

provide capabilities for creating a dashboard. The challenges faced with the LoRaWAN tests proved

very time consuming and understating how the devices and the gateway worked was more difficult than

originally though.

63

Page 84: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

64

Page 85: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Chapter 6

Conclusions

In this chapter, a summary of the work and the conclusions are presented. The objectives are revisited

and possible continuations of this work are touched upon.

65

Page 86: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

6.1 Developed Work

This thesis focuses on the use of IoT solutions for the smart home, with a particular focus on two LPWAN

technologies, Sigfox and LoRa. A detailed study is done on both technologies and a prototype solution for

a smart home project is developed.

In Chapter 2, several topics relating to IoT, such as its meaning, definitions and architecture are discussed.

Some of the most important technologies which enable the IoT are addressed, such as M2M communications

and cloud computing, while others that might be implemented in the future, like fog computing, are

touched upon. Also addressed are some of the challenges the IoT currently faces, such as security, privacy,

standards and rights. Each of these topics is studied in light of the challenges that IoT faces today.

In Chapter 3, several technologies which enable the IoT are reviewed and their most important features

explained, ending with a focus on LPWAN technologies. A more in depth discussion is given for the two

technologies used in the thesis, Sigfox and LoRa. Their characteristics, architecture and security are

reviewed. A discussion on their main differences is presented, followed by an analysis on the state of the

art. In the latter a look at the current hardware offers of both Sigfox and LoRa is given, and examples of

current IoT applications are presented.

In Chapter 4, the smart home project is developed, using Sigfox and LoRa technologies. Two architectures

for Sigfox and LoRa are proposed and the steps to achieved them explained. With Sigfox, three developer

kits are tested, with their experiences detailed, and a temperature and humidity prototype is used to

simulate a smart home IoT device. The prototype is then synced with several IoT platforms to be viewed

by a customer for a better user friendly experience. The experiences with the LoRa gateway and devices

are detailed, and their synchronization with a network server and a platform is explained.

In Chapter 5, an analysis of the challenges faced during the various tests is presented along with the

results of the IoT platforms solutions. An analysis is done on the experiences with Sigfox and LoRa.

Most of the objectives defined in the thesis are achieved, starting with the study of IoT, its challenges and

technologies, specifically Sigfox and LoRa. The prototype for Sigfox is created successfully and the results

obtained at the Sigfox back-end are the ones which were initially desired. Seven IoT platforms are used:

one, which failed to be implemented; four, that do not achieve the desired result; and two more, which

achieve the objectives first established. The technologies are compared and their results analyzed. The

four platforms using Sigfox that do not achieve the smart home solution desired are synchronized with the

Sigfox prototype successfully. One of the successful results, the Thinger platform, proved to be the most

suitable choice for a smart home project.

With LoRa, a prototype as not achieved because the technology proved to complex and time consuming to

implement mainly because of the study necessary to understand and use its gateway and devices. Although

the gateway proved effective in the work done, the fact that it did not support the full LoRaWAN protocol

66

Page 87: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

was found to be lacking. The tests conducted were made to better understand the technology and how to

implement it. Only one dashboard is used with this technology and successfully implemented. A network

server is also used with two tests conducted, one which worked and the other did not.

Based on the experiences of this work it is concluded that both Sigfox and LoRa technologies can be used

in smart home devices and both can have a future in the market. However, through the study and use

of both, it was also possible to conclude that neither can be used as the sole technology in the smart

home, mainly due to their limitations and low level interaction, meaning most devices will adopt a passive

stance, which goes against the normal use of devices in a home, where users like to interact with their

surroundings. After implementing Sigfox and LoRa on a smart home prototype system, the best solution

for the smart home was found to be Sigfox. Sigfox offers much more support for their customers, while

LoRa is a much more independent technology. This relates, for example, to the fact that Sigfox base

stations are deployed and managed by the company, meaning that users only need to focus on the devices

and the platforms for those same devices. It also offers support through the Sigfox back-end. On the other

hand, for LoRa, it is necessary to deploy and build a gateway or pay to use one from a telecommunications

operator which has deployed it. But solutions like this could not be found today. LoRa also has the

disadvantage of not offering a network service, meaning that one has to be used by third-party companies.

During the study and tests conducted with both technologies, the objectives defined at the start of the

work were found to be too many to achieve, specially relating to LoRa. As neither technology had been

used before, the study and implementation of the prototypes took longer than expected.

It is wished that this thesis will hopefully be of value and could serve as guidance for future smart home

projects. It showcases the possible problems an IoT project can face and provides a deeper understating

on the technologies which power the IoT.

6.2 Future Work

Throughout the course of the work several ideas were thought of for future continuation of the smart

home project.

With Sigfox a possible prototype which made use of downlink messages could be made. Another possibility

would be to synchronize various devices with IoT platforms. Using those same platforms services like

Twitter, Slack and others could be implemented. A smartphone application could also be developed.

With LoRa technology, a gateway capable of supporting the eight LoRaWAN channels could be used to

test several devices to better compare it with Sigfox. The newly released 1.1 LoRaWAN specification

capable of supporting Class B devices could also be tested. Other experiences like using IoT platforms to

manage more than one device, while also using services like Twitter, Slack or smartphone applications

could be made.

67

Page 88: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Annex A

1 #include <Wire . h>

2 #include <ardu inoS ig fox . h>

3 #include <ardu inoUt i l s . h>

4 #include <arduinoUART . h>

5 #include "cactus_io_SHT31 . h"

6 #include <Narco l ep t i c . h>

7

8 uint8_t socke t = SOCKET0; //Asign to UART0

9 uint8_t e r r o r ;

10 const int er ror_led = 13 ;

11 cactus_io_SHT31 sht31 ;

12 f loat t ;

13 f loat h ;

14

15 uint8_t data [ 8 ] ;

16 union {

17 uint8_t value [ 4 ] ;

18 f loat f v a l ;

19 } u ; // union to conver t f l o a t to by te s t r i n g

20

21 void setup ( ) {}

22 void loop ( ) {

23 S e r i a l . begin (9600) ;

24 pinMode ( error_led , OUTPUT) ;

25 i f ( ! sht31 . begin ( ) ) {

26 S e r i a l . p r i n t l n ( "Could not f i nd the s enso r . Check wi r ing and I2C address " ) ;

27 while (1 ) de lay (1 ) ; }

28

29 ////////////////////////////////

30 // 1 . swi t ch on

31 e r r o r = S ig f ox .ON( socke t ) ;

32 i f ( e r r o r == 0 ) {

33 d i g i t a lWr i t e ( error_led , LOW) ;

34 S e r i a l . p r i n t l n ( "Switch ON" ) ; }

35 else {

36 d i g i t a lWr i t e ( error_led , HIGH) ;

37 S e r i a l . p r i n t l n ( "Switch ERROR" ) ; }

38 ////////////////////////////////

39

40 S e r i a l . p r i n t l n ( " Sensor SHT31 − Humidity/Temperature Sensor " ) ;

41 t = sht31 . getTemperature_C ( ) ;

42 S e r i a l . p r i n t ( "TEMP= " ) ; S e r i a l . p r i n t ( t ) ; S e r i a l . p r i n t l n ( " ∗C" ) ;

68

Page 89: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

43 h = sht31 . getHumidity ( ) ;

44 S e r i a l . p r i n t ( "HUMD= " ) ; S e r i a l . p r i n t (h) ; S e r i a l . p r i n t l n ( " %\t " ) ;

45

46 // F i l l s t r u c t u r e f i e l d s

47 u . f v a l = t ;

48 // f i l l ’ data ’ b u f f e r with data

49 data [ 0 ] = u . va lue [ 3 ] ;

50 data [ 1 ] = u . va lue [ 2 ] ;

51 data [ 2 ] = u . va lue [ 1 ] ;

52 data [ 3 ] = u . va lue [ 0 ] ;

53

54 // F i l l s t r u c t u r e f i e l d s

55 u . f v a l = h ;

56 // f i l l ’ data ’ b u f f e r with data

57 data [ 4 ] = u . va lue [ 3 ] ;

58 data [ 5 ] = u . va lue [ 2 ] ;

59 data [ 6 ] = u . va lue [ 1 ] ;

60 data [ 7 ] = u . va lue [ 0 ] ;

61

62 ////////////////////////////////

63 // 3 . send s i g f o x data

64 e r r o r = S ig f ox . send ( data , 8) ;

65 i f ( e r r o r == 0 ) {

66 d i g i t a lWr i t e ( error_led , LOW) ;

67 S e r i a l . p r i n t l n ( "Packet sent OK" ) ; }

68 else {

69 d i g i t a lWr i t e ( error_led , HIGH) ;

70 S e r i a l . p r i n t l n ( "Packet sent ERROR" ) ; }

71 ////////////////////////////////

72 d i g i t a lWr i t e ( error_led , LOW) ;

73 Narco l ep t i c . de lay (1200000) ; // 20 min de lay

74

75 // Never do de l ay s shor t e r than 11 min or

76 // i t w i l l break s i g f o x message l im i t /day

77

78 // Narco l ep t i c . de lay (900000) ; 15 min de lay

79 // Narco l ep t i c . de lay (3600000) ; 1 hour de lay

80 // Narco l ep t i c . de lay (7200000) ; 2 hour de lay

81 }

69

Page 90: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

Bibliography

[1] L. Srivastava, “The Internet of Things”, ITU, 2005, pp. 3-4.

[2] M. Weiser, The Computer for the 21st Century, [Accessed Apr. 7, 2018], 1991. [Online]. Available:

https://www.ics.uci.edu/~corps/phaseii/Weiser-Computer21stCentury-SciAm.pdf.

[3] K. Ashton, That ’Internet of Things’ Thing, [Accessed Apr. 7, 2018], 2009. [Online]. Available:

http://www.rfidjournal.com/articles/view?4986.

[4] D. AG, “Industry 4.0 challenges and solutions for the digital transformation and use of exponential

technologies”, Deloitte, 2015, pp. 3-4.

[5] ITU-T, “Series Y: Global Information Infrastructure, Internet Protocol Aspects and Next-Generation

Networks”, ITU, 2012, pp. 2-9.

[6] A. Nordrum, Popular Internet of Things forecast of 50 billion devices by 2020 is outdated, [Accessed

Apr. 7, 2018], 2016. [Online]. Available: https://spectrum.ieee.org/tech-talk/telecom/

internet/popular-internet-of-things-forecast-of-50-billion-devices-by-2020-is-

outdated.

[7] B. Wire, Worldwide spending on the Internet of Things forecast to reach nearly $1.4 trillion in

2021, according to new IDC spending guide, [Accessed Apr. 7, 2018], 2017. [Online]. Available:

https://www.businesswire.com/news/home/20170614005185/en/Worldwide- Spending-

Internet-Things-Forecast-Reach-1.4.

[8] C. U. Usama Mehboob Qasim Zaib, “Survey of IoT communication protocols”, xFlow Research Inc,

2016, pp. 12-16.

[9] Verizon, “State of the Market: Internet of Things 2017”, Verizon, 2017, pp. 2-3.

[10] P. M. Timothy Malche, “Internet of Things (IoT) for building Smart Home System”, IEEE, pp. 65,

2017.

[11] T. E. Centre, “Technical Report M2M/IoT enablement in Smart Homes”, Ministry of Communica-

tions, Government of India, 2017, pp. 6-15.

[12] Deloitte, “Switch on to the connected home”, Deloitte, 2016, pp. 4.

[13] Z. D. Williams, IoT platforms company list 2017 update, [Accessed Apr. 7, 2018], 2017. [Online].

Available: https://iot-analytics.com/iot-platforms-company-list-2017-update/.

[14] G. M. Luigi Atzori Antonio Iera, “The Internet of Things: A survey”, Computer Networks, pp.

2787–2793, 2010.

70

Page 91: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

[15] A. V. Jyoti Deogirikar, “Security Attacks in IoT: A Survey”, IEEE, pp. 32–36, 2017.

[16] E. Commission, “Opinion 8/2014 on the on Recent Developments on the Internet of Things”,

European Commission, 2014, pp. 6-7.

[17] M. N. Lukas Krupka Lukas Vojtech, “The Issue of LPWAN Technology Coexistence in IoT

Environment”, Mechatronics, pp. 1–7, 2016.

[18] M. Y. K. Keith E. Nolan Wael Guibene, “An evaluation of Low Power Wide Area Network

Technologies For The Internet Of Things”, Wireless Communications and Mobile Computing

Conference, pp. 439–442, 2016.

[19] Flaticon, Free Vector Icons, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.

flaticon.com/.

[20] L. C. Karen Rose Scott Eldridge, “The Internet of Things: An Overview”, The Internet Society,

2015, pp. 1-45.

[21] A. Banafa, Three Major Challenges Facing IoT, [Accessed Apr. 7, 2018], 2017. [Online]. Available:

https://iot.ieee.org/newsletter/march-2017/three-major-challenges-facing-iot.

html.

[22] M. G. Institute, “The Internet of Things: Mapping the value beyond the hype”, McKinsey, 2015,

pp. 2-9.

[23] W. Wong, What’s the Difference Between Consumer and Industrial IoT?, [Accessed Apr. 7, 2018],

2016. [Online]. Available: http://www.electronicdesign.com/iot/what- s- difference-

between-consumer-and-industrial-iot.

[24] J. M.S.V.D.C. P. Shivangi Vashi Jyotsnamayee Ram, “Internet of Things (IoT) a vision, architectural

elements, and security issues”,

[25] A. N.T. K. Mohsen Hallaj Asghar Nasibeh Mohammadzadeh, “Principal Ingredients and Framework

of Internet of Things (IoT)”, Wireless and Optical Communications Networks (WOCN), pp. 1–5,

2015.

[26] C. E. Michael Weyrich, “Reference Architectures for the Internet of Things”, IEEE Software, pp.

112–116, 2016.

[27] ITU-T, “M2M service layer: Requirements and architectural framework”, Tech. Rep.

[28] H. H. Ved P. Kafle Yusuke Fukushima, “Internet of Things Standardization in ITU and Prospective

Networking Technologies”, IEEE Communications Magazine, pp. 43–49, 2016.

[29] S. Z. Shancang Li Li Da Xu, “The Internet of Things: A Survey”, Springer Science+Business Media,

pp. 243–250, 2014.

[30] V. P.A. P. Alessio Botta Walter de Donato, “Integration of Cloud computing and Internet of

Things: A survey”, Future Generation Computer Systems, pp. 686–689, 2015.

[31] P. C. Charith Perera Prem Prakash Jayaraman, “MOSDEN: An Internet of Things Middleware for

Resource Constrained Mobile Devices”, System Sciences (HICSS), pp. 1–2, 2014.

71

Page 92: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

[32] I. ANALYTICS, The IoT Platform Company List 2017, [Accessed Apr. 7, 2018], 2017. [Online].

Available: https://iot-analytics.com/product/list-of-450-iot-platform-companies/.

[33] Microsoft, Azure IoT Suite, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.

microsoft.com/en-us/internet-of-things/azure-iot-suite.

[34] Amazon, AWS IoT Core Overview, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https:

//aws.amazon.com/iot-platform/.

[35] Google, Google Cloud IoT, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://cloud.

google.com/solutions/iot/.

[36] X. C. Rong N. Chang Wei Cheng, “IEEE Internet of Things Journal Special Issue on Fog Computing

in IoT”, IEEE Sensors Council, pp. 1–2, 2017.

[37] J. Z.S. A. Flavio Bonomi Rodolfo Milito, “Fog Computing and Its Role in the Internet of Things”,

ACM, pp. 13–14, 2012.

[38] Cisco, “Fog Computing and the Internet of Things: Extend the Cloud to Where the Things Are”,

Cisco, pp. 1–5, 2015.

[39] ETSI, Internet of Things, [Accessed May 13, 2018], 2018. [Online]. Available: http://www.etsi.

org/technologies-clusters/technologies/internet-of-things.

[40] IEEE, Internet of Things, [Accessed May 13, 2018], 2018. [Online]. Available: http://standards.

ieee.org/innovate/iot/stds.html.

[41] I. O. for Standardization, ISO/IEC JTC 1/SC 41, [Accessed May 13, 2018], 2018. [Online]. Available:

https://www.iso.org/committee/6483279.html.

[42] ITU, ITU-T: Global Standards for the Internet of Things, [Accessed May 13, 2018], 2018. [Online].

Available: https://www.itu.int/en/ITU-T/techwatch/Pages/internetofthings.aspx.

[43] E. Comission, “Position Paper on Standardization for IoT technologies”, European Research Cluster

on the Internet of Things, 2015, pp. 5-16.

[44] H. K.-V. Pekka Kess, “Standardization with IoT (Internet of Things)”, Management, Knowledge

and Learning Joint International Conference 2016, 2016, pp. 1072-1075.

[45] 3rd Generation Partnership Project, Standardization of NB-IOT completed, [Accessed Apr. 7,

2018], 2018. [Online]. Available: http://www.3gpp.org/news- events/3gpp- news/1785-

nb_iot_complete.

[46] G. T. Santhosh Krishna B V, “A Systematic Study of Security Issues in Internet-of-Things (IoT)”,

I-SMAC (IoT in Social, Mobile, Analytics and Cloud), pp. 107–110, 2017.

[47] F. S. Report, “Internet of Things: Privacy & Security in a Connected World”, FTC, 2015, pp. 7-18.

[48] R. Kemp, “Legal Aspects of the Internet of Things”, Kemp IT Law, 2017, pp. 2-9.

[49] A. W. Mian Muhammad Ahemd Munam Ali Shah, “IoT Security: A Layered Approach for Attacks

& Defenses”, Communication Technologies (ComTech), pp. 104–109, 2017.

72

Page 93: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

[50] J. Vincent, Inaudible ultrasound commands can be used to secretly control Siri, Alexa, and Google

Now, [Accessed Apr. 7, 2018], 2017. [Online]. Available: https://www.theverge.com/2017/9/7/

16265906/ultrasound-hack-siri-alexa-google.

[51] T. Warren, Amazon’s Echo Spot is a sneaky way to get a camera into your bedroom, [Accessed Apr.

7, 2018], 2017. [Online]. Available: https://www.theverge.com/2017/9/28/16378472/amazons-

echo-spot-camera-in-your-bedroom.

[52] L. H. Newman, The $10 Hardware Hack That Wrecks IOT Security, [Accessed Apr. 7, 2018], 2017.

[Online]. Available: https://www.wired.com/story/sd-card-hack-iot-zero-days/?utm_

campaign=IFA_WeekendReading_Aug2\&utm_medium=email\&utm_source=newsletter.

[53] L. Hautala, Hackers could use baby monitors to watch your kids too, security experts warn, [Accessed

Apr. 7, 2018], 2015. [Online]. Available: https://www.cnet.com/news/several-baby-monitors-

easily-hacked-security-researcher-finds/.

[54] D. Storm, Researchers hack a pacemaker, kill a man(nequin), [Accessed Apr. 7, 2018], 2015.

[Online]. Available: https://www.computerworld.com/article/2981527/cybercrime-hacking/

researchers-hack-a-pacemaker-kill-a-man-nequin.html.

[55] FTC, FTC Report on Internet of Things, [Accessed Apr. 7, 2018], 2015. [Online]. Available:

https://www.ftc.gov/news- events/press- releases/2015/01/ftc- report- internet-

things-urges-companies-adopt-best-practices.

[56] K. Smith, IoT Security: Risks and Realities, [Accessed Apr. 7, 2018], 2016. [Online]. Available:

https://www.allaboutcircuits.com/news/iot-security-risks-and-realities/.

[57] L. Frenzel, “12 Wireless Options for IoT/M2M: Diversity or Dilemma?”, Electronic Design, 2016,

pp. 16-17.

[58] L. Labs, “Low Power, Wide Area Networks For ’Internet of Things’ Engineers and Decision Makers”,

Link Labs, 2016, pp. 2-15.

[59] S. Tabbane, “IoT Network Planning”, ITU, 2016, pp. 18-107.

[60] M. Hassel, IoT and M2M, What’s the difference?, [Accessed Apr. 7, 2018], 2017. [Online]. Available:

http://www.incognito.com/blog/iot-and-m2m-whats-the-difference/.

[61] T. T.O.K. T. Mario Collotta Giovanni Pau, “Bluetooth 5: a concrete step forward towards the

IoT”, Networking and Internet Architecture, pp. 1–9, 2017.

[62] T. Tirronen, Cellular IoT alphabet soup, [Accessed Apr. 7, 2018], 2016. [Online]. Available: https:

//www.ericsson.com/research-blog/cellular-iot-alphabet-soup/.

[63] O. S.N. S. Jean-Paul Bardyn Thierry Melly, “IoT : The Era of LPWAN is starting now”, European

Solid-State Circuits Conference, 2016, pp. 25-30.

[64] J. Afzal, NB-IoT - The choice of Frequency, Deployment Mode and Coverage, [Accessed May 14,

2018], 2017. [Online]. Available: https://www.netmanias.com/en/post/blog/11745/iot-nb-

iot/nb-iot-the-choice-of-frequency-deployment-mode-and-coverage.

73

Page 94: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

[65] P. T.-P. Ferran Adelantado Xavier Vilajosana, “Understanding the Limits of LoRaWAN”, IEEE

Communications Magazine, pp. 1–3, 2017.

[66] 3GPP, First 5G NR Specs Approved, [Accessed Apr. 7, 2018], 2017. [Online]. Available: http:

//www.3gpp.org/news-events/3gpp-news/1929-nsa_nr_5g.

[67] M. Research, “LPWA Technologies Unlock New IoT Market Potential”, LoRa Alliance, 2015, pp.

2-13.

[68] R. Quinnell, Low Power Wide Area Networking alternatives for the IoT, [Accessed Apr. 7, 2018],

2015. [Online]. Available: https://www.edn.com/design/systems-design/4440343/Low-power-

wide-area-networking-alternatives-for-the-IoT.

[69] W. SIG, “LPWAN Technology Decisions: 17 critical features”, Weightless SIG, 2016, pp. 2-5.

[70] Sigfox, Sigfox, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.sigfox.com/en.

[71] ITU-T, Sigfox Joins ITU To Influence International Standardization For The Internet Of Things,

[Accessed Apr. 7, 2018], 2017. [Online]. Available: http://newslog.itu.int/archives/1546.

[72] Sigfox, “Sigfox Technical Overview”, Sigfox, 2017, pp. 4-25.

[73] ——, Messages per day/hour, [Accessed Apr. 7, 2018], 2017. [Online]. Available: https://ask.

sigfox.com/questions/2968/messages-per-dayhour.html.

[74] ——, Sigfox Cloud Interfaces, [Accessed Apr. 7, 2018], 2016. [Online]. Available: https://www.

youtube.com/watch?v=7gTwFbiiJwE.

[75] ——, Callbacks Documentation, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://

resources.sigfox.com/document/callbacks-documentation.

[76] D. Reuse, Cycleo unveils its first innovative semiconductor IP bringing unprecedented range to

wireless data transmission, [Accessed Apr. 7, 2018], 2009. [Online]. Available: https://www.design-

reuse.com/news/21552/wireless-semiconductor-ip.html.

[77] Semtech, Semtech Acquires Wireless Long Range IP Provider Cycleo, [Accessed Apr. 7, 2018], 2012.

[Online]. Available: http://investors.semtech.com/releasedetail.cfm?ReleaseID=655335.

[78] ——, Network Coverage Based on Semtech’s LoRa Technology to be Available in 15 Major U.S.

Cities, [Accessed May 9, 2018], 2017. [Online]. Available: https://investors.semtech.com/news-

releases/news-release-details/network-coverage-based-semtechs-lora-technology-

be-available-15.

[79] J. J.P.C. R. Jonathan de Carvalho Silva, “LoRaWAN - A Low Power WAN Protocol for Internet of

Things: a Review and Opportunities”, Computer and Energy Science (SpliTech), pp. 1–6, 2017.

[80] A. Z.M. Z. Marco Centenaro Lorenzo Vangelista, “Long-Range Communications in Unlicensed

Bands: the Rising Stars in the IoT and Smart City Scenarios”, IEEE Wireless Communications,

pp. 2–7, 2016.

[81] U. R. Martin Bor John Vidler, “LoRa for the Internet of Things”, International Conference on

Embedded Wireless Systems and Networks, pp. 361–362, 2016.

74

Page 95: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

[82] A. Orange, “LoRa Device Developer Guide”, Orange, 2016, pp. 5-11.

[83] V. P. Alexandru Lavric, “LoRa Wide-Area Networks from an Internet of Things Perspective”,

Electronics, Computers and Artificial Intelligence (ECAI), pp. 1–3, 2017.

[84] R. Miller, “LoRa Security Building a Secure LoRa Solution”, MWR Labs, 2016, pp. 5-8.

[85] G. Schatz, Sigfox vs. LoRa: A Comparison Between Technologies & Business Models, [Accessed

Apr. 7, 2018], 2016. [Online]. Available: https://www.link-labs.com/blog/sigfox-vs-lora.

[86] Loriot, LoRa gateways and concentrators, [Accessed Apr. 7, 2018], 2016. [Online]. Available: https:

//www.loriot.io/lora-gateways.html.

[87] Mbed, Building your own private LoRa network, [Accessed May 13, 2018], 2018. [Online]. Available:

https://docs.mbed.com/docs/lora-with-mbed/en/latest/intro-to-lora/.

[88] B. Harpley, LPWAN Low-Power WANs for IoT – Part 2, [Accessed Apr. 7, 2018], 2017. [Online].

Available: https://www.astius.co.uk/2015/12/lpwan-for-iot-part-2/.

[89] I. Morris, Sigfox to Go Public in 2018 – Report, [Accessed Apr. 7, 2018], 2016. [Online]. Available:

http://www.lightreading.com/iot/iot-strategies/sigfox-to-go-public-in-2018---

report/d/d-id/728760.

[90] B. Harpley, Low-Power WANs ( LPWAN ) for IoT – Part 1, [Accessed Apr. 7, 2018], 2017. [Online].

Available: https://www.astius.co.uk/2015/10/iot-lpwan-part1/.

[91] Sigfox, Why certification?, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://resources.

sigfox.com/document/why-certification.

[92] ——, Sigfox Partner Network, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://partners.

sigfox.com/.

[93] LoRa, LoRa Transceivers, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.semtech.

com/products/wireless-rf/lora-transceivers.

[94] J. P. Tomas, SK Telecom completed nationwide deployment of LoRa network, [Accessed Apr. 7, 2018],

2016. [Online]. Available: https://www.rcrwireless.com/20160704/carriers/operators-

korea-netherlands-deploy-lora-networks-iot-tag23.

[95] G. Burton, London gets a dedicated IoT network, [Accessed Apr. 7, 2018], 2016. [Online]. Available:

https://www.theinquirer.net/inquirer/news/2471687/london- gets- dedicated- iot-

network.

[96] gemalto, Narrowband IoT (NB-IoT), [Accessed Apr. 7, 2018], 2018. [Online]. Available: https:

//www.gemalto.com/m2m/development/innovation-technology/nb-iot.

[97] J.-P. Joosting, Narrowband IoT functionality demonstarted in the field, [Accessed Apr. 7, 2018],

2017. [Online]. Available: http://www.mwee.com/news/narrowband- iot- functionality-

demonstarted-field?news_id=91793.

[98] S. Shah, Cisco launches global NB-IoT platform, [Accessed Apr. 7, 2018], 2018. [Online]. Available:

https://internetofbusiness.com/cisco-nb-iot-platform-worldwide/.

75

Page 96: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

[99] Amazon, Amazon Go, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.amazon.

com/b?node=16008589011.

[100] B. Buy, Google Home, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.bestbuy.

com/site/google-home-white-slate-fabric/5578849.p?skuId=5578849.

[101] A. Villas-Boas, 14 ways you can control your home with your voice using Amazon’s Echo and Alexa,

[Accessed Apr. 7, 2018], 2017. [Online]. Available: http://www.businessinsider.com/amazon-

echo-alexa-control-smart-home-with-voice-2017-1/#smart-home-hubs-compatible-

with-alexa-1.

[102] Amazon, Amazon Key, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.amazon.

com/b?ie=UTF8\&node=17285120011.

[103] D. Bird, Door Bird, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.doorbird.

com/.

[104] elgato eve, Eve Degree, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.elgato.

com/en/eve/eve-degree.

[105] Kasita, Kasita, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://kasita.com/.

[106] Sigfox, Sens’it, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://www.sensit.io/.

[107] T. B. Corporation, Bt.tn, [Accessed Apr. 7, 2018], 2017. [Online]. Available: https://bt.tn/

sigfox/.

[108] Sigfox, Sigfox and Louis Vuitton partner for innovative luggage tracker, [Accessed Apr. 7, 2018],

2018. [Online]. Available: https://www.sigfox.com/en/news/sigfox-and-louis-vuitton-

partner-innovative-luggage-tracker.

[109] E. Home, Smart Home Monitoring System, [Accessed Apr. 7, 2018], 2017. [Online]. Available:

https://eddyhome.com/how-eddy-helps/eddy-in-your-home/.

[110] IBM, Implement your first IoT and blockchain project, [Accessed Apr. 7, 2018], 2018. [Online].

Available: https://www.ibm.com/internet-of-things/spotlight/blockchain.

[111] G. Eastwood, Why blockchain is the future of IoT, [Accessed Apr. 7, 2018], 2017. [Online]. Available:

https://www.networkworld.com/article/3200029/internet-of-things/why-blockchain-

is-the-future-of-iot.html.

[112] T. Design, “TD1208 Evaluation Board User’s Guide”, Telecom Design, 2014, pp. 6-9.

[113] SmartEverything, SmartEverything, [Accessed Apr. 7, 2018], 2016. [Online]. Available: https:

//www.smarteverything.it/.

[114] C. Hacks, Sigfox Radio Shield for Arduino, [Accessed Apr. 7, 2018], 2018. [Online]. Available:

https://www.cooking-hacks.com/sigfox-radio-shield-for-arduino-868-mhz.

[115] ALTAIR, Internet of Things Platform, [Accessed May 10, 2018], 2011. [Online]. Available: https:

//www.carriots.com/.

76

Page 97: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

[116] nicolsc, SmartEverything Hello World, [Accessed Apr. 7, 2018], 2016. [Online]. Available: https:

//github.com/nicolsc/smarteverything-hello-world.

[117] brabl2, Narcoleptic, [Accessed Apr. 7, 2018], 2015. [Online]. Available: https://github.com/

brabl2/narcoleptic.

[118] Cloudthing, Internet of Things made simple, [Accessed Apr. 7, 2018], 2018. [Online]. Available:

https://cloudthing.io/.

[119] Tago, Tago, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://tago.io/.

[120] Wia, Where People and Things go to talk, [Accessed Apr. 7, 2018], 2018. [Online]. Available:

https://www.wia.io/.

[121] Thinger, Open Source IoT Platform, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https:

//thinger.io/.

[122] Databoom, A brand new IoT WEB app, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https:

//databoom.com/it/.

[123] Amazon, AWS IoT Core, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://aws.amazon.

com/iot-core/.

[124] Dragino, LoRa IoT development Kit, [Accessed Apr. 7, 2018], 2018. [Online]. Available: http:

//www.dragino.com/products/lora/item/120-lora-iot-kit.html.

[125] ——, “LG01 LoRa Gateway User Manual”, Dragino, 2017, pp. 1-55.

[126] Tindie, LG01 LoRa OpenWrt IoT Gateway, [Accessed Apr. 7, 2018], 2018. [Online]. Available:

https://www.tindie.com/products/edwin/lg01-lora-openwrt-iot-gateway/.

[127] M. McCauley, RadioHead Packet Radio library for embedded microprocessors, [Accessed Apr. 7,

2018], 2014. [Online]. Available: http://www.airspayce.com/mikem/arduino/RadioHead/.

[128] ThingSpeak, IoT Analytics, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://thingspeak.

com/.

[129] TheThingsNetwork, Building a global Internet of Things Network Together, [Accessed May 15,

2018], 2018. [Online]. Available: https://www.thethingsnetwork.org/.

[130] Dragino, Arduino Profile Examples, [Accessed Apr. 7, 2018], 2017. [Online]. Available: https:

//github.com/dragino/Arduino- Profile- Examples/blob/master/libraries/Dragino/

examples/LoRa/LoRaWAN/Arduino_LMIC/Arduino_LMIC.ino.

[131] ——, LoRa/GPS Shield, [Accessed Apr. 7, 2018], 2017. [Online]. Available: http://wiki.dragino.

com/index.php?title=Lora/GPS_Shield.

[132] mikalhart, TinyGPS, [Accessed Apr. 7, 2018], 2013. [Online]. Available: https://github.com/

mikalhart/TinyGPS.

[133] goodcheney, Arduino LMIC Master, [Accessed Apr. 7, 2018], 2017. [Online]. Available: https:

//github.com/goodcheney/Arduino-Lmic-master.

77

Page 98: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

[134] Snootlab, Akeru beta 3.3, [Accessed May 12, 2018], 2016. [Online]. Available: https://snootlab.

com/shields-snootlab/829-.html.

[135] C. Hacks, Sigfox Radio Shield for Arduino - EU, [Accessed May 12, 2018], 2016. [Online]. Available:

https://www.cooking-hacks.com/sigfox-radio-shield-for-arduino-868-mhz.

[136] ——, Sigfox Shield for Raspberry Pi - EU, [Accessed May 12, 2018], 2016. [Online]. Available: https:

//www.cooking-hacks.com/sigfox-shield-for-raspberry-pi-868-mhz-xbee-socket.

[137] ——, Waspmote Sigfox SMA 4.5 dBi - Europe, [Accessed Mat 12, 2018], 2016. [Online]. Available:

https://www.cooking-hacks.com/waspmote-sigfox-sma-4-5-dbi-868.

[138] Sigfox, Arrow Smart Everything, [Accessed Apr. 7, 2018], 2018. [Online]. Available: https://

partners.sigfox.com/products/smart-everything.

[139] C. Hacks, LoRa Radio Shield for Arduino - 868 MHz, [Accessed May 12, 2018], 2016. [Online].

Available: https://www.cooking-hacks.com/lora-radio-shield-for-arduino-868-mhz.

[140] ——, SX1272 LoRa Shield for Raspberry Pi - 868 MHz, [Accessed May 12, 2018], 2016. [Online].

Available: https://www.cooking-hacks.com/sx1272-lora-shield-for-raspberry-pi-868-

mhz.

[141] ——, Waspmote SX1272 LoRa module SMA 4.5 dBi - 868 MHz, [Accessed May 12, 2018], 2016.

[Online]. Available: https://www.cooking-hacks.com/waspmote-sx1272-lora-sma-4-5-dbi-

868-mhz.

[142] ——, LoRaWAN Radio Shield for Arduino - EU, [Accessed May 12, 2018], 2016. [Online]. Available:

https://www.cooking-hacks.com/lorawan-radio-shield-for-arduino-868-mhz.

[143] ——, LoRaWAN Shield for Raspberry Pi - EU, [Accessed May 12, 2018], 2016. [Online]. Available:

https://www.cooking- hacks.com/lorawan- shield- for- raspberry- pi- 868- mhz- xbee-

socket.

[144] ——, Waspmote LoRaWAN SMA 4.5 dBi - Europe, [Accessed May 12, 2018], 2016. [Online].

Available: https://www.cooking-hacks.com/waspmote-lorawan-sma-4-5-dbi-868-mhz.

[145] Dragino, Welcome to Dragino Wiki Page, [Accessed Apr. 7, 2018], 2018. [Online]. Available:

http://wiki.dragino.com/index.php?title=Main_Page.

[146] D. P. Alverson, ZTerm - Macintosh Modem Communications, [Accessed Apr. 7, 2018], 2012. [Online].

Available: http://www.dalverson.com/zterm/.

[147] Dragino, Dragino Download Server, [Accessed Apr. 7, 2018], 2018. [Online]. Available: http:

//www.dragino.com/downloads/index.php?dir=motherboards/ms14/Firmware/IoT/.

[148] goodcheney, Arduino Profile Examples, [Accessed Apr. 7, 2018], 2017. [Online]. Available: https:

//github.com/goodcheney/Arduino-Profile-Examples/blob/patch-4/libraries/Dragino/

examples/LoRa/LoRaWAN/LoRa_GPS_Shield_TTN.

78

Page 99: AntónioGonçalvesVianCosta · Internet of Things for the Smart Home AntónioGonçalvesVianCosta Thesis to obtain the Master of Science Degree in Electrical and Computer Engineering

[149] Arjan, Limitations: data rate, packet size, 30 seconds uplink and 10 messages downlink per day Fair

Access Policy, [Accessed Apr. 7, 2018], 2017. [Online]. Available: https://www.thethingsnetwork.

org/forum/t/limitations-data-rate-packet-size-30-seconds-uplink-and-10-messages-

downlink-per-day-fair-access-policy/1300.

79