小米ax3600救砖&刷机 您所在的位置:网站首页 小米路由器救砖工具 小米ax3600救砖&刷机

小米ax3600救砖&刷机

2024-06-13 09:51| 来源: 网络整理| 查看: 265

在某位朋友的推荐(忽悠)下从闲鱼上淘了小米ax3600,性价比之王。

早些时间装了宽带,一直用红米AX5,并没有在上面做代理,现在想着将订阅的机场利用起来,实现同一个内网的所有设备连接互联网。

简要的踩坑过程

到手后开始刷机,按照教程进行无分区扩容

过程:

无分区扩容刷机 变砖 ttl工具救砖 ttl刷机的几个失败 使用tftp传输固件包失败 使用tftp加载到内存后,写入固件到指定分区失败 由于分区大小不够,尝试刷入小固件重启失败 ttl刷官方固件 重启后降级连ssh 扩容教程 分区扩大后ttl工具刷入准备好的固件包 重启后依然黄灯 两个分区都刷同一个固件包成功 不扩容刷入openwrt

与参考链接小米AX3600不扩容刷机OpenWrt教程一致,本部分仅作为个人的笔记与备份

开启SSH

路由器控制台降级:刷入旧版固件miwifi_r3600_firmware_5da25_1.0.17.bin

获取SSH并修改默认密码为admin

复制路由器后台网址中STOK= 1http://192.168.31.1/cgi-bin/luci/;stok=/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20nvram%20set%20ssh_en%3D1%3B%20nvram%20commit%3B%20sed%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%5C%22debug%5C%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%3B%20%2Fetc%2Finit.d%2Fdropbear%20start%3B

将上面URL中的stok=后面补全为自己路由器网址的

{"code":0}表示成功

修改默认密码为admin

1http://192.168.31.1/cgi-bin/luci/;stok=/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20echo%20-e%20'admin%5Cnadmin'%20%7C%20passwd%20root%3B

同样补全stok= 后面内容,{"code":0}表示成功

至此可以ssh登陆路由器控制台了

刷机

MacOS直接使用Terminal,Windows可以使用WinSCP/Putty

将小于29M的ubi格式固件传至tmp根目录下

运行下面命令:

123456789101112131415161718nvram set flag_last_success=0nvram set flag_boot_rootfs=0nvram set flag_boot_success=1nvram set flag_try_sys1_failed=0nvram set flag_try_sys2_failed=0nvram set boot_wait=onnvram set uart_en=1nvram set telnet_en=1nvram set ssh_en=1nvram commit# 使用ubiformat工具,不经确认地格式化第十二个MTD设备,并使用位于/tmp/目录下的指定UBI格式固件文件ubiformat /dev/mtd12 -y -f /tmp/请替换固件包名.ubinvram set flag_last_success=0nvram set flag_boot_rootfs=0nvram commit# 重启reboot

等待一分钟左右蓝灯亮可以登入OpenWrt系统,注意这里的地址变为192.168.10.1 用户名root密码passwd

到这里刷机是成功的,这个固件也很不错了,如果不需要其他扩展,这个双系统还是不错的,

博客作者也给出了切回官方的命令:

123fw_setenv flag_last_success 1fw_setenv flag_boot_rootfs 1reboot 变砖

我想着刷入朋友编译的固件,

然后就通过路由器控制台的「刷写新的固件」上传.bin文件通过升级,结果,重启后一直黄灯,变砖了。

于是使用官方救砖工具救砖,还是不行,重启循环显示黄灯。

其实这里我应该意识到一件事,切换回官方系统就可以了。

TTL救砖回忆是珍珠

据上一次通过TTL工具刷路由器还是在上一次,呃,是2016年,那时候还是传说中的土豪金编程器,记得应该是买了个小米路由器mini青春版

工具准备

淘宝上购买TTL工具+杜邦线三种类型的(公对公,母对母,公对母),我的USB转TTL是FT232RL,支持5V/3.3V/1.8V

拆机

小米ax3600非常难拆,4个螺丝分布在底部防滑垫上,第5个在中间贴纸下面。上壳是塑料的卯榫结构,需要用翘片慢慢拆。如果拆坏了也不要紧,使用胶带粘起来就好了。

刷机

这里刷机靠着Benny的教程和他的帮助

连接准备

TTL调到1.8v,将黄色盖帽压到1.8v的位置,然后接线,使用杜邦线将FT232RL的TX 要接路由器的RX,RX接TX,GND接 GND,VCC不接。

VCC,GND,RX,TX

进入screen

电脑端:MacOS直接使用screen,通过系统信息-USB查看信息看到设备名称

路由器通电

1screen -L /dev/cu.usbserial-A50285BI 115200 –L

然后按回车中断引导,进入screen

正常来说路由器启动后会进入uboot,这里按回车中断了引导,可以进行刷机了。至此,说明电脑通过TTL连接路由器是没有问题了。

准备tftp(照抄Benny)

macOS 自带一个 tftp,使用如下命令启动

1sudo launchctl load -w /System/Library/LaunchDaemons/tftp.plist

把后缀是 ubi 的 nand factory 复制到/private/tftpboot中(需要 sudo)

