HackRF SDR
/install hackrf-sdr
HackRF SDR Skill
Operate the HackRF One software-defined radio for scanning, capture, analysis, and demodulation.
Prerequisites
- HackRF One connected via USB
hackrf_sweepandhackrf_transferCLI tools installed- Python 3 with numpy, scipy, matplotlib
Verify: hackrf_info should show device info.
Workflow
1. Scan (Frequency Sweep)
Use hackrf_sweep to discover signals in a frequency range:
hackrf_sweep -f \x3Cstart_mhz>:\x3Cend_mhz> -l 40 -g 40 -w \x3Cbin_hz> -N \x3Csweeps>
-l 40: LNA gain 40 dB (max for weak signals)-g 40: VGA gain 40 dB-w 1000000: 1 MHz bins for wide scans, 50000 for detailed-N 10: Number of sweeps (more = better averaging)
Quick overview: -w 1000000 -N 5. Detailed: -w 50000 -N 20.
2. Waterfall Visualization
Run the waterfall script for a combined spectrum + waterfall plot:
python3 scripts/waterfall.py --start \x3Cstart_mhz> --end \x3Cend_mhz> --bin \x3Chz> --sweeps \x3Cn> --outdir \x3Cdir>
Or from saved sweep data: python3 scripts/waterfall.py --input \x3Cfile> --outdir \x3Cdir>
Outputs a PNG and prints detected signal groups with center/bandwidth/power.
3. IQ Capture
Record raw IQ samples for detailed analysis:
hackrf_transfer -f \x3Cfreq_hz> -s \x3Csps> -l 40 -g 40 -n \x3Csamples> -r /tmp/iq_capture.raw
- Sample rate (
-s): 10M for wide, 2M for narrow signals - Duration:
-n= sample_rate x seconds (e.g., 10M x 10s = 100000000) - Always capture with enough BW to include the signal + margin
Always delete IQ captures after analysis — they are large (~200 MB for 10s at 10 MSPS).
4. Signal Analysis
Analyze captured IQ data for modulation type, bandwidth, SNR:
python3 scripts/analyze.py /tmp/iq_capture.raw --freq \x3Ccenter_hz> --rate \x3Csps> --outdir \x3Cdir>
The script:
- Computes PSD and spectrogram
- Detects peak frequency and SNR
- Measures 3dB and 10dB bandwidth
- Classifies modulation (CW, AM, FM, PSK, QAM, etc.)
- Detects pulsed vs continuous signals
- Finds secondary peaks
- Generates a 6-panel analysis PNG
5. Demodulation
Demodulate audio from IQ captures:
python3 scripts/demod.py /tmp/iq_capture.raw --mode \x3Cfm|am|usb|lsb> --offset \x3Chz> --out \x3Cfile.wav>
--offset: signal frequency offset from center (from analyze.py output)- Output: WAV at 48 kHz
6. Cleanup
After analysis, delete IQ capture files:
rm -f /tmp/iq_capture.raw
Tips
- Start with a wide scan (100 MHz), then narrow down to signals of interest
- Use
-l 40 -g 40for maximum sensitivity; reduce if signals saturate - HackRF int8 format: 2 bytes per sample (I + Q), so 10 MSPS ~ 20 MB/s
- For signals near DC, offset tune by 1-2 MHz to avoid DC spike
- The peak frequency from
analyze.pyis the offset from center -- add to center freq for absolute freq - Reference:
references/frequency_bands.mdfor band allocations and modulation classification
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install hackrf-sdr - After installation, invoke the skill by name or use
/hackrf-sdr - Provide required inputs per the skill's parameter spec and get structured output
What is HackRF SDR?
Use HackRF One SDR for frequency scanning, IQ capture, signal analysis, waterfall generation, and demodulation. Use when the user wants to scan radio frequen... It is an AI Agent Skill for Claude Code / OpenClaw, with 36 downloads so far.
How do I install HackRF SDR?
Run "/install hackrf-sdr" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is HackRF SDR free?
Yes, HackRF SDR is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does HackRF SDR support?
HackRF SDR is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created HackRF SDR?
It is built and maintained by Andrey Arsatyants (@arsatyants); the current version is v1.0.0.