去年 12 月,Blockstream 向太空发射了第五颗比特币同步卫星,目前卫星信号几乎已覆盖除了格陵兰岛和南极洲之外的全球所有国家和地区,现在你无需联网即可同步比特币区块数据。
组装硬件:
首先调节三脚架高低。
然后将卫星盘连接到三脚架上,并调节方位和高低。
然后将高频头安装到高频头支架上。
如果一切顺利,你的卫星天线应该是这样的。
连接线缆:
使用 F 转接头将 SDR 连接到高频头电源上,然后使用同轴电缆将高频头也连接到电源上。连接前需要确认电源与 SDR 是匹配的,否则错误的电源将损坏 SDR。
安装 Fedora
打开「终端」。点击屏幕左上角的「Activities」,输入「terminal」,点击图标打开「终端」。
使用 dnf 升级
打开「终端」后,输入
回车输入密码,密码是安装时设置的。然后可以看到待更新列表,输入 y,回车。
升级结束后,重启。
安装 GUNradio、gr-osmosdr 和其他软件:
在「终端」中,输入
回车后屏幕出现 Is this ok [y/N],输入 y,回车。
完成后,将 Blockstream Satellite 在 Github 的库克隆到本地,创建一个项目。
创建 Blockstream 卫星接收器:
首先要创建卫星接收器,输入如下命令:
安装好后开始克隆 Github 库
去刚才克隆好的文件夹
现在我们已经准备好所有 gr-framer GNUradio 模组需要的软件了,开始执行安装脚本:
输入密码
创建 gr-framers
恭喜,你已经安装了 gr-framers GNUradio!
现在开始执行 Blockstream GNUradio 安装脚本:
创建 Blockstream 模组
现在已经安装好 Blockstream 模组了。
我们需要设置 PYTHONPATH 和 LD_LIBRARY_PATH,来让接收器正常工作:
到这里,所有关于 GNUradio 的设置都已经完成了!
创建 Bitcoin FIBRE:
安装相关软件:
安装 FIBRE 相关软件
现在,克隆 FIBRE 库:
然后去克隆的文件夹:
开始创建:
现在创建 FIBRE
(此处可以添加 -jn 来加速编译,其中 n 是 cpu 核心数。如果你是四核处理器,就输入命令 make -j4)
已完成创建
完成后,开始安装:
FIBRE 安装好了
FIBRE 已经安装好了!你现在可以开始同步,或者将已经同步好的节点复制过来。
对齐卫星盘
到此为止,你已经准备好前期工作,下面开始对齐卫星盘。
所需准备:
确定要对齐的卫星:
Blockstream 目前有 5 颗卫星,确定你所在地区被哪一颗所覆盖。
可在 Blockstram 官网 查询:
本文选择的是 Galaxy 18 卫星。
官网也有对齐工具,你可以输入你的地址或经纬度,它会告诉你如何调整天线的高度、方位和极性。这里是 对齐工具。
确定摆放地点:
为了得到一个 Galaxy 18 大概的可视化方位,我用了 SatellitePointer 这个 App。
确保在视线的 30 度之内没有建筑、树、或其他遮挡物。理想的视线是这样的:
视线越好,你接收的信号也就越好。
设置卫星盘高度:
当你已经确定好卫星盘的摆放地点,你可以开始设置方位和高度。
信号质量与高度角密切相关,所以把高度角调节得越准确越好。
当你觉得高度已经调好了,就可以开始设置高频头的方位了。
设置高频头方位
设置高频头极性有点难办。我用了 SatellitePointer 这个 App 来帮助设置。我把手机的顶边贴近高频头底部的平边(图中红线处),然后看 App 中的指示:
虽然高频头上也有角度器,但是我觉得 App 更方便。
使用 Blockstream 卫星接收器微调
在启动接收器之前,你需要确定卫星的频率,并将其输入 rx_gui.py 文件。之前的教程里已经说过如何查询频率了。我使用的 Galaxy 18 卫星的频率是 12022.85 MHz。
要计算输入到 rx_gui.py 的频率,需要用卫星频率减去你高频头的 LO 频率。本文使用的高频头 LO 频率为 10750 MHz,因此最后的结果是 1272.85 MHz。
需要将 MHz 转化为 Hz,最后结果是 1272850000 Hz。
现在你可以将频率和增益(设为 40 即可)写入文件中,然后运行。
rx_gui.py 文件在 Blockstream 库的 satellite/grc 文件夹中。
接收器图形界面:
当你运行 rx_gui.py 时,会弹出一个窗口。我们需要用到 FLL In 这个选项卡。
图形显示波动很大,刷新很快。要解决这个问题,你可以设置一下 average 参数,设为 15 即可。
缓慢地左右旋转卫星盘,观察 FLL In 的变化。我同样用了之前的 App 来帮助寻找方位。
如果你成功了,你会看到如下所示的图表。
现在你需要调整方位(左右)、高度(上下)和高频头的极性,来让信号更好。最后会得到如下所示的图表。
要确认你的信号是好的,你可以到 Abs PMF Out 选项卡,看一下有没有峰值。
你也可以到 Costas Sym Out 选项卡去看散点图。
最后,「终端」会显示:
Frame synchronization acquired
恭喜!你成功对齐了卫星盘!
运行 FIBRE:
输入指令:
可以在 debug.log 文件中看到有没有成功接收区块,如果你看到如下的信息:
那么就已经成功了!
现在,你可以断网,试着只通过卫星来接收区块。