红米AX3000(RA81)免拆机刷openwrt

这几天家里有一台闲置的红米ax3000,无聊之余遂拿来刷机

刷入降级固件

下载 MIWIFIRepairTool 和降级包,按提示刷入降级固件

https://cdn.cnbj1.fds.api.mi-img.com/xiaoqiang/rom/ra81/miwifi_ra81_firmware_1dd69c_1.0.33.bin

解锁SSH

xmir-patcher

git clone https://github.com/openwrt-xiaomi/xmir-patcher

先clone下这个项目,然后双击run.bat(run.sh)


先选1设置好网关,再选2连接到设备解锁SSH

刷入openwrt

openwrt官方并不支持红米ax3000,因此需要额外制作patch,幸好有大佬已经做好了
可以自行编译,也可以直接下载release里作者编译好的固件用
https://github.com/hzyitc/openwrt-redmi-ax3000

自行编译(此处引用原项目readme)

sudo apt update
sudo apt install build-essential clang flex g++ gawk gcc-multilib gettext \
  git libncurses5-dev libssl-dev python3-distutils rsync unzip zlib1g-dev

git clone https://github.com/hzyitc/openwrt-redmi-ax3000.git

cd openwrt-redmi-ax3000

./scripts/feeds update -a
./scripts/feeds install -a

make menuconfig #这里只需要选择Redmi AX3000构建就行了,多余带M的包可以取消掉M,避免额外构建

make -j16 download

make -j$(nproc)

简单讲讲编译时遇到的问题,我自己在编译的时候用多线程一直出错,后来改用单线程才顺利编译下来,编辑好的固件在bin/targets/ipq50xx/arm里。

刷入固件

先用scp把固件上传进/tmp里

scp openwrt.ubi [email protected]:/tmp/

然后登入SSH,先看看是哪个分区启动

nvram get flag_boot_rootfs

如果返回0就要刷入rootfs_1,反之同理
然后查看分区表

cat /proc/mtd


可以看到rootfs_1分区在/dev/mtd19
然后直接刷入固件重启即可
此处按刷入rootfs_1为例

ubiformat /dev/mtd19 -f /tmp/openwrt.ubi
nvram set flag_try_sys2_failed=0
nvram set flag_boot_rootfs=1 #改为刷入分区
nvram set flag_last_success=1 #改为刷入分区
nvram commit

reboot # 最后重启

等路由器启动之后访问 192.168.1.1,就能看到openwrt页面了

最后提一嘴,刷机有风险,刷机一时爽,救砖火葬场

6 Likes

这种硬路由刷的,是不是强上加强!

刷openwrt,玩软路由最爽

刷好之后可以玩单线多拨,白嫖带宽,虽然现在大部分地区都禁了
openclash也能装,但是直接用opkg装的话可用空间不足,需要自己打包到固件里面

感谢大佬。

可玩性太低

1 Like

小米系的路由器 RAM 都是一言难尽,家里一堆小米路由器,现在全用来做 AP 了,软路由还是术业有专攻啊 :face_exhaling:

硬路由内存和flash有点小,刷完发现CPU大部分时候是闲置,想要加业务内存又不够

可以把大包编译进固件里,比如openclash,这样就节省空间了 内存是硬伤,没办法

此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。