LoRa / Meshtastic Signal Analysis
~120 minIntermediateUnderstand Chirp Spread Spectrum modulation, visualize LoRa signals in a waterfall, and decode LoRa PHY frames using gr-lora in GNU Radio.
Hardware
- •RTL-SDR dongle or HackRF One
- •Antenna for 868/915 MHz (1/4-wave whip)
- •Computer capable of running GNU Radio
- •Optional: Meshtastic node to generate known signals
Software / Knowledge
- •GNU Radio 3.10+ (from FM Radio workshop)
- •gr-osmosdr installed
- •inspectrum for signal analysis
- •Basic GNU Radio Companion experience
LoRa (Long Range) is a proprietary spread-spectrum modulation technique developed by Semtech, using Chirp Spread Spectrum (CSS) to achieve remarkable range — up to 15 km line-of-sight — at extremely low power. It underlies the LoRaWAN IoT protocol and Meshtastic mesh networking.
What is CSS (Chirp Spread Spectrum)?
- A chirp is a signal that continuously sweeps from low to high frequency (up-chirp) or high to low (down-chirp)
- Data is encoded by the starting frequency offset of each chirp cycle
- Each symbol = one complete chirp across the bandwidth
- The chirp duration equals 2^SF / BW (where SF = Spreading Factor)
- Chirps are highly resistant to multipath fading and narrowband interference
- The receiver correlates against a reference chirp — works even at SNR = -20 dB
Key LoRa parameters
7–12 (higher = longer range, lower data rate)125, 250, 500 kHz4/5, 4/6, 4/7, 4/8 (FEC overhead)BW / 2^SF symbols/second~5.5 kbps~250 bps–137 dBm (exceptional!)LoRa vs LoRaWAN
LoRa = the physical layer modulation (Semtech's CSS). LoRaWAN = the network protocol stack built on top of LoRa (MAC layer, gateways, network server). Meshtastic = a mesh networking protocol that uses LoRa PHY directly without LoRaWAN infrastructure. In this workshop we analyze the raw LoRa PHY layer signals visible to an SDR.
LoRa is a proprietary Semtech modulation scheme — it's patented but the physical layer has been thoroughly reverse-engineered by the open-source community, enabling SDR analysis.