DIY了一台HACKRF ONE,分享一下
几年前对SDR产生了兴趣,无奈当时USRP平台太贵(现在仍然不便宜),只能望洋兴叹了。后来又发现了RTL棒子,玩过一段时间,觉得灵敏度太低又只能接收,也被扔到了角落里。前几个月心血来潮,又开始琢磨USRP的B200(现在还有了mini版的),淘宝上一看,要近7000,而官网只要675刀,就想海淘或找朋友从美帝弄一套,可是短期不能到手,心里痒啊,一顿研究,决定先花个千八百块,做一台hackrf one玩玩。
hackrf one全开源的,软件、硬件包括pcb文件都能找到,但算了一下,自己找厂家做板子太不划算了,元器件呢,把bom传到digikey上,发现只能搞定三分之二,其余的还要自己淘。最后在万能的淘宝上一顿找,发现有人卖PCB和全套的散件,pcb只要50,散件850,比自己买不贵多少,比成品,不管是山寨的还是原版的(1600-2500)便宜多了,果断下单,同时还买了一套ham it up的上变频器的散件。
东西到了,其它都好,就是pcb没有像描述里写的是沉金的,无所谓了,马上开工。
原件都是贴片的,阻容元件都是0402的,芯片有QFN和LQFP的,还是需要点焊接功底的。工具呢,主要是一把恒温烙铁和一台风枪,QFN好像有人用烙铁焊过,不过我是用风枪,陆续几天总共干了6、7个小时,终于完工了,下面就是完工的样子,屏蔽罩还没焊,等调试完了再焊。焊接过程中千万注意,撕纸带的时候千万不要把原件弹丢了,这个原件包最后就多了两颗电容。

image2.jpg
调试还是费了不少时间,首先要刷上固件,以后还要自己编译固件和GNURADIO,建议在Ubuntu 14.04 LTS 64位上建立开发
环境,我用这个版本还是比较顺利的,其它版本要不是更新源没了,要么是依赖包的安装不太顺利,可以参考http://www.hackrf.net/2013/12/linux%E7%B3%BB%E7%BB%9F%E4%B8%8A%E6%90%AD%E5%BB%BAhackrf%E7%8E%AF%E5%A2%83/
http://www.hackrf.net/2014/03/hackrf-operating-system-tips/,里面介绍的编译安装的hackrf只是主机端的刷机工具hackrf-tools,diy的hackrf one里面还没有固件,插到电脑上还识别不出来,不能刷,步骤如下:
1、首先下载安装dfu-tools,我用的是0.7版的,官方文档上git clone git://git.code.sf.net/p/dfu-util/dfu-util现在

是0.8的,好像不行,dfu-util的选项参数变了
tar zxvf dfu-util-0.7.tar.gz
cd dfu-util-0.7
sudo ./autogen.sh
sudo ./configure
sudo make
sudo make install
这时usb口上插上hackrf one,同时按住reset键和dfu键,然后先放开reset键,再放开dfu键,这是板子的tx、usb、rf三
个LED会亮,CPU进入DFU启动模式,然后执行:
dfu-util -l
如果看到一个[1fc9:000c]的设备就是正常,否则去检查硬件吧,电源、reset和dfu开关、usb口相关的电路正常不
2、如果你自己想编译安装,交叉编译环境要建立起来,要安装gcc-arm-none-eabi,可以参考上面那两片文章,git下源码。
cd firmware/hackrf_usb
mkdir build
cd build
sudo cmake .. -DBOARD=HACKRF_ONE
sudo make
这时就会生成两个文件hackrf_usb.bin和hackrf_usb.dfu
然后执行:
sudo make hackrf_usb-program
这时rf、1.8V、USB三个LED会亮起,执行hackrf_info会看到hackrf one,这时系统检测到了hackrf one,可以刷机了
刷flash:
hackrf_spiflash -w hackrf_usb.bin
刷cpld,这个要到firmware/cpld/sgpio_if里
hackrf_cpldjtag -x default.xsvf
然后按reset就行了





如果你不想麻烦,可以下载带预先编译好固件的源码包,可以看一下包里应该有个firmware-bin的目录
现在开始刷固件:
首先还是先进入DFU模式,然后通过dfu启动一个类似于桥的程序,程序可以通过usb口与主机通信
dfu-util --device 1fc9:000c --alt 0 --download hackrf_one_usb_ram.dfu
这时rf、1.8V、USB三个LED会亮起,执行hackrf_info会看到hackrf one,这时系统检测到了hackrf one,可以刷机了
刷flash:
hackrf_spiflash -w hackrf_one_usb_rom_to_ram.bin
刷cpld:
hackrf_cpldjtag -x firmware/cpld/sgpio_if/default.xsvf
都显示成功就刷完固件,可以reset了



