自制JTAG线,修复巴法络WZR-RS-G54
原路由器故障的原因如下有一WZR-RS-G54路由器,刷了DD固件8M的版本,中继稳定使用两年多了。前段时间发现更换无线信号的时候系统会出现乱码,重启后就变回英文的界面,重新设置中文界面也设置不了,更换无线信号后发现加密方式只有tkip,就算选择其他加密方式的话保存后还是会默认回tkip方式。无论怎么设置也不能设置回中文的界面,其他语言也不能设置,就算重启后再语言栏显示是中文的选项,但是界面还是显示英文,这时候只有按reset键回复默认设置就可以正常。
有一天想更换信号的时候又出现上面的情况。这次情况更坏,发现reset键失效了,无论怎么按都不行,无论是开机状态还是按下后再开机都无效。本想用30/30/30秒的方式清除设置后重新刷固件的,但是reset键失效了,无法重置,使用管理界面的重置设置也是无效,就是重置后,再开机的话也是原来的设置,感觉是保存功能出问题,但是很奇怪的是以前设置的信息都存在,比如以前中继的ssid和密码都在的,无法清除。
没办法的情况下没有清除设置就重新刷机,刷机过后原来的设置页是存在,并且也还是英文界面,也是无法设置回中文的界面。
想着换一个固件,就换了番茄固件,成功刷进去了。可以正常获取IP,也可以正常进入管理界面,发现原来的无线信息还是存在,设置后也是保存不了,点保存,应用,重启后还是原来的信息。reset键也是无效的。重启几次后现在连管理界面都进不了,也获取不到IP,现在获取的是私人IP,想用TFTP重新刷回DD固件,但是现在获取不到IP,无法连接。
flash闪存是东芝48脚8m的闪存。我现在只有4-8脚的闪存编程器。
现在的固件是番茄的固件,开机后路由器的所有灯都是正常的,有线获取不到正常的IP,连接后获取的是私人IP,也ping不通。 路由器的不正常现象,检查电源发现400v10u电容虚焊,估计故障发生的原因就是因为电源不稳定造成的,在刷番茄固件之前,我已经先把开关电源的电容先重新加焊好的。电源3.3v是稳定正常的。但是故障依旧.
原帖地址:http://www.anywlan.com/thread-222744-1-1.html
在论坛上发过两个帖子请教别人,没有一个人回复,不知道是不是高手们不愿意回答还是真的没人知道解决的方法.又或者是使用这个型号的路由器的人比较少没人研究. 没办法.只有自己凭网上搜索的信息自己解决.目前来看只有JTAG方法可以尝试,因为这个闪存是48脚的,用编程器的话基本没希望,而且这个型号的cfe自己也没有.拆开路由器发现线路板上是有一组16位两排的接线孔,跟网上看到的JTAG接口很相似,可以一试.没有JTAG线,只有自己制作.网上找JTAG接口的资料:
对比几个路由器的JTAG接口的定义,发现一般接口排列孔相似的,对应的接口定义是相同的,对于我的这个WZR-RS-G54路由器来说,在不知道JTAG接口定义的情况下,可以参照上面的接口定义来尝试,反正现在没有资料,问别人也没人告诉你的情况下,只能死马当活马医了!!!
首先制作JTAG线(论坛里找的资料)非常简单的5根线加上4个100欧电阻就可以完成.PC端并口的20至25针是并联在一起的.JTAG 线的接法:
PC并口(连打印机的接口) JTAG接口引脚 功能
2 100欧姆 3 TDI
3 100 9 TCK
4 100 7 TMS
13 100 5 TDO
20/25 直连 6 地线
并口插针制作由于没有并口插针口,找了个以前小霸王学习机上的手柄接口来DIY,如下图
先焊接好插针的引线.最好在每根引线上做好标记,方便一会连接到线路板的JTAG接口上不会弄错.
看看WZR-RS-G54的JTAG接口.这个路由的JTAG接口原来是有一张序号贴纸贴着的,如果不拆起主板,可能会以为这个主板是没有JTAG接口的.现在那张贴纸已经被我去掉了.看如下图:
按照上面网上找到的JTAG接口图,对照下主板上的位置接口定义如下(接口上有引脚序号).3: TDI, 5: TDO,7: TMS, 9: TCK6是GND,其实2-10脚都是GND,它们是并联一起的 按照定义焊接好后就可以试机了.焊接好的图片忘记拍了.很简单,只要仔细一点就不会弄错.如果有杜邦线的话用杜邦线和接线柱来操作会比较方便,我没有这两个,就只有直接焊接了.我的5根线是18cm长的. 焊接好线后就可以插到电脑上去进行连接和操作.
先连上你的JTAG线到主机并口,再插上路由器的电源。
网上资料:
把JTAG.rar解压出来.放到C盘根目录下.然后把解压出来的giveio.sys复制到c:\windows\system32\drivers\或者运行一下解压出来的”安装驱动.bat”这个批处理文件, 完成后再运行loaddrv.exe,加载2k,xp的并口驱动把框框里面输入c:\windows\system32\drivers\giveio.sys(如果是2k系统或系统在D盘的要选对路径)依次install ,start,你点两次start的话,会提示你已经在运行了(JTAG操作完成后可以点stop停止,然后点remove移走giveio.sys)。 桌面-开始-运行,输入cmd回车。弹出DOS窗口,输入两次”cd ..”回到C盘根目录下,然后再次输入cd c:\jtag回车进入刚才解压的JTAG文件夹,输入brjtag–backup:nvram回车(这条命令是备份路由器设置的),一般正常的情况下就可以看到1 ~ 100% 的过程,那就成功了。这时候就可以进行刷机了。 如果没有以上的1-100%的过程,你要看一下了,注意看这段*** Unknown or NO CPU Chip ID Detected ***,原因大致:A,线连接有问题,没有接好或者接错了,也有可能是线有问题。B,软件不支持你的硬件,换一个JTAG软件试下.C,如果还是不行可以试下重新插拔电源,重复上面的操作
成功连接上路由器后,就可以使用JTAG命令来备份.刷机或者清除等操作.由于我的这个路由器是因为电源问题导致设置出错.重新刷过固件也没用,而且reset键也失效了.所以第一猜想是配置有问题,所以第一步想到要清除设置也就是清除nvram.第一步就开始先清除NVRAM:命令如下:brjtag -erase:nvram完成后关闭DOS窗口,关闭JTAG软件,关闭路由器电源,然后用网线连接路由器开机,发现可以正常获取IP了,JTAG操作之前是不能获取IP的,之前刷的是TT系统,感觉还是不太好用,想重新刷回DD系统,既然有JTAG线,那就用JTAG来进行清除固件操作,我想这样比较彻底.重新连接好线开机,用以下命令进行清除固件的操作.既然要重新写固件,那就再次清除下设置了:brjtag -erase:nvram然后清除固件:brjtag -erase: :kernel完成后关闭DOS窗口,关闭JTAG软件,关闭路由器电源 用TFTP方法刷固件:为什么不刷固件呢?因为在JTAG下刷固件听说很慢的,所以我选择在TFTP下来刷固件.去掉JTAG连接线. 用网线连接电脑和路由器,连接好后路由器电源先不接.首先设置电脑的IP地址为192.168.11.2,网关为192.168.11.1,因为WZR-RS-G54这个路由器的原厂网关IP地址是192.168.11.1,所以电脑上必须先设置好这个网段的地址,如果是其他路由器则要设置对应原厂网关IP地址.打开TFTP软件,在TFTP软件的路由器IP里填写路由器网关地址192.168.11.1,固件文件选择要刷的固件存放位置,防止出错,一般把固件改成简单名字放到C盘根目录下.如下面的dd.bin就是我要刷的DD固件.自动重新刷flash次数改成99次,一般只需要1次就够,这个99次是为了防止1次连接不上超时时才用到的.
另外再开一个命令提示符窗口,开始à所有程序à附件à命令提示符.或者开始à运行à输入CMD回车.
在命令提示符状态下,输入ping 192.168.11.1 –t 回车,这时候会提示
回车后接上路由器电源,过一会如果连接上路由器会出现如下提示
当出现这个提示的时候马上按下TFTP软件上的”更新固件”按钮,这时候会出现一个状态条,当状态条到100%的时候说明已经把固件成功刷到路由器上.一般固件没有选错,或者路由器硬件没有损坏的情况下,路由器就修复好了.关闭TFTP软件,关闭命令行提示符窗口,关闭电源.去掉手动设置的IP地址,设置成自动获取IP,然后路由器重新接上电源,不出意外就可以正常获取IP,其他的设置就按自己的需要设置了.
这是刷好DD固件后登录的界面和路由器信息.
JTAG清除固件和配置的操作忘记截图,只能用简单文字来表述,不过这个也简单,只要你的JTAG和连接方式是对的,一般都可以操作.
还是自力更生的好~~~有时候请教别人都是徒劳~~ 不容易 给你回复 鼓励下 牛逼人物顶一个~ 不错,顶了,很详细,只有电阻的JTAG线我也做过,只不过在705P上没能正常工作 好贴。。。。{:1_1:} 牛逼人物顶一个~ 牛逼人物顶一个~
页:
[1]