![d4b6693b3949f283640e68b84f576e3c.png](https://i-blog.csdnimg.cn/blog_migrate/64e255be056a6e161b74590796387155.jpeg)
换了个办公室需要一个路由器,依稀记得小米路由某款有千兆+5g ac,且便宜可以刷openwrt
于是去楼下商场里随手买了个小米路由4,然而回来发现这玩意没有开发版固件,没法直接开启ssh,于是回家焊上ttl针脚,研究了一下。发现还是有办法解决的。
问题
小米路由器第一次启动后,会往uboot 配置(nvram)里写入 uart_en=0 ,这样导致uboot引导后,不接受ttl输入,只能查看,从而没法从ttl刷机了
解决办法
解决也很简单,连好ttl线,PC开启putty打开com,参数是标准 115200 8N1
进入小米路由器设置选项,选择恢复出厂设置,重启
然后看到uboot引导时候,不停按键盘 4 键(进入uboot 命令行)
Please choose the operation:
1: Load system code to SDRAM via TFTP.
2: Load system code then write to Flash via TFTP.
3: Boot system code via Flash (default).
4: Entr boot command line interface.
7: Load Boot Loader code then write to Flash via Serial.
9: Load Boot Loader code then write to Flash via TFTP.
如果不成功,则看到引导原厂固件时候,会有提示 擦除nvram (erase nvram),这时候果断拔电,再插上,就能成功进入 uboot命令行了
如果还不成功,就重复以上恢复出厂设置的操作
进入uboot命令行以后,输入:
setenv uart_en 1
saveenv
这样以后uart ttl口就会一直起效了
刷机
当然我们要刷机,于是先准备好 tftpd , 下载 breed
我使用的是 breed-mt7621-xiaomi-r3g.bin ,来自 breed下载
因为r4 和r3g的区别,就是 阉割了128M内存和usb口,所以直接使用小米3g的版本即可
开启tftpd,把breed-mt7621-xiaomi-r3g.bin 重命名为 uboot.bin
设置pc ip(我这里是192.168.31.33)拔电,插电, 在引导界面 按9
Please choose the operation:
1: Load system code to SDRAM via TFTP.
2: Load system code then wri