XR1710G 路由器刷机

没忍住,买了个 XR1710G 这个全新的洋垃圾。

主要看中三点:

  1. 它支持 6G 频段
  2. 它有两个 10G 电口和两个 1G 电口
  3. 它内存和闪存都比较大

6G 频段目前国内用不了,10G 电口倒是可以玩玩。内存大可以跑个魔法网络试试。

看着拆机和刷机教程,看起来蛮简单的,所以就买的没刷的版本,388 块钱。刷好的要加 30 块钱。但是买回来发现家里的 TTL 线坏了,又从微雪买了个 TTL 线,花费 20 。

固件准备

UBoot:

  • YYH2913 的版本刷好后有带 DHCP 的 WebUI,很方便。似乎也可以进原厂 SSH 直接刷,不过没找到 SSH 的教程。
  • Hurrian 的版本刷好后好像还是要回到 TTL 界面再刷,不爽不爽。

固件:

在 Mac 上使用 TFTP

Windows 下有各种 TFTP 软件…… Mac 下好像都要收费。不过 Mac 下系统自带了一个 TFTP Server 。我们直接启用它即可。

# 启用

sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist
sudo launchctl start com.apple.tftpd

# 验证一下
netstat -atp UDP | grep tftp

# 你应该能看到类似这样的东西
# udp4 0 0 *.tftp *.*
# udp6 0 0 *.tftp *.*

# 把文件复制到这里
cd /private/tftpboot

# 建议修改下权限,避免因权限问题导致下载报错
sudo chmod 777 /private/tftpboot
sudo chmod 777 /private/tftpboot/*

# 刷机完成后,关闭 TFTP
sudo launchctl unload -F /System/Library/LaunchDaemons/tftp.plist

拆机

路由器背后贴纸的右下角有个六角螺丝,蛮深的。

路由器边缘是用卡扣连接的,四周共有 11 个卡扣。可以沿着「白-黑-棕」的「黑-棕」之间的缝隙来撬。

不算太难。

TTL 接线

拿出主板,有风扇的一面朝上,让网口对着自己。左下角是 TTL 接线柱。

从左到右分别是「TX – GND – VCC – N/A – RX」。将主板的 TX 、 RX 、 GND 分别和 TTL 的 RX 、 TX 、 GND 相接(注意 TX 接 RX,基本常识)。不要接 VCC 。

连接 TTL

连接的波特率是最常用的 115200 。

Mac 里,插上 TTL 线之后,就会出现一个 TTL 设别。我的是/dev/cu.usbmodem5A990008081 。那么可以用 screen /dev/cu.usbmodem5A990008081 115200 来进行连接。

如果你有好用开源的带 GUI 的 TTL 连接方式,可以告诉我下。

连接网线

网线一端插在本机,一段插在路由器的 LAN 口(10G 或者 1G 口都可以)。

然后设置本机 IP 为静态 192.168.1.10,掩码为 255.255.255.0

刷 Uboot

首先连接好 TTL 。

然后路由器插电。

然后手速快点,在 TTL 里面多按几个空格或者回车,打断启动引导进程(其实它会有倒计时,3 秒钟内按任意键停止启动)。

记一下你刚才下载的 uboot 的文件名,一般会有 chainloader 字样,大小在几百 K 。

setenv ipaddr 192.168.1.1
setenv serverip 192.168.1.10
tftpboot 0x89000000 你的 UBOOT 文件名
flash erase 0x600000 0x100000
flash write 0x600000 0x100000 0x89000000

到这里会开始刷 Uboot 。大概几秒钟就完成了。如果卡住,可以断电重来。

最后是设置引导。这里我不太确定的点是,地址好像有好几种,我不知道应该选哪一种。

  • 第一种是 hurrian 里面的,写的是 0x600000 0x100000
  • 第二种是 YYH2913 里面的,写的是 0x602100 0x100000 。我后面用的是他的固件,所以就这样写了。
  • 第三种是恩山论坛里的,写的是 0x602100 0x0FDF00

然后是写法:好像这样写是可以的:

setenv bootcmd 'flash read 0x600000 0x100000 $loadaddr; bootm'
saveenv

但是我还找到另一种,就是 bootcmd 分成两段来写,感觉像是在规避什么限制,不知道是为啥

setenv one flash read 0x602100 0x0FDF00 \$loadaddr
setenv two "; bootm"
setenv bootcmd "$one$two"
saveenv

最最最后,输入 reset 重启。

刷系统

把电脑设置成 DHCP 。 YYH2913 的 UBoot 自带 DHCP,不一会儿就可以获取到 IP 地址。

然后上传刷机即可。

目前发现的问题

目前还不咋好用……

YYH2913 的固件,界面有点卡,Wi-Fi 设置界面里有一大堆用不到的 Radius 选项,不过 Wi-Fi 用着还行。

naoki66 的固件,5G Wi-Fi 真男人撑不过 5 秒,之后 Wi-Fi 就断了,几乎啥啥都打不开了,只能用有线。

我看好像 XR1710G 的支持快要合并到 OpenWRT 的主线了,那么可以再等等原版 OpenWRT 。估计能等到地老天荒。毕竟上次等亚瑟就等了一年半呢,到现在 OpenWRT 原版还是不好用,最好用的是 VIKINGYFY 的版本。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注