【硬改】小米AX3600 补齐SPI焊盘实现NAND和SPI双启动实战记录,救砖必备!

介绍

      前段时间朋友找我修一个砖头的AX3600  开机卡Uboot 不亮灯也没有任何反应,折腾前没有备份过任何内容,并且NAND编程器固件不能随便修改,改了会导致ecc出错。不能直接通过偏移地址将ART 等关键数据从编程器固件中提取出来,像楼主这种完美主义者,怎么能让机器使用非原机的的ART Bdata 数据呢?观察到主板上有一个SPI 焊盘突然就想起来,曾经 K3 神机的 SPI NAND 双启动魔改。那么只需要使用SPI FLASH 中的UBOOT 启动后 在通过 TFTP 将 原机的数据备份出来不就可以了?于是在一番折腾后有了这个帖子。
      同时作为路由器爱好者,对于普通玩家来说花几百上千买个nand 编程器很不现实,所以我们都不希望在路由器出现问题时束手无策。对于AX3600 我们可以通过补齐空闲的备用SPI焊盘,实现NAND和SPI的双启动。这将使我们在遇到砖头问题时能够轻松切换至SPI启动uboot,而后在SPI Uboot 中刷写救砖固件,从而挽救我们心爱的路由器。

所需物料

      在开始之前,确保已经准备好以下物料:

  • 电阻  0402 10K x2
  • 电容  0201  1uF x1
  • NOR FLASH芯片 W25Q128JW x1 (16M)

      已测试兼容芯片 : W25Q64FW  W25Q128FW W25Q128JW

      这里需要注意的是目前IPQ系列方案的SPI,NAND,TTL的电压全部都是1.8v,如果使用错误的电压可能烧毁芯片发生不预料的损失。
      同时也需要支持1.8V电压的编程器,如 CH341 这种编程器原生也并不支持1.8V的 SPI 芯片,需要购买额外的电平转换板。

将UBOOT写入NOR FLASH

      使用编程器将 uboot 烧写进 W25Q128JW

硬件改动

      将SPI的外围元件补齐,并且将烧录好数据的SPI NOR FLASH芯片焊接至焊盘。通过更改配置电阻的方式切换为SPI启动。

  • 补齐 R87 R88 位号上的两颗0402 10k 贴片电阻
  • 补齐 C77 位号上的 0201 1uf电容
  • 移除 CPU旁边的R103(4.7k)电阻

      移除R103电阻,切换至SPI 启动

测试和验证

      在进过上面的改动后,插电,开机。5安大电流!

      通过 1.8V TTL 连接至AX3600 可以看到已经正常引导进Uboot了,同时也识别出Flash 的型号和容量。

通过SPI UBOOT 写入系统

      成功启动至SPI UBOOT 后,使用网线连接至 AX3600 并且将网卡IP设置为 : 192.168.1.10,打开TFTP 工具 就可以在SPI UBOOT 中像NAND中写数据了
      将网卡以及UBOOT 环境变量配置好后使用以下命令救砖命令刷机,
      需要注意的是这种方法会给原机的art bdata 等数据写成救砖固件中的信息,建议在操作前将原机的art 和bdata 分区 进行备份

备份原机信息:

#备份原机 ART
nand read 0x44000000 0x800000 0x80000 && tftpput 0x44000000 0x80000 ART.bin

#备份原机 Bdata
nand read 0x44000000 0x880000 0x80000 && tftpput 0x44000000 0x80000 Bdata.bin

      刷入救砖固件:

      由于uboot最多只能刷入大概100MB的固件,所以将原本的128MB的固件拆分成了两部分,两次上传,两次刷入。

#擦除整片flash
nand erase 0x0 10000000

#下载第一部分
tftpboot ax3600_0-0x3ffffff.bin
#刷入第一部分
nand write 0x44000000 0x0 0x4000000

#下载第二部分
tftpboot ax3600_0x4000000-0x7ffffff.bin
#刷入第二部分
nand write 0x44000000 0x4000000 0x8000000

      还原原机信息:

#还原ART数据:WIFI 相关参数数据
tftpboot ART.bin && nand erase 0x800000 0x80000 && nand write 0x44000000 0x800000 0x80000

#还原Bbdata: SN MAC 型号等相关数据
tftpboot bdata.bin && nand erase 0x880000 0x80000 && nand write 0x44000000 0x880000 0x80000

      至此小米AX3600 硬改及救砖步骤完成,关机后将 R103 位号 电阻安装至原位开机即可,建议在第一次启动后重置一遍系统。

相关参考资料:

AX3600 改SPI启动的探索 可救砖-小米无线路由器以及小米无线相关的设备-恩山无线论坛 (right.com.cn)
 Adding OpenWrt support for Xiaomi AX3600 (Part 1) – For Developers – OpenWrt Forum
 Add OpenWrt support for Xiaomi “Redmi AX6000” – For Developers – OpenWrt Forum


【AD】DMIT美国洛杉矶Pro VPS套餐,$14.9/月起,1G-10Gbps带宽/CN2 GIA线路/有高防GIA可选
【AD】美国洛杉矶CN2 VPS/香港CN2 VPS/日本CN2 VPS推荐,延迟低、稳定性高、免费备份_搬瓦工vps