HackRF One
新手使用手册
简介版
开源 sdr
淘宝店铺名称:开源 SDR 实验室
HackRF One 新手使用手册
Content
1.1
1.2
2.4
1.3
1.4
1. HackRF 软件环境搭建 .................................................................................................... 2
源码安装 HackRF 的 host ................................................................................ 2
1.1.1 安装依赖 ...................................................................................................... 2
1.1.2 下载 host 源码 ............................................................................................. 2
1.1.3 编译安装 ...................................................................................................... 2
1.1.4 测试 host 安装是否成功 ............................................................................. 3
源码安装 Gnuradio ........................................................................................... 4
1.2.1 安装依赖 ...................................................................................................... 4
1.2.2 修改 Python PATH ....................................................................................... 6
1.2.3 下载 GNU Radio 源码 ................................................................................. 6
1.2.4 编译安装 ...................................................................................................... 6
1.2.5 测试 GNU Radio 安装是否成功 ............................................................... 10
源码安装 gr-osmosdr ...................................................................................... 10
1.3.1 下载 gr-osmosdr 源码 ................................................................................ 11
1.3.2 编译安装 .................................................................................................... 11
apt-get 安装 Gqrx ........................................................................................... 12
1.4.1 下载安装 .................................................................................................... 12
1.4.2 测试 Gqrx 安装是否成功 .......................................................................... 12
2. HackRF 固件烧写(新手可暂时不看) ........................................................................... 14
下载固件 ......................................................................................................... 14
编译安装 dfu-util ............................................................................................ 14
2.2.1 安装依赖 .................................................................................................... 14
2.2.2 下载 dfu-util 源码 ...................................................................................... 15
2.2.3 编译安装 .................................................................................................... 15
烧写固件 ......................................................................................................... 15
2.3.1 进入 DFU 模式 .......................................................................................... 15
2.3.2 烧写 Boot(hackrf_one_usb_ram.dfu) ........................................................ 16
2.3.3 烧写 Flash 固件 ......................................................................................... 16
2.3.4 烧写 CPLD 固件 ........................................................................................ 16
HackRF 固件升级到 2017.02.1 版本 ............................................................ 17
2.4.1 HackRF host 软件更新 .............................................................................. 17
2.4.2 HackRF 固件更新 ..................................................................................... 17
3. 参考文献: ..................................................................................................................... 17
2.1
2.2
2.3
1
HackRF One 新手使用手册
【注意】:请在 Ubuntu64 位机器上来使用本教程,因为有用户反映 32 位机器上可能存
在一些问题!具体问题,作者目前没有亲自验证,在此谢谢回馈的用户!
1. HackRF 软件环境搭建
1.1 源码安装 HackRF 的 host
1.1.1 安装依赖
目的是为安装 host 做准备,主要是安装一些编译或 USB 驱动相关工具。
$ sudo apt-get install build-essential cmake libusb-1.0-0-dev
pkg-config libfftw3-dev
1.1.2 下载 host 源码
$ git clone --progress http://github.com/mossmann/hackrf.git
注:如果您对 github 的使用还不太熟悉,或者由于下载慢,或者在运行上述命令时碰到
不能解决的问题,别担心,随本教程赠送的资料中《before build》文件夹下的《hackrf.tar.gz》
压缩包即为作者执行上述语句后下载得到的文件经压缩后的压缩包,您只需解压该压缩包到
您指定的路径下即可,如解压到/Downloads 文件夹下,然后在进行后续操
作即可。
1.1.3 编译安装
Step1:进入 clone 得到的 hackrf 源代码文件夹的 host 文件夹中,
$ cd host
Step2:当前路径下,创建一个 build 文件夹,
$ mkdir build
Step3:进入到上述新建的 build 文件夹中,
$ cd build
2
HackRF One 新手使用手册
Step4 : 使 用 cmake 创 建 makefile 文 件 , 注 : 以 下 语 句 中 的 【 -
DINSTALL_UDEV_RULES=ON】意思是开启 hackrf 识别权限
$ cmake ../ -DINSTALL_UDEV_RULES=ON
Step5:编译 make,
$ sudo make
Step5:安装,
$ sudo make install
Step6:运行 ldconfig 命令,使得新安装的库可以用。
$ sudo ldconfig
至此,HackRF 的电脑中的 host 安装完毕。
1.1.4 测试 host 安装是否成功
将 HackRF 用 USB 线接入电脑,在 shell 终端中先输入
$ hackrf_info
会显示文字如下:
$ hackrf_info
Found HackRF board.
Board ID Number: XXXXXX
Firmware Version: XXXXXX
Part ID Number: XXXXXX
Serial Number: 0xXXXXXX
这也就证明 HackRF 已经能成功被电脑所识别。
3
HackRF One 新手使用手册
1.2 源码安装 Gnuradio
1.2.1 安装依赖
按 照 Gnuradio 官 网 上 对 于 Ubuntu 源 码 安 装 的 教 程
【http://gnuradio.org/redmine/projects/gnuradio/wiki/UbuntuInstall】,得知在 Ubuntu 14.04 64 位
机器上安装依赖的命令应该为:
$ sudo apt-get -y install git-core cmake g++ python-dev swig
pkg-config libfftw3-dev libboost1.55-all-dev libcppunit-dev
libgsl0-dev libusb-dev libsdl1.2-dev python-wxgtk2.8 python-
numpy python-cheetah python-lxml doxygen libxi-dev python-sip
libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev
python-sip python-sip-dev
但是作者执行上述命令后,出现了如下错误,通过查看发现错误提示为:
libboost1.55-all-dev:Depends:libboost1.55-dev but it is not going to be installed,这说明
要想安装 libboost1.55-all-dev,那么必须先安装 libboost1.55-dev。
不要担心,请看下边的解决办法。
4
HackRF One 新手使用手册
上述问题的解决办法是执行以下命令:
$ sudo apt-get install libboost1.55-dev
上述命令执行结束后,shell 终端显示如下:
【请注意】,解决完 libboost1.55-all-dev:Depends:libboost1.55-dev but it is not going to
be installed 问题后,您仍需继续重新执行一次以下安装依赖的命令才能完成所有依赖的安装,
5
HackRF One 新手使用手册
即:
$ sudo apt-get -y install git-core cmake g++ python-dev swig
pkg-config libfftw3-dev libboost1.55-all-dev libcppunit-dev
libgsl0-dev libusb-dev libsdl1.2-dev python-wxgtk2.8 python-
numpy python-cheetah python-lxml doxygen libxi-dev python-sip
libqt4-opengl-dev libqwt-dev libfontconfig1-dev libxrender-dev
python-sip python-sip-dev
1.2.2 修改 Python PATH
安装完 GNU Radio 的依赖之后 GNU Radio 后需要配置环境参数 PYTHONPATH,shell
终端中输入以下命令即可:
$ export PYTHONPATH=/usr/local/lib/python2.7/dist-packages
1.2.3 下载 GNU Radio 源码
打开一个 shell 终端,切换到你想存放 GNU Radio 源代码的文件夹下并执行以下命令,
例如我的文件夹是/home/lsc/Downloads,其中“lsc”是我的电脑用户名。
$ git clone --recursive http://git.gnuradio.org/git/gnuradio.git
注:如果您对 github 的使用还不太熟悉,或者由于下载慢,或者在运行上述命令时碰到
不能解决的问题,别担心,随本教程赠送的资料中《before build》文件夹下的《gnuradio.tar.gz》
压缩包即为执行上述语句后下载得到的文件经压缩后的压缩包,您只需解压该压缩包到您指
定的路径下即可,如解压到/Downloads 文件夹下。
1.2.4 编译安装
Step1:进入到你 clone 得到的 GNU Radio 文件夹,
$ cd gnuradio
Step2:创建一个 build 文件夹
$ mkdir build
Step3:进入 build 文件夹
6
HackRF One 新手使用手册
$ cd build
Step4:cmake 创建 makefile 文件
$ cmake ../
cmake 后的 shell 终端截图如下所示,
7