前言:既 CMCC RAX3000Me 之后
我最近由于需要,又购入了一台 CMCC XR30 路由,最开始网络公开的教程调研这款路由属于 CMCC RAX3000Z 增强版,硬件方面和 CMCC RAX3000M 几乎一致,只是设计了立式外观,说实话还挺有设计感的
我之前有写过一篇 CMCC RAX3000Me 的刷机教程,目前我调研观察发现 CMCC XR30、CMCC RAX3000M、CMCC RAX3000Me 这三款路由器的硬件基础高度一致,都是 MTK7981 芯片,硬件差异主要在内存(包括 DDR3/4)、存储(普通版 Nand 128M 和算力版 EMMC 64G)
之前那篇文章我大概会侧重于实操如何使用工具,这篇文章我更多打算写一些相关附加知识


前期拆机
我手上这台生产日期为 20240305,外观观察到这台机器一共有 4 个网口,应该为 4 个千兆,和 RAX3000M(e) 一样为 1 WAN + 3 LAN 标准组合,其中 WAN 口直通,LAN 口桥接到内部的交换机,通电后可以进入原 CMCC XR30 的系统,该有的功能就那样,没什么好看的


机器外部只有一个螺丝,隐藏在标签下方,揭下标签拧下螺丝后使用普通塑料撬棒沿周围撬开即可

闪存来自 GigaDevice(兆易创新),SOP8 封装的 128MB SPI NAND

其他的基本都在屏蔽罩下方,这边还要装回去用的,就不拆剩下的了
正式开始
准备物品
需要准备内容:
- 祖传或者野生的 USB-TO-TTL 3.3V 一个
- 带有直流电压测试功能和蜂鸣档测试功能的万用表一个(非必须,主要用于确定 TTL 引脚)
- 编译好的 MT7981 固件 (我使用了 padavanonly 大佬的 padavanonly/immortalwrt-mt798x-6.6 - Github 的分支,这个分支比较新)
- 981213 大佬开发的 MTK_UARTBOOT (981213/mtk_uartboot - Github) 工具
- 用于预引导 uboot 的 bl2 固件 (我使用 暗云 大佬预编译的 MT7981 的 bl2 固件 mt7981-ddr4-bl2.bin,具体参考 MediaTek Filogic 系列路由器串口救砖教程 - 暗云 - 博客园)


找 TTL 引脚(此部分可以跳过,只有在未知情况下需要做)
如图所示,观察到主板上有一排 4 个焊盘,经验告诉我们这很有可能是我们要找的 TTL 调试引脚,接下来可以掏出万用表

GND 共地一般是最容易测量的,因为只需要测量每个接口和主板上与 GND 接通的任意位置阻值就可以了,这里我使用散热片作为 GND 测试,拨到万用表蜂鸣档,挨个测试,可以判断出图中最下方的引脚就是 GND 了
测试 GND 应在 掉电 的时候测量,避免其他干扰因素,理想情况下,GND 引脚和主板上与 GND 接通的任意位置阻值应非常接近 0Ω

其次是测量 VCC 电压的引脚,正常情况下,VCC 引脚在路由器通电后可以测量到稳定的电压并且不跳变,这个电压也通常与 RX/TX 数据引脚参考电压源相同,所以测出 VCC 后就可以相应的调整 TTL 模块的电平跳线,切换到对应电压标识处,即逻辑电平标准电压
将万用表直流电压档,通电后测量每个引脚对 GND 的电压,可以看到第 3 个引脚测量值始终稳定为 3.3V,第二个引脚在 3.25V - 3.3V 之间跳变,第 4 个引脚则是稳定在 0.06V
正常情况下,URAT 模块的 TX 引脚应该给设计为上拉到与 VCC 引脚对应的参考逻辑电平,所以第 2 个引脚即是 TX 引脚,第 4 个引脚则是 RX 引脚



