本帖最后由 满天星 于 2012-8-28 10:02 编辑
2012.08.27更新:OP版本加入支持en25q64新Flash,新旧版本MW4530R均可通刷,带Web,默认开启WIFI!(已知WPS和RESET按键无效,下次解决!)
硬件配置:
水星Mercury MW4530R是双频(750M)千兆无线路由器,硬件配置与TP-Link WDR4310/4300一致:
CPU: Atheros AR9344@560MHz (MIPS 74Kc) (SOC)
Flash:Spansion FL064KIF @8MB
RAM:H5PS5162GFR*2 @128MB
Ethernet Switch:Atheros AR8327N Gigabit Switch
Wireless 1: Atheros AR9340 2.4ghz 802.11bgn
Wireless 2:Atheros AR9580 5ghz 802.11an
4530R的论坛网友拆机图:https://www.right.com.cn/forum/thread-84672-1-1.html4530R比TP4310少1个USB接口及1个JTAG接口,提供TTL接口。而TP4310比4300少1个WIFI开关。
OpenWRT/TP4310/TP4300/水星原厂固件打包下载:
供新手使用, 目录下均有readme说明(2012.08.27更新)
百度网盘:http://pan.baidu.com/share/link?shareid=7138&uk=1409583832
刷机方法:
水星/TP原厂固件使用不同的特征码,由uboot识别,即每种uboot只识别自身特征码的Firmware,但OpenWRT可命令行下强刷(Web不行)。各原厂固件之间互刷时,均借助OpenWRT作为中转
总结:
水星4530原厂uboot,刷特征码为4530的OP
TP 4310原厂uboot,刷特征码为4310的OP
TP 4300原厂uboot,刷特征码为4300的OP
刷机思路:
水星/TP4310/TP4300 <=====> OpenWRT(按uboot选择对应的OP)
水星<=>OpenWRT<=>TP 4310/4300(Firmware)<=>TP 4310/4300(uboot+Firmware)(TP原厂刷回水星原厂也一样)
PS:刷TP原厂仅供部分喜欢TP的用户,或更新uboot为TP后直接Web通刷OP官网固件,如只希望使用OpenWRT,可不更新uboot。
【水星/TP4310/TP4300】刷至Openwrt:
1.水星原版固件+原厂uboot(新机出厂配置):
直接原版web下使用OpenWRT的Factory固件For MW4530R即可升级(本帖提供下载供新手使用)
OpenWRT固件来源:目前水星4530未被OP官网支持,但TP4310/4300已支持,因此水星原厂uboot只需将OP官网下载的TP4310/4300固件修改下头部特征码,即可Web下刷至OP
已知问题:目前该固件也有部分bug,例如squashfs的Failsafe模式无效(按键不一致),nwan/multiwan等存在bug,但单wan口基本功能使用均正常,双频2.4G+5G,USB等均工作正常。另外AR8327N硬件特有的Hardware NAT目前OpenWRT也暂时不支持,已经有官网dev的ticket了,相信后续会逐步完善。
2.已刷OP,升级或更换OpenWRT :
方法1:4530R刷完上面的OpenWRT后,仍然无法直接Web下通刷OP官方的TP4310/4300固件(sysupgrude.bin),也需要按上面的方法修改特征码后在web下更换版本。
方法2:直接命令行下使用mtd命令强刷。即mtd -r write /tmp/xxx.bin firmware,可参考后面步骤的OP刷水星/TP4310/TP4300的操作方法。
方法3:参考后面步骤OP刷水星/TP4310/TP4300的操作方法,直接将水星4530R的uboot替换为TP4310/TP4300uboot,再刷回OP,即可直接Web下通刷官网所有factory及sysupgrade固件。
3.自行编译OP源码:
如需自行编译Openwrt固件,可参考论坛iyumen777兄弟的帖子,修改TP 4300特侦码为水星4530的方法(与WinHex修改方法类似):
https://www.right.com.cn/forum/thread-85038-1-1.html
PS: openwrt官网固件均不带uboot,可以随意刷机,顶多就会半砖,通过TTL接口就可以修复,无需jtag接口。但TP-Link官网提供的固件是包含uboot的,不能直接MTD命令强刷,需去掉uboot后在OP下刷机,附件提供下载!
OP下刷至TP4310/4300/水星4530原厂:
1.首先请按上面的步骤,将MW4530R刷至OpenWRT,有无web界面的openwrt均可,目的仅仅是跳过水星原厂固件uboot头部检测,在OP下更新TP原厂固件;
2.将去掉uboot头的TP官网4310/4300或水星4530原厂固件上传至openwrt的/tmp目录下,以下仅以TP4310来举例(本帖提供下载供新手使用) :
a.我是本机使用hfs(HTTP File Server)作为web服务器,然后共享文件http://192.168.1.100/tplink-wdr4310-no-uboot.bin
b.登陆openwrt的ssh,然后cd /tmp 切换至/tmp目录
c.下载tp官网固件至/tmp目录:wget http://192.168.1.100/tplink-wdr4310-no-uboot.bin
说明:以上方法仅供参考,目的仅仅是需要将固件传至/tmp目录下,你可以使用任意熟悉的方式,例如WinScp,SFTP等上传固件至/tmp目录下。
3.mtd命令跳过固件头部特征码检测,强刷TP4310/4300/水星官网不带uboot头的固件:mtd -r write /tmp/tplink-wdr4310-no-uboot.bin firmware
4.系统自动重启,然后有线,无线均可以up,正常情况下来说:路由器的ip会变成192.168.0.1,而无线的密码默认为机器底部的PIN码。
5.(可选)刷完后,水星4530与TP4310的wds与reset按键会刚好相反,即按住WDS键不放,会reset固件清空所有配置,此时ip会变为192.168.1.1,无线密码也将全部清空。
6.(更新uboot,可选)可再次在原厂固件的web升级下,将含uboot的Firmware再次更新一次,则uboot也随之更新。如不更新uboot,则需修改头部特征码或命令行mtd强刷。
注意:原厂固件去掉257*512字节的uboot后,第二个头部的特征码与uboot需匹配,,否则刷完可能无线、有线均无法up,只能TTL修复。 修改特征码仅适用于op官网固件,但不适用于原厂的固件。
已知问题:
更新为TP-Link官网固件后,水星前面板的WDS按键会变为reset,而后面板reset键则变为WDS了,刚好与TP-Link按键相反!
TP-Link 4310刷TP Link4300固件后,无线无法开启:请参考本帖170#楼,171#楼routerman及185#楼ericchak的帖子
水星MW4530R刷TP Link4300官方固件后,无线无法开启 :请参考本帖209#楼ghosthk的帖子
水星MW4530R刷TP Link4300官方固件后,USB无法使用: 请参考本帖210#楼ghosthk的帖子
TP官网固件在TTL接口下可用的默认用户名及密码(非登陆web的admin/admin):
root/5up
Admin/5up
以上均可在TTL下登陆,提示符为#
adm无密码直接登陆,提示符为$,权限较低
TTL接口及刷机方法:
连接速率:115200(8,n,1)
TTL线序请参考论坛网友链接:https://www.right.com.cn/forum/thread-85073-1-1.html无法进TTL的请参考论坛网友提供的方法:https://www.right.com.cn/forum/thread-98905-1-1.html (先不插ttl的gnd线,在上电后立即插上gnd,此时机器,正常启动,ttl输出正常)
进uboot方法:开机出现autoboot时在1秒内快速按下tpl三个字母,可printenv或help查看帮助,配合TFTP可更换Firmware或uboot。
进uboot后路由器默认ip为192.168.1.111,而tftp server(即连接路由器的pc)需要手工修改为192.168.1.100(默认ip可在uboot下setenv修改)
U-boot DB120
DRAM: 128 MB
id read 0x100000ff
flash size 8MB, sector count = 128
Flash: 8 MB
Using default environment
In: serial
Out: serial
Err: serial
Net: ag934x_enet_initialize...
No valid address in Flash. Using fixed address
wasp reset mask:c03300
WASP ----> S17 PHY *
: cfg1 0x7 cfg2 0x7114
eth0: ba:be:fa:ce:08:41
athrs17_reg_init: complete
eth0 up
eth0
Autobooting in 1 seconds
db12x> help
? - alias for 'help'
bootm - boot application image from memory
cp - memory copy
erase - erase FLASH memory
help - print online help
md - memory display
mm - memory modify (auto-incrementing)
mtest - simple RAM test
mw - memory write (fill)
nm - memory modify (constant address)
ping - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
progmac - Set ethernet MAC addresses
reset - Perform RESET of the CPU
setenv - set environment variables
tftpboot- boot image via network using TFTP protocol
version - print monitor version
db12x> printenv
bootargs=console=ttyS0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=ath-nor0:256k(u-boot),64k(u-boot-env),6336k(rootfs),1408k(uImage),64k(mib0),64k(ART)
bootcmd=bootm 0x9f020000
bootdelay=1
baudrate=115200
ethaddr=0xba:0xbe:0xfa:0xce:0x08:0x41
ipaddr=192.168.1.111
serverip=192.168.1.100
dir=
lu=tftp 0x80060000 ${dir}u-boot.bin&&erase 0x9f000000 +$filesize;cp.b $fileaddr 0x9f000000 $filesize
lf=tftp 0x80060000 ${dir}db12x${bc}-jffs2&&erase 0x9f050000 +0x630000;cp.b $fileaddr 0x9f050000 $filesize
lk=tftp 0x80060000 ${dir}vmlinux${bc}.lzma.uImage&&erase 0x9f680000 +$filesize;cp.b $fileaddr 0x9f680000 $filesize
stdin=serial
stdout=serial
stderr=serial
ethact=eth0
Environment size: 686/65532 bytes
db12x>
1.TTL下更新不带uboot的Firmware方法:
tftpboot 0x80000000 4530R.bin
erase 0x9f020000 +7c0000
cp.b 0x80000000 0x9f020000 0x7c0000
reset
2.TTL下更新uboot的方法
tftp 0x80000000 uboot.bin
erase 0x9f000000 +20000
cp.b 0x80000000 0x9f000000 0x20000
reset
部分链接:
OP官网TP4310 wiki:http://wiki.openwrt.org/toh/tp-link/tl-wdr4300
OP官网TP4300 wiki: http://wiki.openwrt.org/toh/tp-link/tl-wdr4310
OP论坛关于TP4310/4300讨论帖:https://forum.openwrt.org/viewtopic.php?id=36534
TPLink官网Release的WDR4300源码: http://www.tp-link.com/resources/gpl/GPL_2.6.31.tar.gz
请不要胡乱输入以及粘贴、复制等方式灌水
请尊重作者、并共同维护网站的正常阅读,否则账户将会被限制发帖、回帖,并且积分可能会被清零,站内短信以及阅读权限等都会受到影响,谢谢。
具体限制方式:https://www.right.com.cn/forum/thread-8307840-1-1.html
|