WINDOWS下也可以刷的,不过DFU模式时,windows要装驱动,可以到NXP的官网下载lpc-link2,如果是XP系统要下老版本的。板子从DFU启动后,系统发现hackrf one,这时要用zadig安装hackrf的驱动,然后再刷flash和cpld,刷机时用的dfu-util和hackrf_tools可以到网上找windows版的。


接下来就是测试了,软件很多了,linux下的gqrx,windows下的sdr#、SDR Console、Winrad,听听FM,如果有问题,就有麻烦了。
image5.jpg
硬件主要问题还是虚焊,那片变频和收发器都是QFN的,都出现了问题重焊了,其它的还发现那两片14db的射频放大器焊反
了,焊接时搜到的手册上没有外形图,字又认不太出来正反,后来调试时又搜到其他的手册上有外形图的,才纠正过来,建议大家焊之前,都查下手册,调试中手里这台KC901S还是帮了不少忙,最后最好在30M-2.3G-2.7G-6G三个区间做收发测试,没有问题才算正常。
image1.jpg

下面是和ham it up的合影
image6.jpg
下面是GNURADIO的一点入门的东西,既然hackrf one可以发射,就先做个FM发射吧,单声道的没什么东西,学不到什么,做个立体声的,顺便可以测试一下hackrf one,找可以发射的sdr软件还真不好找,就找到了一个foobar2000的发射插件,结果还出错不能用:
FMStereoTx.grc.png FMStereoTx.png

原来手里的RTL棒子正好做接收
无标题.jpg
电脑产生的信号频率严重不准,导频信号设置的19.45K才行
再做两个FM立体声接收机
FMStereoRx.grc.png FMStereoRx.png
下面这个是用锁相环提取导频来解调L-R信号的,hackrf的中心频率采用偏离接收频率的方式,感觉信号噪声小不少

FMStereoRx_1.grc.png FMStereoRx_1.png


立体声信号识别采用锁相环锁定导频信号的方式,研究了很久,不知稳定不,下面是GRC文件,3.7版本下的

attachment icon FMStereoGRC.rar 10.00KB RAR 129次下载
来自:电子与无线电 / 无线电通信
 
cccyl
5年5个月前
1楼
做得不错,底噪大吗?本来我也想搞一个来玩玩的,但是买套件又懒得焊,买整机又嫌贵,还是等朋友出国时帮忙带个b200算了
回复
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
1211
5年5个月前
2楼
这种复杂套件能焊出来已经很牛逼了,多数人望板兴叹~
HackRF的ADC应该是8位的,我一直没想通这么少的位数是怎么达到基本能用的效果的,是不是采取了特殊的技巧。
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
smith
5年5个月前
3楼
HackRF的天线如何,我看到网上好多都是不带天线的
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
闲着会生病的
5年5个月前
4楼
楼主动手能力真强!
前一阵试用过泰克一款类似hackRF的RSA306频谱仪,软件设置相比R&S的频谱仪要复杂一些,没有射频发射功能,价格比hack RF贵贵贵,便携性不及安捷伦filedfox,好在和质量有保证,企业用户可以试着买来玩一下。
台式频谱仪屏幕太小不便于查看瀑布图,还是连接计算机查看比较舒服。
回复
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
gmcg
5年5个月前
5楼
非常牛b
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
wzk
5年5个月前
6楼
高手啊!
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ry7740kptv
5年5个月前
7楼
tb卖的那款应该是demo版的板子吧?后来正式版的原作者并没有开源出来?
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
Mr.Pretty
5年5个月前
8楼
楼主好强!!!
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
那抹余辉
5年5个月前
9楼
我不知道那块板子是什么东东,但我知道它很牛B,楼主也很牛B
回复
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
熊猫阿Bo
5年5个月前
10楼
HackRF One完全不需要HAM it up啊!!!!!

另外,请问楼主有没有测过EVM?结果如何?非常好奇!

最后发一张某一个机械层的PCB图,欢迎楼主加入开源SDR用户的行列!


6dedbb1agw1edwygptp0xj20kn0wxtlc.jpg
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
yaozhiyu作者
5年5个月前
11楼
引用 smith:
HackRF的天线如何,我看到网上好多都是不带天线的
好像原版的才带天线,瞧着和网上卖的15块一根的天线差不多
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
yaozhiyu作者
5年5个月前
12楼
引用 ry7740kptv:
tb卖的那款应该是demo版的板子吧?后来正式版的原作者并没有开源出来?
现在官网写的指标和原来是不一样了,是1MHz-6GHz,有人说只是软件改的,具体不太清楚,实际上看RFFC5072的指标最低是30MHz,但原来整机就标的是 10MHz,有些晕
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
yaozhiyu作者
5年5个月前
13楼
引用 熊猫阿Bo:
HackRF One完全不需要HAM it up啊!!!!!

