16–20 Sept 2024
Knoxville Convention Center (KCC)
US/Eastern timezone
GRCon24 will take place in Knoxville, TN from Sept 16-20

Design and Implementation of LoRa Physical Layer in GNU Radio

17 Sept 2024, 13:15
15m
Ballroom AB (Knoxville Convention Center (KCC))

Ballroom AB

Knoxville Convention Center (KCC)

Paper (with talk) IOT and M2M applications Main Track

Speaker

Joachim Tapparel (Ecole polytechnique fédérale de Lausanne (EPFL), Switzerland)

Description

LoRa is the physical layer of LoRaWAN, one of the most popular low-power wide-area network (LPWAN) technologies. The LoRa modulation uses a proprietary chirp spread spectrum modulation and error correction code to achieve long-range communication with low energy consumption. In the past years, many reverse engineering attempts have been made and led to an overall understanding of the encoding and modulation scheme used by its physical layer. In this paper, we present an open-source implementation of a LoRa transceiver that is fully compatible and has been tested extensively with commercial LoRa devices. The GNU Radio transceiver implements all the signal processing blocks that are required to transmit, detect, synchronize and decode LoRa frames. We first review briefly the LoRa modulation scheme and then present in more detail the algorithms and implementation of our receiver that operates at a very low signal-to-noise ratio (SNR). The synchronization features a highly optimized estimation and compensation of major hardware impairments such as carrier frequency offset, sampling time offset, and sampling frequency offset which is important for low-SNR operation. The receiving performance is further enhanced by soft-decision demodulation to improve the effectiveness of the LoRa Hamming code. Finally, the performance of our implementation is evaluated using NI USRP-2920 and LimeSDR Mini software-defined radios. The source code is available on GitHub and can be used as a starting point for further research and development of LoRa-based systems or directly as a fully functional LoRa transceiver.

Talk Length 15 Minutes
Link to Open Source Code https://github.com/tapparelj/gr-lora_sdr

Primary author

Joachim Tapparel (Ecole polytechnique fédérale de Lausanne (EPFL), Switzerland)

Co-author

Prof. Andreas Burg (Ecole polytechnique fédérale de Lausanne (EPFL), Switzerland)

Presentation materials