LoRaWAN – Architecture and Protocol

The LoRa radio frequency (RF) component (developed by Semtech) is only one part of the LoRaWAN architecture.

  • End-nodes run on low-power, collect data from sensors, transmit small data payloads
  • Gateways receive LoRa frames and forward the to Network Server
  • Network Servers provide radio control, device access, and deduplication
  • Application Servers decrypt, decode, and forward data to applications

The LoRa Alliance is an industry association created in 2015 to support LoRaWAN (long range wide-area network) protocol as well as ensure interoperability of all LoRaWAN products and technologies. Source: https://en.wikipedia.org/wiki/LoRa#LoRaWAN

LoRaWAN network architecture (Source: Semtech).

LoRaWAN Protocol Stack

LoRaWAN is built on LoRa RF Modulation. It provides Media Access Control (MAC), regional parameters, device classes and end-to-end application security for data payloads.

This is a technology stack view for LoRaWAN. It shows the regional aspects defined for RF modulation, and distinct LoraWAN device types. LoRa MAC commands are used to control RF channels, transmit power, and spreading factor (data rate).

Much of the protocol is specified in the Regional Parameters documents published by the LoRa Alliance.

Source: LoRa Alliance 

LoRa Modulation Characteristics

LoRaWAN uses a frequency hoping scheme in the ISM band.

 

Frequency Bands, Sub-bands, Channels

The ISM band for North America is centered at 915MHz (range 902-928 MHz).

  • LoRaWAN™ defines 64, 125kHz uplink channels from 902.3 to 914.9 MHz in 200 kHz increments
  • There are an additional eight (8) 500KHz uplink channels in 1.6 MHz increments from 903.0 MHz to 914.2 MHz
  • The eight downlink channels are 500kHz wide, from 923.3MHz to 927.5MHz

Max Output Power

The maximum output power in North America 902-928MHz band is +30dBm but for most devices +20dBm is sufficient.

  • 0.5W = 27dBm for 8-channel gateway
  • 1.0W = 30 dBm for 64-channel gateway

Channel Dwell Time and TX Duty Cycle

Under FCC regulations, there are no duty cycle limits, but there is a 400 msec max dwell time per channel.

The Things Network does limit Transmit Duty Cycle to 30 seconds/day/device.

LoRaWAN Spreading Factors

LoRa allows for using different Spreading Factors, which result in different bit rates and data rates. Spreading is a slow-down of bit transmission that allows for longer distances to be achieved, at the expense of longer transmit times. LoRA spreading factors and the protocol itself allow for data to be successfully received well below the noise floor (negative Signal-to-Noise Ratio -SNR).

Spreading Factor (UL @ 125KHz) Bit Rate Max Range Min RSSI Min SNR
SF7 5470 bps 2 km -125 -7.5
SF8 3125 bps 4 km -127 -10
SF9 1760 bps 6 km -130 -12.5
SF10 980 bps 8 km -132 -15

Using a higher spreading factor (SF) allows for lower ‘minimum’ RSSI (received signal strength indication) and SNR (signal-to-noise ratio), at the cost of lower data rate, longer Time-on-Air (ToA), and higher power consumption.

Thank you MobileFish for your amazing youtube tutorial series.

Max Payloads

Data Rate (DR) Spreading Factor Channel
Bandwidth
Bitrate
(bits/sec)
Max Payload
Bytes
50-byte
ToA
DR0 SF10 125 KHz 980 11 > 400 msec *
DR1 SF9 125 KHz 1,760 53 390 msec
DR2 SF8 125 KHz 3,125 125 215 msec
DR3 SF7 125 KHz 5,470 242 118 msec
DR4 SF8 500 KHz 12,500 242 54 msec

* The lower data rates (e.g DR0) is unable to send a full sensor payload (50-bytes) in a single transmission.

LoRaWAN Media Access Control (MAC)

LoRaWAN uses MAC (media access control) protocols to control access to the shared medium. Key among the features of LoRaWAN is the ability to use Adaptive Data Rate on End-nodes, as controled by the LoRaWAN Network Server (NS). This allows for devices to modify the power and duration of transmissions based upon feedback from the Network Server.

This LoRaWAN MAC commands are also used by the Network Server to put the End-nodes (devices) on the correct RF Channel plan to match the local LoRa gateways (the RF Channel Plan).

Notice there is very explicit information in the Regional Parameters documentation about Max payload size and spreading factors.

LoRaWAN Data Journey - A Trip Report