停止tftp可以用这个命令

1sudo launchctl unload -w /System/Library/LaunchDaemons/tftp.plist uboot刷分区(继续抄Benny)配置环境变量

网线连接电脑和路由器 LAN,电脑设置 IP 192.168.31.100,然后在 uboot 中执行如下命令

12setenv serverip 192.168.31.100setenv ipaddr 192.168.31.1 加载固件

然后加载固件到内存中

1tftpboot 1.ubi

此时能看到屏幕上在走进度条,如果你没走,提示 tftp server died 或者卡住了,那多半是 tftp 服务器没配置好。

这里我遇到了两个奇怪的问题,第一个是加载固件的时候,另外一个是出现了这样的 TTTTTT

12345678910111213141516IPQ807x# tftpboot openwrt-ipq807x-generic-xiaomi_ax3600-squashfs-nand-factory.ubiipq807x_eth_halt: doneeth0 PHY0 Down Speed :10 Half duplexeth0 PHY1 Down Speed :10 Half duplexeth0 PHY2 up Speed :1000 Full duplexeth0 PHY3 Down Speed :10 Half duplexeth0 PHY4 Down Speed :10 Half duplexeth0 PHY5 Down Speed :10 Half duplexipq807x_eth_init: doneUsing eth0 deviceTFTP from server 192.168.31.100; our IP address is 192.168.31.1Filename 'openwrt-ipq807x-generic-xiaomi_ax3600-squashfs-nand-factory.ubi'.Load address: 0x1Error specified load address not allowedipq807x_eth_halt: done

TTTTTT

T应该就是表示timeout了,我的解决办法就是关了Wi-Fi,重新加载。问题出在我家里连接的也是小米家的红米路由器,连接Wi-Fi是地址和设置的服务端重了。

正常的情况是这样的:

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263IPQ807x# tftpboot 1.ubiipq807x_eth_halt: doneeth0 PHY0 Down Speed :10 Half duplexeth0 PHY1 Down Speed :10 Half duplexeth0 PHY2 Down Speed :10 Half duplexeth0 PHY3 up Speed :1000 Full duplexeth0 PHY4 Down Speed :10 Half duplexeth0 PHY5 Down Speed :10 Half duplexipq807x_eth_init: doneUsing eth0 deviceTFTP from server 192.168.31.100; our IP address is 192.168.31.1Filename '1.ubi'.Load address: 0x44000000Loading: *Got TFTP_OACK: TFTP remote port: changes from 69 to 58219################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ###################################################### 2.8 MiB/sdoneBytes transferred = 41811968 (27e0000 hex)ipq807x_eth_halt: done

进度条走完之后,会留下一个数字,Bytes transferred = 41811968 (27e0000 hex)也就是固件的大小,同时最开始 Load address: 0x44000000 还会告诉你固件的起始地址,这两个数值很重要,要记下来。

获取分区信息

用smeminfo可以获取分区信息

123456789101112131415161718192021222324IPQ807x# smeminfoflash_type: 0x2flash_index: 0x0flash_chip_select: 0x0flash_block_size: 0x20000flash_density: 0x100000partition table offset 0x0No.: Name Attributes Start Size 0: 0:SBL1 0x0000ffff 0x0 0x100000 1: 0:MIBIB 0x0000ffff 0x100000 0x100000 2: 0:QSEE 0x0000ffff 0x200000 0x300000 3: 0:DEVCFG 0x0000ffff 0x500000 0x80000 4: 0:RPM 0x0000ffff 0x580000 0x80000 5: 0:CDT 0x0000ffff 0x600000 0x80000 6: 0:APPSBLENV 0x0000ffff 0x680000 0x80000 7: 0:APPSBL 0x0000ffff 0x700000 0x100000 8: 0:ART 0x0000ffff 0x800000 0x80000 9: bdata 0x0000ffff 0x880000 0x80000 10: crash 0x0000ffff 0x900000 0x80000 11: crash_syslog 0x0000ffff 0x980000 0x80000 12: rootfs 0x0000ffff 0xa00000 0x23c0000 13: rootfs_1 0x0000ffff 0x2dc0000 0x23c0000 14: overlay 0x0000ffff 0x5180000 0x1ec0000 15: rsvd0 0x0000ffff 0x7040000 0x80000

其实这里问题就浮现了,第13分区的大小是35.75M,小于我的固件大小40M,所以下面的步骤无法操作。

那我只能刷一个小的固件,这里我准备重新开始,选择刷入小米官方固件miwifi_r3600_firmware_5da25_1.0.17.bin,然后再回到上面的过程。

清除分区内容

保险起见,先给 rootfs 抹掉,自己对应起始结束地址,我的和Benny不同

1234nand erase 0xa00000 0x23c0000nand erase 0x2dc0000 0x23c0000# 对于已经扩容的第13分区, 完全擦除使用下面的nand erase 0x2dc0000 0x8000000

第一个数是起始地址,第二个数是擦除的大小

写入固件

rootfs_1 中,使用nand write命令,这个命令接受三个参数,分别是固件内存地址,分区起始地址,固件大小。对我来说,写到 rootfs_1 也就是

