Gqrx SDR
Overview
섹션 제목: “Overview”Gqrx is a powerful open-source SDR (Software Defined Radio) receiver application that enables users to receive, demodulate, and analyze radio signals across a wide frequency range. Built on GNU Radio, Gqrx provides a user-friendly graphical interface for spectrum analysis, signal monitoring, and radio communications research. It supports numerous hardware interfaces including RTL-SDR, HackRF, USRP, and others, making it accessible for both hobbyists and professionals.
Key capabilities include FM/AM/SSB/CW demodulation, waterfall visualization, spectrum analysis, signal recording, and frequency scanning. Gqrx is commonly used in penetration testing, spectrum analysis, wireless security research, and amateur radio applications.
Installation
섹션 제목: “Installation”Linux (Debian/Ubuntu)
섹션 제목: “Linux (Debian/Ubuntu)”# Install from repository
sudo apt-get update
sudo apt-get install gqrx-sdr
# Or build from source
sudo apt-get install git cmake g++ libpulse-dev libusb-1.0-0-dev libfftw3-dev
git clone https://github.com/csete/gqrx.git
cd gqrx
mkdir build
cd build
cmake ..
make
sudo make install
macOS
섹션 제목: “macOS”# Using Homebrew
brew install gqrx
# Or download DMG from official releases
Windows
섹션 제목: “Windows”Download pre-built installer from gqrx.dk or build using MinGW environment.
Hardware Support
섹션 제목: “Hardware Support”| Hardware | Frequency Range | Bandwidth | Notes |
|---|---|---|---|
| RTL-SDR | 25 MHz - 1.7 GHz | 2.4 MHz | Most affordable, USB dongle |
| HackRF | 1 MHz - 6 GHz | 20 MHz | TX/RX capable, full duplex |
| USRP | 50 MHz - 6 GHz | Varies | Professional grade, expensive |
| LimeSDR | 100 MHz - 3.8 GHz | 40 MHz | Full duplex, affordable |
| PlutoSDR | 70 MHz - 6 GHz | 56 MHz | Portable, integrated |
Basic Usage
섹션 제목: “Basic Usage”Starting Gqrx with RTL-SDR
섹션 제목: “Starting Gqrx with RTL-SDR”# Launch with default configuration
gqrx
# Specify device at startup
gqrx -s 0
# Run in headless mode (remote operation)
gqrx --style plastique
Initial Setup
섹션 제목: “Initial Setup”- Connect SDR hardware via USB
- Launch Gqrx application
- Click “Configure I/O devices” button
- Select device from dropdown (RTL-SDR, HackRF, etc.)
- Set sample rate (2.4 MHz typical for RTL-SDR)
- Click “Apply” to initialize
Frequency Management
섹션 제목: “Frequency Management”Scanning Frequencies
섹션 제목: “Scanning Frequencies”# Common frequency ranges to monitor:
# FM Radio: 88-108 MHz
# 2m Amateur: 144-148 MHz
# 70cm Amateur: 430-450 MHz
# ISM Band: 2.4 GHz
# WiFi: 2.4 GHz, 5 GHz
# GSM: 850/900/1800/1900 MHz
Bookmarks
섹션 제목: “Bookmarks”Save frequently monitored frequencies:
| Frequency | Mode | Description |
|---|---|---|
| 101.5 MHz | FM | Local FM station |
| 146.52 MHz | FM | 2m repeater |
| 2.4 GHz | LSB | ISM band monitoring |
| 1.09 GHz | USB | Satellite downlink |
Demodulation Modes
섹션 제목: “Demodulation Modes”Supported Modulation Types
섹션 제목: “Supported Modulation Types”| Mode | Use Case | Bandwidth | Notes |
|---|---|---|---|
| AM | Broadcast, emergency services | 10 kHz | Amplitude modulation |
| FM | Radio stations, voice | 15 kHz | Frequency modulation |
| LSB | Amateur radio, telephony | 3 kHz | Lower sideband |
| USB | Amateur radio, data | 3 kHz | Upper sideband |
| CW | Morse code, beacons | 500 Hz | Continuous wave |
| WFM | Broadcast FM, high quality | 180 kHz | Wideband FM |
Switching Demodulation Modes
섹션 제목: “Switching Demodulation Modes”# Via GUI: Click demod mode dropdown
# Common workflow:
1. Set frequency (MHz)
2. Select demod mode (FM, AM, USB, LSB, CW)
3. Adjust squelch level
4. Fine-tune frequency with arrow keys
5. Monitor signal strength indicator
Signal Analysis
섹션 제목: “Signal Analysis”Waterfall Display Controls
섹션 제목: “Waterfall Display Controls”# Waterfall Settings:
- Time Scale: Adjust refresh rate (1s to 60s)
- Frequency Scale: Zoom in/out on spectrum
- Intensity: Adjust color scaling
- Zoom: Click and drag to zoom region
- Pan: Scroll horizontally for freq range
Spectrum Analysis Features
섹션 제목: “Spectrum Analysis Features”# Signal detection:
# - Peak hold: Shows maximum signal levels
# - Average: Smooths spectrum display
# - Decay: Defines signal fade rate
# - Reference level: Adjust dB scaling
Audio Configuration
섹션 제목: “Audio Configuration”Speaker Output
섹션 제목: “Speaker Output”# Configure audio device
1. Go to File → Preferences
2. Select "Audio" tab
3. Choose output device from dropdown
4. Set audio gain (0-100%)
5. Enable/disable audio playback
# Typical settings:
- Audio device: PulseAudio default
- Output gain: 50%
- AF filter: 100 Hz - 5 kHz
Recording Audio
섹션 제목: “Recording Audio”# Record received signals
1. File → Preferences → Recording
2. Select output directory
3. Choose file format (WAV, MP3)
4. Click red record button to start
5. Audio saved with timestamp
# Recording command (CLI):
# ALSA recording
arecord -d 60 -f cd recorded_signal.wav
# PulseAudio recording
parec | sox - recording.wav
Advanced Features
섹션 제목: “Advanced Features”Frequency Scanner
섹션 제목: “Frequency Scanner”# Configure scanner for frequency range
1. Tools → Frequency Scanner
2. Set start frequency (MHz)
3. Set stop frequency (MHz)
4. Set step size (kHz)
5. Set dwell time per frequency (ms)
6. Click "Scan" to begin
# Example: Scan 88-108 MHz FM band
Start: 88 MHz
Stop: 108 MHz
Step: 100 kHz
Dwell: 500 ms
Noise Blanker
섹션 제목: “Noise Blanker”# Reduce impulse noise
1. Tools → Receiver Options
2. Enable "Noise Blanker"
3. Adjust threshold (0-100)
4. Test with strong signals nearby
Remote Control (TCP)
섹션 제목: “Remote Control (TCP)”# Enable remote control
File → Preferences → Network
- Enable TCP Server
- Port: 7356 (default)
- Allow Remote Control: checked
# Connect remotely
telnet localhost 7356
# Remote commands:
f 106500000 # Set frequency to 106.5 MHz
m FM # Set mode to FM
l MAIN 0 100 # Set level
q # Quit connection
Command Line Operations
섹션 제목: “Command Line Operations”Launch with Preset Configuration
섹션 제목: “Launch with Preset Configuration”# Start with specific frequency and mode
gqrx --freq=101500000 --mode=FM
# Disable OpenGL (for systems without GPU)
gqrx --style=plastique
# Set device index
gqrx --device=1
Batch Frequency Scanning
섹션 제목: “Batch Frequency Scanning”# Create script for automated scanning
#!/bin/bash
declare -a frequencies=(88.1 101.5 146.52 430.2)
for freq in "${frequencies[@]}"
do
echo "Scanning $freq MHz"
# Send remote commands to Gqrx
echo "f ${freq}000000" | nc localhost 7356
sleep 5
done
Signal Detection & Analysis
섹션 제목: “Signal Detection & Analysis”FM Signal Analysis Workflow
섹션 제목: “FM Signal Analysis Workflow”1. Set mode to FM
2. Adjust filter width to 15 kHz
3. Set squelch to -5 dB (prevents noise audio)
4. Monitor signal strength bar
5. Record samples for analysis
6. Export waterfall screenshot
Weak Signal Reception
섹션 제목: “Weak Signal Reception”# Tips for improving weak signal reception:
1. Use antenna tuned to target frequency
2. Disable noise blanker (may reduce sensitivity)
3. Use USB/LSB for CW signals
4. Reduce audio filter bandwidth
5. Position antenna away from interference
6. Use external LNA (Low Noise Amplifier)
Troubleshooting
섹션 제목: “Troubleshooting”Common Issues and Solutions
섹션 제목: “Common Issues and Solutions”| Issue | Cause | Solution |
|---|---|---|
| No signal detected | Device not selected | Check I/O devices config |
| Distorted audio | Sample rate mismatch | Match hardware & software rates |
| High noise floor | Poor antenna | Use tuned antenna, move away from sources |
| Device not found | USB permissions | Add user to dialout group |
| High CPU usage | Waterfall resolution | Reduce waterfall size or refresh rate |
| No audio output | Output muted | Check system audio settings |
Device Not Recognized
섹션 제목: “Device Not Recognized”# Check USB device
lsusb | grep -i "rtl\|hackrf"
# Add user to dialout group (RTL-SDR)
sudo usermod -a -G dialout $USER
newgrp dialout
# Set udev rules
sudo cp rtl-sdr.rules /etc/udev/rules.d/
sudo udevadm control --reload
sudo udevadm trigger
Resetting Configuration
섹션 제목: “Resetting Configuration”# Reset Gqrx settings to default
rm ~/.config/gqrx/gqrx.conf
# Launch fresh
gqrx
Performance Optimization
섹션 제목: “Performance Optimization”System Requirements
섹션 제목: “System Requirements”Minimum:
- CPU: Dual-core 2 GHz
- RAM: 2 GB
- Disk: 500 MB free space
Recommended:
- CPU: Quad-core 2.5+ GHz
- RAM: 4+ GB
- Disk: 1 GB free space
Optimization Techniques
섹션 제목: “Optimization Techniques”# Reduce CPU usage
1. Lower waterfall resolution
2. Disable OpenGL rendering: gqrx --style=plastique
3. Reduce sample rate when possible
4. Disable peak hold / averaging
5. Close background applications
# Monitor system resources
top
htop
ps aux | grep gqrx
Security & Privacy Considerations
섹션 제목: “Security & Privacy Considerations”Safe Frequency Monitoring
섹션 제목: “Safe Frequency Monitoring”# Legal frequency bands for monitoring (varies by country):
# United States (FCC):
# - 88-108 MHz: FM Broadcast
# - 144-148 MHz: Amateur 2m band
# - 430-450 MHz: Amateur 70cm band
# - 900-950 MHz: ISM band (limited)
# ALWAYS verify local regulations before monitoring
# Check FCC, OFCOM, or local regulatory body
Recording Restrictions
섹션 제목: “Recording Restrictions”# Important legal considerations:
# - Recording encrypted communications may be illegal
# - Some jurisdictions prohibit SDR operation
# - Amateur bands require valid license in most countries
# - Always obtain proper authorization
Integration with Tools
섹션 제목: “Integration with Tools”Exporting Data
섹션 제목: “Exporting Data”# Export waterfall as PNG/JPEG
1. Right-click waterfall display
2. Select "Save Waterfall"
3. Specify file path and format
# Export recorded audio
1. Locate WAV file in recordings directory
2. Convert using ffmpeg if needed:
ffmpeg -i recording.wav recording.mp3
Piping to External Tools
섹션 제목: “Piping to External Tools”# Analyze exported WAV with Audacity
audacity recording.wav &
# Convert and analyze with sox
sox recording.wav -n spectrogram -o spectrum.png
# Process with MATLAB/Python
python3 analyze_signal.py recording.wav
Resources and References
섹션 제목: “Resources and References”- Official Website: https://gqrx.dk
- GitHub Repository: https://github.com/csete/gqrx
- GNU Radio Documentation: https://www.gnuradio.org
- RTL-SDR Resources: https://www.rtl-sdr.com
- Amateur Radio Frequencies: https://www.arrl.org/frequencies
- FCC Frequency Allocation Chart: https://www.fcc.gov/uls/