上周刷3rd party QSDK固件,把AX3600刷成砖了,总结下拆机救砖过程。(Note: 由于我在国外,没法保修,不得已拆机,国内朋友们能保修的,还是不要拆机了)
1. 故障起因和现象
起因: 跟着恩山原贴(https://www.right.com.cn/forum/thread-4040158-1-1.html)的过程走了一遍。
前面都顺利。 在最后一步ubiformat /dev/mtd13 -y -f /tmp/openwrt-ipq807x-generic-xiaomi_ax3600-squashfs-nand-factory.bin 之后就无法正常启动了。
惊慌之下,直接用miwifitool试图恢复,虽然固件能刷进去(蓝灯闪烁), 然而依然不能进系统。
现象:miwifitool弄完, 橙灯间歇性闪烁。分析: AX3600使用的是双固件架构。 因为刷QSDK固件后,设置了从rootfs_1启动, 而miwifitool恢复的是rootfs, 所以miwifitool恢复之后,依然不能正常启动。
2. 救砖过程
由于人在国外,保修走不通了,所以干脆拆机, ttl 救砖。
工具:1.8v的FT232(TTL转usb). (https://www.amazon.com/gp/produc … 0_s00?ie=UTF8&psc=1)
拆机: AX3600 很不好拆, 建议先撬两个短边,再撬前后。拆完如下图
大体的过程,就是通过u-boot刷mtd13这个分区(rootfs_1),刷的内容是.ubi格式的openwrt固件的, 我用的是openwrt-ipq807x-generic-xiaomi_ax3600-squashfs-nand-factory.ubi (来自https://www.right.com.cn/forum/thread-4631481-1-1.html)
1. 焊接路由器上TTL的接口,并与FT232连接。 (Note: VCC不用接)
2. Putty 选择serial, 速率115200, 复位路由器, 会看到u-boot循环重启,enter键进入u-boot。
3. TFTP把.ubi固件上传到路由器。
我的用的是tftpd64(https://bitbucket.org/phjounin/tftpd64/downloads/tftpd64.464.zip)。
电源与路由器网线连接, 把电脑端设置静态地址192.168.31.100, 打开tftpd64, 把xx.ubi放到tftpd设置的目录下
路由器端,通过u-boot 设置好IP。
setenv serverip 192.168.31.100
setenv ipaddr 192.168.31.1
tftpboot xx.ubi
然后就能看到.ubi被上传到0x44000000这个内存地址。
4. 把ubi固件刷到mtd13 (rootfs_1)
uboot中用smeminfo命令查看mtd12(roofs)和rootfs_1的地址范围。
根据地址范围擦掉原来内容 (Note:请把一些地址替换成你的smeminfo查到的地址,参数不要直接用我的!)
nand erase 0xa00000 0x23c0000
nand erase 0x2dc0000 0x8000000
最后把刚才上传到0x44000000的.ubi固件写到rootfs_1的内存范围内 (0x2dc0000 是我的rootfs_1起始地址,0x1e00000是.ubi文件大小, 如上图,文件上传结果中可以获得,这两个参数不要直接用我的!)
nand write 0x44000000 0x2dc0000 0x1e00000
5. 重启,救砖成功。
然后有需要的话,还可以按照原贴的过程(https://www.right.com.cn/forum/thread-4040158-1-1.html)刷小米官方+第三方双固件。
小白刚研究Openwrt固件一个月,可能有些内容不够严谨,请各位参考,批评指正。