TP-LINK_841N_V8路由器硬改升级OpenWRT记


TP-LINK_841N这款路由器还是tplink家族中比较经典的一款,硬件版本可查到的从V3开始到V12,每个版本或CPU不一致,或RAMFlash大小不一致,而且更坑的是,国内版本和国外版本RamFlash大小还不一样。大概参数可在:http://wiki.openwrt.org/toh/start查询参考。

 

以上表是国外型号的配置,国内v8这个RAM型号为ZentelA3S28D40JTP容量为16MbyteFlash型号为Spansion-S25FL032P容量为2Mbyte。国外是32M/4M

这款路由器国内使用量还是比较大的,百度下网友的的吐槽就可以知道了,最多的问题就是死机,WDS功能不完善。个人在使用tplink路由器的总体感觉就是刚买来的新路由器很好用,用2年左右后就各种死机,升级固件也没用,逼你买新路由器。

16M(ram)/2M(Flash)这个配置刷openwrt是不够的,看到广大网友都通过硬改后刷openwrt841N就复活了后,就在淘宝上购置了64Mbyte DDR1-SDRAMHY5DU121622CTP-D438Mbyte FlashW25Q64FVSSIG

步骤一:添加串口打印输出口

在路由器左上角有TP5/TP6TTL打印输出口;其中TP5TXDTP6RXD,可在边上PCB上刮铜焊接GND。路由器重启后可在PC串口终端上可看到uboot启动信息,串口设置为波特率1152008位数据位,1位停止位。能看到启动信息表示路由器还活着。。。

  

步骤二:更换RAM

原机的A3S28D40JTP更换为HY5DU121622CTP-D43,更换的过程中特别注意附近的一堆小电阻电容。少了几个的话那只能呵呵了。。。

 

更换完成后还是老步骤,上电通过串口查看启动日志,看是否正常工作。如无法正常开机那就说明RAM没焊好,挨个pin脚查,直至可在串口看到完整的启动日志为止。

 

正常启动后,可以看到uboot已经查到当前RAM64MB,进入步骤三。

步骤三:更换FLASH

由于原机的FLASH上带的uboot上不支持刷openwrt,这次选择的是不死uboot,超级好用大名鼎鼎的breed

breed的详细说明参照:http://www.right.com.cn/forum/thread-161906-1-1.html。下载地址为:http://breed.hackpascal.net/。我选择的是breed-ar9341.bin

更换Flash前我们先需要将breed烧写进Flash,本人用的是轻便快捷好用的USB_SPIFlash编程器。

    

在烧写breed之前需要手工修改breed文件,将当前路由器的MAC地址和PIN码写入breed中。MAC地址为0x1fc00PIN码地址为0x1fe00(可在路由器背面查到)

 

将上述修改后的breed写入W25Q64FVSSIG,更换完后还是看启动日志。Breed已自动识别DRAM大小和Flash型号及容量

 

恭喜你,硬改成功!

 

剩下的就是软件刷机工作了,移步步骤四。

 

步骤四:openwrt刷机

1:编译OpenWrt固件

openwet源码中通过make menuconfig配置符合当前路由器的设置项

 

编译完成后会生成一堆bin文件,其中就有TP-LINK TL-841N V8对应的固件

 

2bin文件区别:

factory用与别的固件刷到openwrt用的,带用户数据分区。

sysupdate就是openwrt固件自己升级用不包含用户数据分区的,所以sysupdatebin文件就比较小一些

简单点讲,就是第一次用factory版的,以后都用sysupdate

2:升级固件

breed启动的前5秒,可通过串口终端敲任意键进入breed模式,否则计数完成后,自动进入内核启动。

进入breed模式后,可通过命令行模式操作,也可以通过http登录web更新页面。我们当然选择一目了然的web更新页面了!!!breed启动日志上写的很清楚,eth0ip192.168.1.1

 

Web页面如下:

 

我们选择固件更新页面,选择常规固件

 

固件文件选择的是factory版本的openwrt

ART文件选择的是路由器对应芯片的wifi驱动,这个在第一次固件更新的时候一定要有,否则openwrt驱动后和wifi有关系的选项都不会出现!!!

点击上传后将自动更新,完成后自动重启!不用多久就可以通过web界面进入openwrt设置页面了!

 

恭喜刷机成功!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章