软件定义无线电的应用:搭建树莓派SDR服务器
RTL-SDR/TCP
准备好树莓派、Rtl-2832U,连接好硬件,首先SSH登录树莓派,直接lsusb查看USB设备列表,倘若一切正常应该可以正常显示如下字样:
1 | root@raspberrypi:~# lsusb |
接下来稍微更新一下软件源:
1 | sudo apt-get updade |
然后就开始安装了,首先安装需要的库和编译程序,全部确认yes即可:
1 | sudo apt-get install libusb-1.0-0-dev cmake |
然后下载SDR:
1 | sudo git clone git://git.osmocom.org/rtl-sdr.git |
下载完成,进入目录:
1 | cd rtl-sdr/ |
编译、安装 :
1 | sudo cmake -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=1 |
完成后分配IP地址:
1 | sudo rtl_tcp -a 000.000.000.000 |
然后访问SDRSharp官网下载PC端的SDR软件(Windows),下载完解压运行install,install完成后会生成一个sdrsharp文件夹,进去该文件夹,运行sdrsharp。
在左边菜单里面找到 源【Source】选择RTL-SDR/TCP,然后点击“齿轮”状按钮。
主机填写树莓派所属IP,就是刚才终端里面设置的信息,端口默认1234,采样率 0.900001MSPS。
设置完成,点击齿轮旁边三角形按钮启动。
下面给出screen窗口环境下快捷运行指令的脚本代码:
1 | !/bin/bash |
其中关于rtl_tcp指令详细使用方法如下代码所示:
1 | rtl_tcp --help |
SpyServer
想远程收听某地的广播,可以在树莓派上安装 SpyServer 。
首先,打开终端,安装需要的驱动及库。
1 | sudo apt install rtl-sdr librtlsdr-dev |
建立程序目录:
1 | mkdir spyserver |
下载最新的版本的SpyServer二进制文件。注意,如果不是在arm平台上安装,需要替换为合适的下载链接
1 | wget -O spyserver.tgz http://airspy.com/?ddownload=4247 |
其中,查看树莓派操作系统位数的指令为:
1 | getconf LONG_BIT |
编辑配置文件 spyserver.config , 将 device_type 项修改为:
1 | device_type = RTL-SDR |
你还可以修改监听端口,采样信息等配置。执行 ./spyserver 运行 spyserver(建议另起一个screen窗口启动该进程)。
1 | root@raspberrypi:/home# cd spyserver/ |
将spyserver设置为服务(未测试):
1 | 创建系统服务 |
spyserver.service内容为:
1 | [Unit] |
之后开启服务并且设置开机自启
1 | 启动 spyserver并创建服务配置 |
打开 SDR#将Source修改为 Spy Server Network,输入服务器地址,如sdr://10.0.0.10:5555 ,点击C,调整相关参数即可。
参考文档
1 | https://www.rtl-sdr.com/rtl-sdr-tutorial-setting-up-and-using-the-spyserver-remote-streaming-server-with-an-rtl-sdr/ |
相关软件
直接给出Android端RTL-SDR驱动程序,SDR Touch和SDR Touch key的.apk安装包,详情见Google Drive。