特别感谢 @coolsnowwolf @asushugo 等一众牛B的开发者适配301w路由器!
本教程仅限于lean的qsdk闭源固件和lede开源固件,其他衍生固件刷机祝你好运!
在开启路由器可以正常进系统的状态下,长按路由器后的 WPS 键,直到听到第二声“嘟”松开(大约 12 秒)就 OK。
这里需要注意一点
-
路由器默认开启的SSH的端口号是 22200
-
用户名是
admin
,密码是路由器网页登录密码
ssh命令就是 ssh admin@192.168.100.1 -p 22200
( 如果端口没开重复步骤1 )
或者使用putty连接
sudo fw_setenv current_entry 1
提示要输入的密码就是刚刚你登录 ssh 的密码,以下不再赘述
sudo reboot
重启
按照上述步骤二操作重新打开ssh
sudo fw_printenv -n current_entry
查看分区,确保这里会输出 1,如果不是,重复步骤 三。
注意:强烈建议使用dd命令(方法自行搜索引擎)备份一些重要的分区例如mtd闪存分区以及mmc闪存分区,以便以后可以恢复官方固件
sudo dd if=/tmp/kernel.bin of=/dev/mmcblk0p1
sudo dd if=/tmp/rootfs.bin of=/dev/mmcblk0p4
sudo fw_setenv current_entry 0
sudo fw_setenv boot_0 good
sudo reboot
截图参考:
执行完上述命令之后即可刷入QSDK并从第一分区启动QSDK,注意由于目前还没有刷10G PHY的firmware,需刷入firmware。
- 将AQR_ethphyfw_5.6.7.mbn用scp命令或者winscp工具传输到QSDK的/tmp目录下
- 使用putty或其他ssh工具进路由器后台,抹除原ethfw分区 mtd10的数据:
mtd erase /dev/mtd10
- 刷入fw文件:
mtd -n write /tmp/AQR_ethphyfw_5.6.7.mbn /dev/mtd10
- 修改bootcmd环境变量:
fw_setenv bootcmd "aq_load_fw 0; aq_load_fw 8; bootipq"
fw_printenv
看下是否有这条记录 bootcmd=aq_load_fw 0; aq_load_fw 8; bootipq ,如果有就没问题。- 重启