Communication between end-devices and gateways is spread out over different frequency channels and data rates. The selection of the data rate is a trade-off between communication range and message duration. Within the selected channel the LoRa protocol, which is a chirp spread spectrum modulation technique, determines how many bits are required to code the data (coding rate) which results in a maximum data rate.
The basic principle of spread spectrum is that each bit of information is encoded as multiple chirps. Within the given bandwidth the relationship between the bit and chirp rate for LoRa modulation may differ between spreading factor (SF) 7 to 12. The end-device 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.
Time on Air
An important consequence of using a higher spreading factor for LoRa is a longer time on air (ToA). The LoRa Radio module needs more time to send the same amount of data. This means that power consumption increases with increasing Spreading Factor. An Air time calculator is available online, to determine the air time of a message, based on several parameters.
To optimize spreading factor, Adaptive Data Rate (ADR) should be used.
Adaptive Data Rate (ADR)
LoRa data rates range from 0.3 kbps to 50 kbps. Depending on the environmental conditions between the communication device and the gateway the network will determine the best spreading factor (SF) to work on. To maximize both battery life, range and overall network capacity, the LoRa network infrastructure can manage the data rate and output power used for the communication for each end-device individually by means of an adaptive data rate (ADR) scheme. Meaning the better the coverage the lower the SF will be (see the figure below). Whether the ADR functionality will be used is requested by the device, not by the network. Switching ADR OFF is only advised for continually moving objects.
The principle of the ADR algorithm is to compute the median SNR value of the last 10 received uplink packets and to compare it against the limit SNR for each spreading factor, taking into account a margin.
Note: When computing the median SNR value of the last 10 received packets, any lost packet is injected in the distribution with a very low SNR level (-25dB) to ensure that SNR distribution remains consistent with the effective end-device Packet Error Rate. Indeed, lost packets are typically those whose SNR is below the limit SNR level for the current Spreading Factor.
The algorithm considers a margin to account for SNR fluctuations around the median value due to fading.