rsadsb/dump1090_rs · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈
dump1090_rs
从调谐至 1090mhz 的软件定义无线电设备解调 ADS-B 信号, 并将字节转发到诸如 adsb_deku/radar 等应用程序。
- 请参阅 quickstart-guide 获取快速安装指南。
- 请参阅 rsadsb-2024.09.02 获取最新主要版本详情。
已测试支持
通过使用 rust-soapysdr 项目,
我们支持 许多不同的 软件定义无线电设备。
如果您已在以下未列出的设备上测试过本项目,请告知我!
(您需要向 config.toml 添加增益设置或使用 --custom-config)
| Device | Supported/Tested | Recommend | argument |
|---|---|---|---|
| rtlsdr | x | x | --driver rtlsdr |
| HackRF | x | --driver hackrf | |
| uhd(USRP) | x | --driver uhd | |
| bladeRF 2.0 micro xA4 | x | --driver bladerf |
用法
最低支持 Rust 版本:1.74.0
构建
安装 soapysdr 驱动程序和库以及 libclang-dev。
注意
使用 debug 构建会导致 SDR 溢出,生产环境请始终使用 --release。
Ubuntu
> apt install libsoapysdr-dev libclang-dev
交叉编译
使用 hub.docker.com/r/rsadsb 进行以下架构的交叉编译。
这些镜像已安装 soapysdr 并配置了正确的交叉编译器。
这使用了 cross-rs。
> cargo install cross
> cross build --workspace --target x86_64-unknown-linux-gnu --relese
# Used for example in Raspberry Pi (raspios) 32 bit
> cross build --workspace --target armv7-unknown-linux-gnueabihf --release
# Used for example in Raspberry Pi (raspios) 64 bit
> cross build --workspace --target aarm64-unknown-linux-gnu --release
来自 CI 的发布构建
查看 最新 release 以获取从 CI 构建的二进制文件。
运行
使用默认的 rtlsdr 运行该软件。
> cargo r --release
help
有关详细信息,请参阅 --help。
ADS-B Demodulator and Server
Usage: dump1090_rs [OPTIONS]
Options:
--host <HOST> ip address to bind with for client connections [default: 127.0.0.1]
--port <PORT> port to bind with for client connections [default: 30002]
--driver <DRIVER> soapysdr driver name (sdr device) from default `config.toml` or `--custom-config` [default: rtlsdr]
--driver-extra <DRIVER_EXTRA> specify extra values for soapysdr driver specification
--custom-config <CUSTOM_CONFIG> Filepath for config.toml file overriding or adding sdr config values for soapysdr
-h, --help Print help (see more with '--help')
-V, --version Print version
性能技巧
要启用最大性能,请指示 rustc 使用特定于您 CPU 的特性。
> RUSTFLAGS="-C target-cpu=native" cargo r --release
始终使用最新的 rust 版本,包括 nightly,目前这大约能带来 5-10% 的性能 提升。
测试
> cargo t --workspace --release
基准测试
从 512KB iq 样本读取到 ADS-B 字节大约需要 3.0 毫秒,但您可以自由地在自己的计算机上运行基准测试。
> RUSTFLAGS="-C target-cpu=native" cargo bench --workspace
Intel i7-7700K CPU @ 4.20GHz
01 time: [3.6691 ms 3.6950 ms 3.7264 ms]
02 time: [3.5941 ms 3.5987 ms 3.6040 ms]
03 time: [3.4930 ms 3.4961 ms 3.4994 ms]
变更
参见 CHANGELOG.md