Skip to main content

用于多个 SDR 平台的频谱分析器(基于 PyQtGraph 的 GUI,用于 soapy_power、rx_power、rtl_power、hackrf_sweep 和其他后端)

项目描述

用于多个 SDR 平台的频谱分析器(基于 PyQtGraph 的 GUI,用于 soapy_power、rx_power、rtl_power、hackrf_sweep 和其他后端)

截图

https://xmikos.github.io/qspectrumanalyzer/qspectrumanalyzer_screenshot.png https://xmikos.github.io/qspectrumanalyzer/qspectrumanalyzer_screenshot2.png

要求

后端

通用 SDR 后端

soapy_power是 QSpectrumAnalyzer 中默认推荐的通用后端。它基于SoapySDR,支持几乎所有的 SDR 平台(RTL-SDR、HackRF、Airspy、SDRplay、LimeSDR、bladeRF、USRP 和其他一些 SDR 设备)。

rx_power(rx_tools 的一部分也基于 SoapySDR,因此支持几乎所有 SDR 平台,但它比 soapy_power 慢得多,不支持近实时连续测量(最小间隔为 1 秒,与rtl_power相同)并且是小车。

RTL-SDR 后端

您应该使用rtl-sdr (最新的 Git 修订版)的 Keenerds fork,因为原始rtl-sdr 包(来自 osmocom.org)中的 rtl_power 已损坏(尤其是在与裁剪一起使用时)。

RTL-SDR 的另一个替代方案是 rtl_power_fftw ,它比rtl_power具有多种优势。例如,更好的 FFT 性能(感谢使用fftw库)以及使用更短的采集时间进行更实时的连续测量的可能性(原始 rtl_power的最小间隔为 1 秒,但在rtl_power_fftw中,您仅受跳频数的限制) .

HackRF 后端

hackrf_sweep后端通过快速重新调谐无线电来启用宽带频谱监控,而无需来自主机的单独调谐请求。这允许前所未有的每秒 8 GHz 的扫描速率。

用法

通过运行 qspectrumanalyzer 启动QSpectrumAnalyzer

您可以在文件->设置 (或Mac OS X 上的应用程序菜单->首选项)中选择要使用的后端,默认为 soapy_power。也可以在此处手动指定采样率、后端可执行文件的路径和其他后端参数。您还可以设置瀑布图历史大小。默认为 100 行,请注意,真正大的扫描(有很多 bin)需要大量系统内存,所以不要让这个数字太大。

控件应该是直观的,但如果您想要一致的结果,您应该关闭自动增益控制(将增益设置为某个固定数字)并将裁剪设置为 20% 或更多。要找出 rtl-sdr 棒的 ppm 校正因子,请使用kalibrate-rtl

您可以使用鼠标移动和缩放绘图、更改绘图设置或从右键菜单导出绘图。瀑布图黑色/白色级别和颜色查找表可以在迷你直方图小部件中更改(在级别选项卡上)。

安装

Arch Linux:

稳定版:

git clone https://aur.archlinux.org/qspectrumanalyzer.git
cd qspectrumanalyzer
makepkg -sri

Git主分支:

git clone https://aur.archlinux.org/qspectrumanalyzer-git.git
cd qspectrumanalyzer-git
makepkg -sri

或者简单地使用pacaur(或任何其他 AUR 助手),它也会自动安装所有 QSpectrumAnalyzer 依赖项:

pacaur -S qspectrumanalyzer
pacaur -S qspectrumanalyzer-git

Ubuntu:

# Add SoapySDR PPA to your system
sudo add-apt-repository -y ppa:myriadrf/drivers

# Update list of packages
sudo apt-get update

# Install basic dependencies
sudo apt-get install python3-pip python3-pyqt5 python3-numpy python3-scipy soapysdr python3-soapysdr

# Install SoapySDR drivers for your hardware (e.g. RTL-SDR, Airspy, HackRF, LimeSDR, etc.)
sudo apt-get install soapysdr-module-rtlsdr soapysdr-module-airspy soapysdr-module-hackrf soapysdr-module-lms7

# Install QSpectrumAnalyzer
sudo pip3 install qspectrumanalyzer

警告!默认情况下, pip将在系统范围内安装包,但您应该始终使用您的分发包管理器。

您可以通过运行以下命令(不带sudo )仅为当前用户在本地安装它:

pip3 install --user qspectrumanalyzer

然后可执行文件将放置在~/.local/bin目录中,您可以将其添加到~/.bashrc中的 PATH 中。

如果你想直接从 Git 主分支安装 QSpectrumAnalyzer,你可以使用这个过程:

git clone https://github.com/xmikos/qspectrumanalyzer.git
cd qspectrumanalyzer
pip3 install --user .

去做:

  • 显示扫描进度

  • 允许设置 LNB LO 频率

  • 保存和加载 FFT 历史记录(允许将大瀑布图保存到文件中)

  • 自动峰值检测/突出显示

  • 显示平均噪音水平

  • 频率标记/带有注释的书签(甚至导入/导出带有预定义频道的 .csv 文件等)

下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

QSpectrumAnalyzer-2.1.0.tar.gz (49.1 kB 查看哈希

已上传 source