找回密码
 注册

QQ登录

只需一步,快速开始

查看: 45276|回复: 47

GT701-WG刷RouterTech Firmware的方法

[复制链接]
发表于 2010-1-13 20:51:08 | 显示全部楼层 |阅读模式
警告:刷第三方固件可能会使Moden变砖块,使Moden永久损坏,请务必先阅读相关文档,明白你正在干什么,再继续下面的步骤!!!
  
    买了个洋垃圾GT701-WG(我也不喜欢洋垃圾,谁让哥手头不宽裕呢!不过做工还是不错的),先后刷过Actiontec原厂固件、Qwest固件和
Openwrt,原厂固件界面简单,功能较少,Qwest固件界面漂亮,但Qos功能不太好用,Openwrt好像是为高手们准备的,100多个软件包,我不知道用哪
个好,而且在gt701上面运行速度慢,没有指示灯,看着不爽。搜索到RouterTech支持gt701,决定试一试,经过十多天的摸索,gt701数次刷成砖头,
恢复后再刷,终于成功。本文对我这十多天的摸索进行一个总结,将我的成功与失败的经验与网友们分享。本文可能较长,我试图将其中的原理说清
楚,以使其他人少走弯路。

一、相关知识
   
    gt701的4MFlash有5个分区,分区大小及存放的文件如下(参考http://nuwiki.openwrt.org/oldwiki/openwrtdocs/hardware/actiontec/gt701_wg):

partition    start      end         description  
mtd0      0x900d0000  0x903e0000    squashfs filesystem
mtd1      0x90010000  0x900d0000    kernel
mtd2      0x90000000  0x90010000    ADAM2(引导程序)
mtd3      0x903f0000  0x90400000    ADAM2 environment variables followed by `config.xml`
mtd4      0x903e0000  0x903f0000    unknown/unused (32 zero bits followed entirely by ones)

    gt701原厂和Qwest的固件是组合固件(separate images)分为三个文件,即kernel、filesystem、config,分别存放在Flash的mtd1、mtd0和
mtd3分区中,大家可以在原厂Recover程序的image文件夹下找到这三个文件(ram_zimage_pad.ar7wrd.nsp.squashfs.bin 、
nsp.ar7wrd.squashfs.img 和config.xml)。原厂恢复的过程其实就是把这三个文件发送到各自的分区。

    而RouterTech固件是单一固件(single image),整个固件只有一个image文件。RouterTecn论坛推荐的升级方法是通过web页面升级,可是
gt701的Qwest固件没有web升级页面,虽然Actiontec固件和openwrt有web升级页面,但我试过,不能用来升级RouterTech。

二、升级方法的探索

    有了以上的认识,我们可以从以下两个思路来将gt701升级RouterTech:

    1、改变gt701Flash的分区,使它适合单一固件,再用pctool工具将RouterTech的固件发送到相应的分区。这是RouterTech论坛推荐的方法,我
也是用该方法升级成功的,下面我会给出详细的步骤。

    2、将RouterTech固件解压为三个文件组合的固件,再分别发送到Flash相应的分区,可用的方法有ftp、使用RepairRouterTool等工具,解压的
工具有firmware_tool。论坛上有位美国网友用此方法成功升级了GT704,他推荐我用此方法升级GT701,我也试过,但没有成功,不知道哪里出了问题
。或者用原厂Recover程序将三个文件发送到指定的分区,理论上应该可行,但我没有试过。
危险!请注意:由于升级的过程改变了Flash分区,使得原来固件文件及配置文件丢失,而且由于改变了分区,所以不可能用原厂的Recover程序进行
恢复。我就是在这里卡了很多天,最后买了条TTL线来恢复,下面我还会提到。所以升级前要做好备份。

    之所以GT701升级openwrt比较容易,是因为openwrt没有改变Flash的分区,只是增加了一个mtd5分区,所以可以用Recover进行恢复。  

    切记:无论如何都不能改变mtd2的分区,因为mtd2分区保存引导程序ADAM2,只要ADAM2还在并工作,理论上都可以进行恢复和升级。

三、升级的准备工作

    1、最好有TTL线,可以看到升级的过程中Moden发生了什么,这样升级或恢复都更有针对性。最好有备用的Moden,以防刷坏了还可以上网。
   
    2、下载RouterUpgradChecker并运行,这一步千万千万不能省略!!!。RUC不仅分析你的Moden,告诉你用哪个固件,还帮你备份了GT701的
mtd3文件和env(环境)文件以及指示灯的配置。这对升级或恢复都很有用。

    3、下载固件,RouterTech从2.92版开始增加了适合GT701的固件(1-port wireless (Adam2 bootloader). Suitable for the Actiontec
GT701WG and other 1-port ADAM2-based AR7WRD routers using the TNETW1130 wireless chip (DO NOT USE WITH ROUTERS USING THE
TNETW1350A WIRELESS CHIP).

    4、下载pctool,论坛上有三个版本,我用2.3版升级成功(XP系统)。

    5、升级过openwrt的最好把mtd5分区删除和把MAC_PORT设置删除,方法为
        UNSETENV mtd5,0x90010000,0x903e0000
        UNSETENV MAC_PORT,0

    6、恢复原厂配置。

    7、阅读所有工具、软件中的文档,做到心里有数。

四、用pctool升级RouterTech的步骤

    1、适合单一文件的分区:
        setenv mtd0 0x90098000,0x903f0000
        setenv mtd1 0x90010090,0x90098000
        setenv mtd2 0x90000000,0x90010000
        setenv mtd3 0x903f0000,0x90400000
        setenv mtd4 0x90010000,0x903f0000
        setenv my_ipaddress 192.168.1.1

    将上面的代码复制到记事本,并保存为txt文件。代码中最后一行是我自己加上的,把路由器的地址改为192.168.1.1。因为如果用GT701默认的
地址192.168.0.1的话,我试了好多次都不成功,改成192.168.1.1才成功的,怀疑是RouterTech固件是在192.168.1.1才能工作?我不清楚。

    2、把GT701用网线连到电脑,电脑设置固定地址192.168.0.99,掩码255.255.255.0,网关192.168.0.1。即Recover的设置。

    3、在GT701未通电的情况下,运行pctool,在IP Address文本框中输入192.168.0.1。

    4、按住Moden的Rest键,接上Moden的电源,保持按住Rest键10钟以上(使Moden进入ADAM2模式),点出pctool的"Retrieve/Assign IP
Address"使pctool登陆ADAM2,如果成功的话,下面的状态会显示ADAM2登陆成功。登陆成功后可松开Rest键。

    5、在“Execute Script Files"(执行脚本文件)栏中点击“Browse”,选择你刚才保存的代码文件(txt文件),再点击“Run Script”。这样
就改变了GT701的Flash分区,使它适合单一的固件文件,并把Moden的地址改为192.168.1.1。

    6、拔掉Moden的电源,电脑设置固定地址192.168.1.99,掩码255.255.255.0,网关192.168.1.1。

    7、重复3、4步,注意这次在IP Address文本框中输入的是192.168.1.1。用pctool登陆ADAM2。

    8、登陆成功后在“Media Type”中选“FLASH”,在下面的框中选“Firmware-kernel/FS”,使它变蓝,再点击“Download”按钮,选择你下载的单一固件文件,我的是“RouterTech_3.6.0D_20100105_2.92_AR7WRD_Adam2_1-Port_firmware.upgrade.img”,pctool就会把固件文件上传到Flash的mtd4分区,这个过程可能要花几分钟,耐心等待直到pctool弹出上传完成的提示。

    9、上传完成后,重启Moden,经过几分钟后,就可用浏览器输入192.168.1.1登陆(用户名Admin,密码Admin,注意大写A),最好先恢复默认配置
后,再进行自己的设置。新建一个连接,设置VPI、VCI,用户名、密码等就可以上网了。

五、使用效果

    感觉不错,很多功能,还再进一步探索中。连续开机48小时进行BT下载高清没有断线,QOS功能还不错。内置有GT701的指示灯配置文件,但是和
以前好像有点不一样,power和internet灯都是桔黄色,我看过内置的LED配置文件,和我备份的是一样的,不知为什么。无线功能还未调好,我想应
该能用。

六、恢复原厂固件的方法

    用pctool先恢复原来的分区,和原来的环境配置(刷RouterTech后增加了几项环境配置,用pctool的download enviroment space功能或在moden
的system/system diagnostics中可看到),再运行原厂的Recover,即可恢复原厂固件,但是我只能恢复Qwest的固件,不能恢复Actiontec的固件,
不知为什么?

七、刷第三方固件体会

    首先要有充分的准备,包括相关知识,相关工具的用法,备份原固件等等,对刷新过程可能遇到的问题心里要数,制定清晰的步骤。万一刷死了
,马上停下来,想一想moden发生了什么,怎么样才能恢复。在我的经历中,由于开始没有TTL线,我不知道Moden时发生了什么,一种方法刷不成功
,马上换一种方法刷,用过不少方法,但是都不成功,也无法恢复原厂固件,困扰了我很多天。后来买来TTL线,才发现在我反复刷的过程中,FLASH
的分区产生了很多无效的碎片,致使无论怎么刷,不清除碎片的话,根本无法刷成功。后来用工具清除了碎片后,才刷成功的。

八、GT701-WG的数据线接口

    GT701-WG的主板上有两个接口JP603和JP604,其中JP603是串行数据线接口,即TTL线接口(国外叫serial console),接口定义请参考
http://www.tlarson.com/guides/dslhack/serial,利用数据线很容易进入ADAM2模式,看到Moden的启动过程,环境配置等等,有几个命令还比较有
用,如setenv,unsetenv,erase,fixenv等,只要ADAM2还在并工作,就有可能恢复Moden。
    JP604可能是某种JTAG接口,但我搜索了很久,都没有相关资料。所以没有办法利用JTAG来备份和恢复GT701。

九、相关链接

    本文所用的固件和工具软件都可以在RouterTech官方网站上下载,版权属于原作者,如有需要请到官方网站下载。感谢RouterTech开发和提供固件,希望更多人支持和使用RouterTech。固件需要注册才能下载。大家有什么问题也可以在论坛上求助,只要表达得清楚,会得到帮助,这点上感觉国外的DIY比国内的专业。

    1、RouterTech官方网站(http://www.routertech.org);
    2、GT701数据线接口定义(http://www.tlarson.com/guides/dslhack/serial);
    3、GT701的一些相关知识(http://nuwiki.openwrt.org/oldwiki/openwrtdocs/hardware/actiontec/gt701_wghttp://ar7.wikispaces.com/Actiontec+GT701-WGhttp://www.nettwerked.net/actiontec.html)。
发表于 2010-1-14 10:36:03 | 显示全部楼层

GT701-WG刷RouterTech Firmware的方法

涉及到修改env变量,这个的确要谨慎,搞不好就真成了砖头了。
毕竟串口线还是比较麻烦的。
发表于 2010-1-14 10:47:55 | 显示全部楼层

GT701-WG刷RouterTech Firmware的方法

这个我也尝试过,自己也修改了分区,(就是没修改过gt701的ip地址)。可是刷进去就是不能用,所以后来就放弃了。看了lz的好文,有时间我也试试看!
发表于 2010-1-15 00:17:26 | 显示全部楼层

GT701-WG刷RouterTech Firmware的方法

本帖最后由 黑洞001 于 2010-1-14 16:26 编辑

已经刷写成功了,不过,我的刷写过程和你的不同,我是用pctool分好区,然后重启猫后进去ftp来刷的:
F:\资料\GT701-WG\routertech\pctool-v2.3>ftp 192.168.1.1
Connected to 192.168.1.1.
220 ADAM2 FTP Server ready.
User (192.168.1.1:(none)): adam2
331 Password required for adam2.
Password:
230 User adam2 successfully logged in.
ftp> binary
200 Type set to I.
ftp> quote MEDIA FLSH
200 Media set to FLSH.
ftp> put RouterTech.img "RouterTech.img mtd4"
200 Port command successful.
150 Opening BINARY mode data connection for file transfer.
226 Transfer complete.
ftp: 2953224 bytes sent in 26.50Seconds 111.44Kbytes/sec.
ftp>
忘记说了,我把原来那个镜像名称改为RouterTech.img了,原来的名称太长了。
 楼主| 发表于 2010-1-15 12:10:21 | 显示全部楼层

GT701-WG刷RouterTech Firmware的方法

回复 4# 黑洞001

Cool!
只要明白了其中的原理,应该很容易刷成功!看来确实要把地址改为192.168.1.1才行。
发表于 2010-1-15 19:00:35 | 显示全部楼层

GT701-WG刷RouterTech Firmware的方法

使用了一段时间RT,我的无线偶尔会死机,不知道怎么回事?
发表于 2010-1-15 20:55:37 | 显示全部楼层

GT701-WG刷RouterTech Firmware的方法

楼上几位高手谁建个群吧?
发表于 2010-1-16 11:10:51 | 显示全部楼层

GT701-WG刷RouterTech Firmware的方法

回复 5# jesse9999
确实,以前我就分过区,刷写进去,可是就是不行,这次改了ip地址,刷写进去就ok了。
 楼主| 发表于 2010-1-16 11:58:22 | 显示全部楼层

GT701-WG刷RouterTech Firmware的方法

回复 7# virginlulu

我不是高手,对于RT也是刚接触不久,也还在摸索中。有什么问题可在本贴中提出,大家共同探讨。也欢迎更多高手参与进来,试用这几天,我觉得RT挺好用的。
发表于 2010-1-16 19:25:18 | 显示全部楼层

GT701-WG刷RouterTech Firmware的方法

不错。学习了。慢慢研究
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|宽带技术网 |网站地图

粤公网安备 44152102000001号

GMT+8, 2024-5-10 06:43 , Processed in 0.025546 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表