小米 WR30U TTL救砖完整教程

TTL串口 + U-Boot命令行 救砖指南

本文记录小米 WR30U 因刷入不兼容 U-Boot 导致网络功能损坏,最终通过 TTL 串口救砖的完整过程。

救砖流程

按照以下步骤操作,助您救活路由器

1

准备工作

准备硬件和软件清单

查看详情 →
2

拆机与TTL连接

撬开外壳,连接串口线

查看详情 →
3

进入U-Boot

通过TTL进入命令行

查看详情 →
4

传输U-Boot

Kermit协议串口传文件

查看详情 →
5

刷入系统

Web恢复或TFTP刷固件

查看详情 →
6

验证备份

测试启动,备份关键分区

查看详情 →

📋 适用场景

  • 刷 OpenWRT U-Boot 后网络失效,TFTP 恢复模式无法使用
  • 路由器橙灯常亮,无法正常启动
  • ARP Retry 超时,无法获取 IP
  • 需要拆机 TTL 救砖

🎯 核心思路

通过 TTL 串口进入 U-Boot 命令行 → 串口传输 hanwckf 原版 U-Boot → 利用新 U-Boot 的 Web 恢复或 TFTP 刷入系统 → 完成救砖。

第一步:准备工作

硬件清单

物品 规格 用途
USB 转 TTL 模块 CH340G/CP2102,3.3V 电平 连接电脑和路由器串口
杜邦线 母对母或公对母 连接 TTL 针脚(剥线插入过孔)
网线 普通网线 连接电脑和路由器 LAN 口
塑料撬棒 银行卡或专用撬棒 撬开外壳(无螺丝版)

软件清单

💡 提示

只需准备 U-Boot 文件,系统固件后续通过 U-Boot 的 Web 或 TFTP 刷入,无需提前准备。

第二步:拆机与 TTL 连接

拆外壳(无螺丝版)

WR30U 部分版本底部无螺丝,采用纯卡扣设计,需从顶部盖板入手:

步骤 操作
观察确认 检查路由器底部,确认无橡胶脚垫和螺丝孔
撬开顶盖 从顶部盖板边缘入手,用塑料撬棒/卡片插入缝隙,沿边缘缓慢滑动,逐个松开卡扣(听到"咔"声)
辅助技巧 卡扣较紧时,可用吹风机低温加热边缘软化塑料;从网口一侧或散热孔一侧开始撬最容易
取下盖板 四周卡扣松开后,顶盖即可取下,露出主板

⚠️ 注意

不要怕断卡扣,不影响使用。如有必要,再取下底盖或主板固定螺丝。

找 TTL 针脚

WR30U 主板 TTL 为 4 个过孔(无竖立针脚),位置通常在网口附近或主板边缘。

针脚 说明
3.3V 不接
TX 接模块 RX
RX 接模块 TX
GND 必须接

🔍 识别方法

  • 用万用表测对地电阻,GND 为 0Ω
  • 3.3V 上电后有电压
  • TX/RX 是信号线

接线

WR30U 主板 USB-TTL 模块 说明
GND GND 必须接
TX RX 交叉接
RX TX 交叉接
3.3V 不接 防止供电冲突

接线方式:杜邦线剥出金属针,插入过孔,用热熔胶或胶带固定。

第三步:进入 U-Boot 命令行

连接串口

✅ 成功标志

出现 MT7981> 提示符或 Boot Menu 菜单(按 0 进入命令行)

第四步:刷入 U-Boot

⚠️ 问题现象

如果 U-Boot 网络损坏(ping 失败,ARP Retry),无法使用 TFTP,必须用串口传文件刷入新 U-Boot。

串口传输 U-Boot

1. 启动 Kermit 接收

MT7981> loadb 0x46000000 115200 ## Ready for binary (kermit) download to 0x46000000 at 115200 bps...

2. Tera Term 发送文件

File → Transfer → Kermit → Send,选择 mt7981_wr30u-fip-fixed-parts-multi-layout.bin

3. 直接刷写(无需验证)

# 擦除 FIP 分区 MT7981> nand erase 0x1c00000 0x200000 # 写入新 U-Boot MT7981> nand write 0x46000000 0x1c00000 0x200000 # 或使用自动命令 MT7981> run mtd_write_fip # 重启 MT7981> reset

💡 传输失败处理

如果 Kermit 传输慢或失败,尝试降低波特率到 57600,或换用 Ymodem 协议:

MT7981> loady 0x46000000 115200

第五步:刷入系统固件

重启后进入 hanwckf U-Boot,网络功能已恢复,可通过以下方式刷入系统:

方式一:Web 恢复界面(推荐)

步骤 操作
设置电脑 IP IP: 192.168.31.254/24,网关: 192.168.31.1
进入 Web 恢复 按 Reset 进 U-Boot,自动启动 Web 恢复,浏览器访问 http://192.168.31.1/
选择布局 选择 default 或 qwrt(根据固件类型)
上传固件 选择 OpenWRT sysupgrade 固件刷入,等待完成自动重启
OpenWrt LuCI 管理界面
OpenWrt LuCI 管理界面(刷机成功后访问)

方式二:TFTP 命令行

# 设置网络 MT7981> setenv ipaddr 192.168.31.1 MT7981> setenv serverip 192.168.31.254 # 测试连通性 MT7981> ping 192.168.31.254 # 下载并刷入固件 MT7981> tftpboot 0x46000000 openwrt-squashfs-sysupgrade.bin MT7981> nand erase 0x700000 0x6e00000 MT7981> nand write 0x46000000 0x700000 $filesize MT7981> reset

第六步:验证与备份

验证系统启动

重启后:

备份关键分区(重要!)

# 备份 U-Boot root@OpenWrt:~# dd if=/dev/mtd4 of=/tmp/fip-hanwckf-backup.bin # 备份 SN/MAC root@OpenWrt:~# dd if=/dev/mtd2 of=/tmp/bdata-backup.bin # 备份无线校准 root@OpenWrt:~# dd if=/dev/mtd3 of=/tmp/factory-backup.bin # 用 WinSCP 或 scp 下载到电脑保存

测试恢复模式

常见问题

问题 解决
顶部盖板撬不开 用吹风机加热边缘软化塑料,或从网口一侧入手
Kermit 传输慢或失败 降低波特率到 57600,或换用 Ymodem/Xmodem 协议
Web 刷机提示 Image not supported 换 default 或 qwrt 布局重试
UBI 分区错误 在 U-Boot 命令行执行 nand erase 0x700000 0x6e00000
刷完后无法启动 有 TTL 连接,重新进 U-Boot 再刷
网络不通 检查网线、IP 设置、防火墙,确认接 LAN 口非 WAN 口

🔑 关键经验

  • 无螺丝版 WR30U 从顶部盖板撬开
  • 串口传 U-Boot 无需验证内存,直接刷即可
  • hanwckf U-Boot 网络稳定,Web 恢复最简单
  • 保留 TTL 线,方便以后救砖

参考资源

祝救砖成功!🎉

⚠️ 技术声明

本教程仅供学习和参考。刷写固件存在风险,可能导致设备变砖或失去保修。请在操作前:

最后更新:2026年4月