Using an SDR for 915 MHz Band Analysis
A Software Defined Radio (SDR) is one of the most useful tools for mesh network operators: it lets you visualize the actual RF environment your nodes operate in, identify interference sources, and verify that your nodes are transmitting on the correct frequencies.
Getting Started with RTL-SDR
The RTL-SDR (RTL2832U based USB dongle) is the most accessible SDR for mesh operators:
- Cost: $25-35 for an RTL-SDR Blog V4 (the current recommended version)
- Coverage: 500 kHz to 1750 MHz - covers the entire 902-928 MHz ISM band
- Software: SDR# (Windows), GQRX (Linux/Mac), SDRangel (cross-platform)
- Antenna: The included whip antenna works at 915 MHz; a dedicated 915 MHz antenna improves sensitivity
# Install SDR# on Windows:
# Download from airspy.com/download, extract, run SDRSharp.exe
# GQRX on Ubuntu:
sudo apt install gqrx-sdr
Configuring SDR# for 915 MHz Observation
- Set center frequency to 915,000,000 Hz (915 MHz)
- Set sample rate to 2.4 MHz (to view 900-928 MHz range)
- Enable WFM or Raw I/Q mode (you're looking at signal presence, not decoding)
- Enable the spectrum analyzer and waterfall displays
- Set FFT size to 32768 for high resolution
The waterfall shows frequency (horizontal) vs. time (vertical, scrolling). Each LoRa transmission appears as a faint chirp pattern - rising or falling tones, typically 125-500 kHz wide.
What to Look For
Normal LoRa Activity
LoRa transmissions are characterized by chirp spread spectrum - the signal appears as a diagonal streak in the waterfall (rising chirp = upchirp, falling = downchirp). A healthy mesh network shows occasional bursts of activity at the configured center frequency.
Interference Sources
- Constant carrier (narrow spike): Could be a CW interferer, oscillator leakage, or a malfunctioning device
- Wide noise floor increase: Could be FHSS device (900 MHz cordless phone), wideband noise from switching power supply
- Pulsed narrowband: Smart meter AMI networks (itron, Landis+Gyr) often operate in 902-928 MHz; appears as regular narrow pulses
- Broadband hash: Arc welders, brush motors, and variable-speed drives produce broadband electrical noise that raises the noise floor broadly
Measuring Channel Utilization Empirically
SDR# can be used to empirically measure how busy your mesh channel is:
- Tune to your network's center frequency
- Record 10-15 minutes of waterfall data
- Count the number of LoRa packet events per minute
- Estimate channel occupancy: at 250 kbps effective bitrate, a typical 50-byte LoRa packet at SF9 occupies about 750ms. 10 packets/min = 12.5% channel occupancy.
The Meshtastic app also reports channel utilization in the Radio Config screen - check this first before breaking out the SDR. The SDR is most useful when you suspect non-LoRa interference.
No comments to display
No comments to display