另外,请问楼主有没有测过EVM?结果如何?非常好奇!

最后发一张某一个机械层的PCB图,欢迎楼主加入开源SDR用户的行列!
业余条件,没有手段[s::lol]
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
yaozhiyu作者
5年5个月前
14楼
引用 熊猫阿Bo:
HackRF One完全不需要HAM it up啊!!!!!

另外,请问楼主有没有测过EVM?结果如何?非常好奇!

最后发一张某一个机械层的PCB图,欢迎楼主加入开源SDR用户的行列!
计划以后做个天线听听短波,要是买了B200,也可以用一下
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
熊猫阿Bo
5年5个月前
15楼
引用 yaozhiyu:
好像原版的才带天线,瞧着和网上卖的15块一根的天线差不多
不是的,带900MHz的是最后一代原型版,作者发现天线坑爹,于是把PCB天线取消了


----------------------------编辑线-----------------------------------

仔细一看才知道原来您说的是Orzman搞的那条伸缩天线[s::L]那个天线实际上一般般而已,找正版的日本著名品牌天线,或者台湾产的也比它耐用,要是只想用个一年多,国产的伸缩天线都能胜任,反正效果都差不多。
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
熊猫阿Bo
5年5个月前
16楼
引用 yaozhiyu:
计划以后做个天线听听短波,要是买了B200,也可以用一下
B200配HAM IT UP完全是给金菜刀装泥刀柄。要是想用B200听短波,不妨找性能好的混频方案
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
dddggg412
5年5个月前
17楼
看上去挺乱或者挺脏的感觉
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
liccil
5年5个月前
18楼
关注下价格
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
pwrs
5年1个月前
19楼
听说这东西挺鸡肋的,犹豫中。
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
内容已被屏蔽
Kent1988
3年10个月前
20楼
好手艺,不知楼主现在用的怎么样。我是HackRF One生产工厂,整套(主板+屏蔽罩+亚克力外壳+普通天线)的零售价是900+,如有兴趣可以私信我。
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ry7740kptv
3年10个月前
21楼
想问下HackRF的BOM从哪下载啊?原理图上RFFC5072部分有两个滤波器没有标型号,能说下是什么么?谢谢!
回复
评论
1
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
radio
3年10个月前
22楼
引用 ry7740kptv:
想问下HackRF的BOM从哪下载啊?原理图上RFFC5072部分有两个滤波器没有标型号,能说下是什么么?谢谢!
https://github.com/mossmann/hackrf/blob/master/doc/hardware/hackrf-one-bom.csv
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ry7740kptv
3年10个月前
23楼
引用 radio:
https://github.com/mossmann/hackrf/blob/master/doc/hardware/hackrf-one-bom.csv
谢谢,已经找到了,不过上面的两个滤波器淘宝买不到,打算用mini-circuits家的代替~
回复
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

yaozhiyu
进士 机友 笔友
文章
4
回复
86
学术分
0
2012/03/09注册,1 个月前活动
暂无简介
%7B%22isDisplay%22%3Atrue%7D

仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。

插入资源
全部
图片
视频
音频
附件
全部
未使用
已使用
正在上传
空空如也~
上传中..{{f.progress}}%
处理中..
上传失败,点击重试
等待中...
{{f.name}}
空空如也~
(视频){{r.oname}}
{{selectedResourcesId.indexOf(r.rid) + 1}}
处理中..
处理失败
插入表情
我的表情
共享表情
Emoji
上传
注意事项
最大尺寸100px,超过会被压缩。为保证效果,建议上传前自行处理。
建议上传自己DIY的表情,严禁上传侵权内容。
点击重试等待上传{{s.progress}}%处理中...已上传
空空如也~
草稿箱
加载中...
此处只插入正文,如果要使用草稿中的其余内容,请点击继续创作。
{{fromNow(d.toc)}}
{{getDraftInfo(d)}}
标题:{{d.t}}
内容:{{d.c}}
继续创作
删除插入插入
{{forum.displayName}}
{{forum.countThreads}}
篇文章,
{{forum.countPosts}}
条回复
{{forum.description || "暂无简介"}}
ID: {{user.uid}}
学术分隐藏
{{submitted?"":"投诉或举报"}}
请选择违规类型:
{{reason.description}}
支持的图片格式:jpg, jpeg, png
插入公式
分享回复:{{shareId}}
加载中...
评论控制
加载中...
文号:{{pid}}
加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
加入关注取消关注
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
建议修改
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}
下载资料
{{fileName}}
大小:{{size}}
下载当前附件将花费 {{costMessage}}
{{description}}
你当前剩余 {{holdMessage}}
{{fileName}}
大小:{{size}}
当前附件免费。
你已购买过此附件,下载当前附件不需要花费积分。
加载中...
{{errorInfo}}
附件已丢失
当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}