1 Introduction
This document describes the LoRaWAN™ network protocol which is optimized for battery-
powered end-devices that may be either mobile or mounted at a fixed location.
LoRaWAN networks typically are laid out in a star-of-stars topology in which gateways1
relay messages between end-devices2 and a central network server at the backend.
Gateways are connected to the network server via standard IP connections while end-
devices use single-hop LoRa™ or FSK communication to one or many gateways.3 All
8 communication is generally bi-directional, although uplink communication from an end-
device to the network server is expected to be the predominant traffic.
Communication between end-devices and gateways is spread out on different frequency
channels and data rates. The selection of the data rate is a trade-off between
communication range and message duration, communications with different data rates do
not interfere with each other. LoRa data rates range from 0.3 kbps to 50 kbps. To maximize
both battery life of the end-devices and overall network capacity, the LoRa network
infrastructure can manage the data rate and RF output for each end-device individually by
means of an adaptive data rate (ADR) scheme.
End-devices may transmit on any channel available at any time, using any available data
rate, as long as the following rules are respected:
The end-device changes channel in a pseudo-random fashion for every
transmission. The resulting frequency diversity makes the system more robust to
interferences.
The end-device respects the maximum transmit duty cycle relative to the sub-band
used and local regulations.
The end-device respects the maximum transmit duration (or dwell time) relative to
the sub-band used and local regulations.
While this document specifies the protocol details, various operational parameters that are
based on the regional regulations, such as maximum transmit duty-cycle and dwell time per
sub-band, are described in a separate document (LoRaWAN Regional Parameters
[PARAMS]). This document separation allows addition of new regional parameters without
having to modify the base protocol specification.