1nand write 0x44000000 0x2dc0000 0x1c00000

写到 rootfs 就是

1nand write 0x44000000 0xa00000 0x1c00000

我这里两个分区都刷入了小米官方固件,然后按照教程刷qsdk扩容

重来

按照上述教程刷成功后,再次使用TTL工具进入screen 通过smeminfo发现第13分区已经扩大到128M了

12345678910111213141516171819202122232425IPQ807x# smeminfoflash_type: 0x2flash_index: 0x0flash_chip_select: 0x0flash_block_size: 0x20000flash_density: 0x100000partition table offset 0x0No.: Name Attributes Start Size 0: 0:SBL1 0x0000ffff 0x0 0x100000 1: 0:MIBIB 0x0000ffff 0x100000 0x100000 2: 0:QSEE 0x0000ffff 0x200000 0x300000 3: 0:DEVCFG 0x0000ffff 0x500000 0x80000 4: 0:RPM 0x0000ffff 0x580000 0x80000 5: 0:CDT 0x0000ffff 0x600000 0x80000 6: 0:APPSBLENV 0x0000ffff 0x680000 0x80000 7: 0:APPSBL 0x0000ffff 0x700000 0x100000 8: 0:ART 0x0000ffff 0x800000 0x80000 9: bdata 0x0000ffff 0x880000 0x80000 10: crash 0x0000ffff 0x900000 0x80000 11: crash_syslog 0x0000ffff 0x980000 0x80000 12: rootfs 0x0000ffff 0xa00000 0x23c0000 13: rootfs_1 0x0000ffff 0x2dc0000 0x8000000 14: overlay 0x0000ffff 0xadc0000 0x1ec0000 15: rsvd0 0x0000ffff 0xcc80000 0x80000 16: 0:WIFIFW 0x0000ffff 0xcd00000 0x900000

这样可以直接按照刷机的步骤再次刷入大的固件,这里我还是将固件都写入了第12、13分区,因为只写一个的话还是黄灯进不去。

然后重启路由,蓝灯进入路由器控制台,救回来了!

并且刷入了目标的固件!

救砖成功

固件体验

这个编译了ShadowSocksR Plus+,支持 SS/SSR/V2RAY/XRAY/TROJAN/NAIVEPROXY/SOCKS5/TUN 等协议,可以进行订阅,定时刷新以及自动切换节点,这样我就实现了我刷机的目标,同一内网下的所有设备的全部互联网连接。

缺点是访问控制只支持LAN ip级别的筛选,对于特定的硬件设备不能管理,不过问题不大,我使用这个路由器做中继,然后另外一个直连光猫,有互联网需求的连ax3600,没有的连红米。OpenWrt的中继设置参考的这篇:进阶教程之 OpenWrt 无线中继配置指南

总结

其实按照我踩过的坑,比较顺利的路线为首先刷入过渡包进行扩容,然后通过控制台升级;如果控制台变砖了,由于扩容成功,还可以进行ttl直接刷入准备好的固件包。

后续1

后续就是ssrp的问题,我订阅的节点是解锁了openai的,但是通过电脑直连路由器openai返回我的公网ip,

具体解决看我连不上openai了这篇博文。

另外还有Adblock的问题,ssrp完全不能分流我的广告啊,这下不得不重新刷机了。

2

刷了https://github.com/vonl1/Openwrt_xiaomi_ax3600 0609的包,通过无线连接路由器时需要 输入密码

1234567890 另外登录的地址是10.10.10.1 用户名root 密码boos

他参考的https://github.com/Boos4721/openwrt进行的编译。

上面那个太坑了,比如ssh路由器的管理器密码都不是页面定义的,dropbear重启了也不管用,魔改了不少后门。

找不到表情包来形容我的窘迫了,只能说愿你刷机归来,还是恩山无线

https://www.right.com.cn/forum/thread-8294637-1-1.html 然后在根据群里老哥的帮助终于用上了openclash

3

openclash启用,我的机场使用的是TUN内核,比较简单的图形化操作是在「配置文件管理」中上传内核,内核是从OpenClash的core分支中,master/premium目录下载相应架构的文件,这里不需要解压。

另外一种方法是下载解压、改名之后传到/etc/openclash/core中,记得给权限,改名为clash_tun

另外dev不需要上传,openclash的配置检查是:如果有dev的话会用dev,但是我的机场需要tun。所以可以不传dev,只传tun。

4

openclash的推荐配置:

运行模式:fakeip+增强

代理模式:rule

开完fakeip不要频繁重启路由器,重启了客户端要记得清理dns缓存,这里也可以设置fakeip持久化,禁dns缓存。

5

刷入uboot,具体看这篇文章小米AX3600刷入uboot

参考 无分区扩容刷机:https://www.ceer.cc/122 刷入qsdk并扩容rootfs_1分区到128M:https://www.right.com.cn/forum/thread-4631481-1-1.html Benny的教程:https://dmesg.app/fix-ax3600.html 进阶教程之OpenWrt 无线中继配置指南 恩山无线的ImmortalWrt固件


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有