Increased flexibility in long-
range IoT deployments with
transparent and light-weight
2-hop LoRa approach
Wireless Days International Conference
Manchester Metropolitan University, Manchester, UK
April 24-26th, 2019
Authors: Mamour Diop and Congduc Pham
Presented on April 24th, 2019 by C. Pham
Prof. Congduc Pham
http://www.univ-pau.fr/~cpham IoT – from idea to reality
Université de Pau, France
LoRa LPWAN wireless technology
Energy-Range dilemma
Energy
Long-range
L
Low-power P
5G?
W
A 2G/3G/4G
N Semtech's LoRa provides
low-power long-range
transmission enabling
several years of operation
on batteries
Low throughput
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
Soil moisture 10-15kms
monitoring
LoRa networks are 1-hop,
gateway-centric with possible
roaming
2
(very) low cost hardware
http://blog.atmel.com/2015/12/16/rewind-50-
Arduino Pro Mini of-the-best-boards-from-2015/
http://blog.atmel.com/2015/04/09/25-dev-
boards-to-help-you-get-started-on-your-next-
LoPy iot-project/
ATmega328P 3.3v
8bit, 8MHz, 32K flash, 2K RAM
Teensy 3.2
Theairboard Expressif ESP32 STM32
Nucleo-32
LinkIt
Smart7688 duo Heltec ESP32 + OLED
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
SodaqOnev2
Adafruit Feather
Sparkfun ESP32 Tinyduino
Thing Tessel 4
Generic templates
Moisture/ 10-15kms
Temperature of setup
storage areas xxxxxx
measure
Physical Physical Physical
sensor sensor sensor
(encrypt)
transmit
Arduino Pro Mini @3.3V
Activity
Physical
duty-cycle, sleep
sensor mgmt
low power
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
wake-up
Logical
data Long-range
sensor
encryption transmission
mgmt
5
From Unparallel for WAZIUP
High building=large coverage
◉ LoRaWAN gateway on top of DSP building by F. Ferrero (U. Nice), U.
Danang and DSP team. Congrats Fabien!
About 80m
8-10kms in urban
+26kms in LOS!
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
See TTN Mapper rssi: -118dBm
https://ttnmapper.org/ snr: 0.8dB
distance: 25800m 9
Deployment in rural areas
no high building L
◉ Expected range: about 2-4kms
◉ 1-hop connectivity to gateway is difficult to achieve in
real-world, remote, rural scenarios
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
10
2-hop long-range approach
◉ smart, transparent relay node should be able to be inserted
at anytime between end-devices and gateway to increase
range
n3
Relay-device Gatewa
y
End-device
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
◉ 2 possible approaches
◉ Use short Channel Activity Detection (CAD) to dynamically detect
uplink messages (recent draft from Semtech)
◉ Use an observation phase to determine device's schedule
11
LoRa's Channel Activity Detection
◉ CAD reliability decreases as distance increases
◉ A CAD returning false does not mean that there is no activity!
◉ During a long transmission (i.e. several seconds)
there is usually at least one CAD returning true
However, a relay node using short
CAD will miss uplink packets!
TX TX TX
1.2
Channel Activity Detection
15s
http://www.univ-pau.fr/~cpham
1
Prof. Congduc Pham
0.8
0.6 TX 244 bytes
(CAD)
0.4 Time on Air = 8.82s
0.2 Perform CAD every 1000ms
0
430000 440000 450000 460000 470000 480000 490000 500000 510000
Time in milli-seconds
12
Our relay's design choices
◉ Observation phase + data forwarding phase
◉ On-the-fly learning of incoming traffic from end-devices:
observation phase
◉ Just-in-time wake up in data forwarding phase
◉ Minimum guard time to limit energy consumption
◉ Deep sleep between 2 wake up
◉ No additional hardware ➔ low-cost sensor nodes can be
recycled as relay node
http://www.univ-pau.fr/~cpham
◉ Can handle downlink messages from gateway
Prof. Congduc Pham
13
Observation phase
◉ Device i wakes up and transmit every I_target_i
◉ Target TX time for device i: T0_i+n*I_target_i
◉ Real TX time for device i: T0_i+n*I_real_i
◉ I_real_i from device i is determined during observation phase
Device i I_real_i ToA_i Note that I_real_i can also take
into account pkt collisions that are
Device j I_real_j ToA_j resolved with some kind of back-
Device k I_real_k ToA_k off procedure
1 hour
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
1 4 6 2 7 3 85 1 4 6 2 7 3 85 1 4 6 2 7 3 85 1 4 6 2 7 3 85 1 4 6 2 7 3 85 1 4 6 2 7 3 85
sensing period
observation phase
◉ Relay wake up
◉ Minimized guard time 1 4 6 2 7 3 85
14
Synchronizing devices<->relay
◉ ATMega328P (8bit, 8MHz, 32K flash, 2K RAM)
◉ Available deep sleep durations with internal watchdog timer
◉ [8, 4, 2, 1] seconds, [500, 250, 120, 60, 30, 15] milliseconds
◉ Use multiple deep sleep cycles of [8, 4, 2, 1]s
◉ Last 1000ms do not use deep sleep mode
◉ Each deep sleep cycle adds time overhead
◉ Take into account the cycle time overhead
◉ Without RTC, external timers are disabled during deep sleep
◉ No "absolute" time available
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
◉ Need to re-adjust all stored timestamps at each wake up
◉ Before deep sleep -> T1wake_up
◉ After deep sleep -> T2wake_up
◉ Re-adjust by T2wake_up – T1wake_up
15
Energy consumption (1)
◉ Continuous receive: 15mA, Deep sleep: 5uA, Transmit: 40mA
◉ For an observation phase of 1 hour
◉ Continuous receive (2s) and relay/transmit uplink messages (2s)
◉ Ex: 8 msg in 1h (4 devices, assuming 2msg/device/hour)
◉ ((8*2s)*40mA+(3600s−8*2s)*15mA)/3600s = 15.11mA
1h 2h 3h
15,4
2500mAh
Average consumption (mA)
15,3
15,2
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
15,1
15
1h of observation consumes
1/165th of the battery capacity
14,9
14,8
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
Number of relayed packets
16
Energy consumption (2)
◉ In forwarding phase
◉ Each wake up introduces about 2s of continuous receive followed by 2s
of transmission (like previously)
◉ (2s*15mA+2s*40mA)/4s = 27.5mA for each wake up
◉ for 8 uplink msg
(8*4s*27.5mA+ (3600s−8*4s)*0.005mA)/3600s=0.250mA
◉ 414 days of operation
◉ We considered 2s to receive and 2s to transmit
◉ When considering only 1s for receiving and 1s for transmission,
http://www.univ-pau.fr/~cpham
the lifetime is greatly increased
Prof. Congduc Pham
◉ Depending on terrain configuration, LoS conditions,… smaller
spreading factor values can be used instead
17
Time on Air & spreading factor
◉ Using smaller spreading factor greatly decreases the time on air,
but decrease receiver 's sensibility!
time on air in second for payload size of
Sensibility/Range
max
LoRa 25 55 105 155 205 255 thoughput
mode BW SF 5 bytes bytes bytes bytes Bytes Bytes Bytes (255B
1 125 12 0.9585 1.6138 2.5969 4.2353 5.8737 7.5121 9.1505 223
2 250 12 0.4792 0.8069 1.2165 1.8719 2.5272 3.2645 3.9199 520
3 125 10 0.2806 0.4854 0.6902 1.0998 1.5094 1.919 2.3286 876
4 500 12 0.2396 0.4035 0.6083 0.9359 1.2636 1.6323 1.9599 1041
5 250 10 0.1403 0.2427 0.3451 0.5499 0.7547 0.9595 1.1643 1752
6 500 11 0.1198 0.2222 0.3041 0.5089 0.6932 0.8776 1.0619 1921
7 250 9 0.0701 0.1316 0.1828 0.2954 0.4081 0.5207 0.6333 3221
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
Throughput
8 500 9 0.0351 0.0658 0.0914 0.1477 0.204 0.2604 0.3167 6442
9 500 8 0.0175 0.0355 0.0508 0.0815 0.1148 0.1455 0.1788 11408
10 500 7 0.0088 0.0203 0.028 0.0459 0.0638 0.083 0.1009 20212
Transmitting: TC/22.5/HUM/67.7 ; about 20 bytes with packet header
Time on air is 1.44s
18
Radio duty-cycle
◉ In Europe, duty-cycle imposes a maximum of 36s/hour of
transmission for a device. The relay is considered a device
◉ Assuming 1msg/device/hour and 1s for receiving and 1s for
transmission then the relay can support 36 devices
◉ How to increase the number of devices?
◉ Decrease spreading factor – OK, but not always possible
◉ Decrease #msg per device/hour – depend on the application
◉ Do not forward every message – how to select which packet to forward?
◉ We are investigating similarity detection in relay node to detect
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
"similar" devices
◉ "similar" devices means their measures are considered "similar"
◉ Relay node can decide to forward only 1 pkt from a set of similar devices
◉ Can still use encryption but relay needs to be able to decrypt
19
Conclusions
◉ 1-hop to gateway can be challenging in real-world, rural LoRa
deployment
◉ 2-hop LoRa will provide much higher flexibility in deployment
◉ Using CAD approach can be very unreliable
◉ We demonstrate the feasibility of a 2-hop relay node based on
very low-cost hardware
◉ No additional hardware (hard design choice)
◉ Observation phase to schedule future wake up
◉ Can handle packet collision if observation phase >> sensing period
http://www.univ-pau.fr/~cpham
Prof. Congduc Pham
◉ Just-in-time wake up in data forwarding phase
◉ Relay can keep synchronization with devices
◉ Low-energy consumption
◉ Embedded similarity detection mechanism under study
20