OpenWrt 增加 TL-WR941N 的支持

在我通过读带有符号的反汇编代码,写了TL-WR941N 固件 fixsum 工具后,通过TL-WR941N的管理页面上传修改后的固件或者第三方固件成为可能。我最初的目的是想让 dd-wrt 开发者给 dd-wrt 增加对 TL-WR941N 的支持,但是 dd-wrt 的开发者对 TL-WR941N 的兴趣并不大,在 dd-wrt 上迟迟没有动作。

2月19日,TP-Link 发布了新的 GPL 源代码,其中包括了 u-boot 源代码。OpenWrt 的开发者 jusohg 之后就利用 fixsum 和TP-Link 发布出来的源代码完成了对 WR941N 的支持。今天我测试了 dev snapshot build,局域网、无线都能正常工作了(我使用的是 WPA2 EAP-TLS)。相信不久以后,正式版本就能出来了。

TL-WR941N 使用了一个修改过的 u-boot,在最初发布的源代码中并不包括 u-boot 源代码。虽然我的 fixsum 能对头部做必要的处理,但使用其他的内核启动时,总是会跳出内核启动步骤,返回到 u-boot 提示符,没有任何有用的提示。我一直以为是 u-boot 对内核做了 checksum 检查(因为在头部还有另外一个没有用到的 checksum),但在 u-boot 的二进制映像中,并没有找到相关的痕迹。今天 jusohg 告诉我是因为 kernel entry point  需要修改,真是够简单的问题。头部中另外一个 checksum 是干什么用的,还是一个未解的谜。

OpenWrt 的 Web 界面 LuCI 没有中文翻译,我有空的话(做梦)会去翻译一下。

更新:目前的 ath9k 驱动有问题,我测试的时候,在没有 rx 的情况下,tx 丢包,所以还不能算正常工作。

标签: ,

33 条评论 发表在“OpenWrt 增加 TL-WR941N 的支持”上

  1. kunc 说:

    强烈支持!!

  2. KesunJi 说:

    找到几颗 MX25L12805DMI-20G Lark要的话我去翻出来给你。

  3. lark 说:

    8M SPI flash 我有,多谢你的热心 :)
    4M 有点紧张,装了 luci-admin-full 以后,tcpdump 就装不上了。如果能支持 USB,4M 就不是问题了,可以插个 U 盘。

  4. xtcatv 说:

    我们强烈期待站长到时推出高速稳定版固件出来,在此感谢了!

  5. dickgary 说:

    我也看中了这款路由。感觉性价比挺好的,遗憾是国外的第三方固件制作者只发展国外品牌(搞得这些配置一般路由在国外炒得老鬼),支持博主的尝试,希望国产路由也能有高性能固件

    作为一个普通用户,实在帮不上忙了只能精神上支持了,哈哈

    还有些问题想请教一下:
    1.941N如果要用OpenWrt这些第三方固件一定要自己改Flash rom吗?(偶不会啊啊5555..)
    2.tp最近发了新的Firmware,增加QoS等功能,而且性能提升了不少,博主有试过不?好像蛮吸引的,测试连接:http://www.hkepc.com/forum/viewthread.php?tid=1133186&extra=page%3D1

    期待能够有机会出来强悍的固件,最好支持中文,o(∩_∩)o…哈哈好贪心哦

    • lark 说:

      941N 装 OpenWrt 不需要改 flash,目前的空间足够安装 LuCI 图形管理界面了,但想装其它的东西就比较难了。官方固件对于普通人使用来说,是足够了;目前官方固件很稳定,性能也足够好,而 OpenWrt 因为 ath9k 驱动的关系,还不能正常使用。
      我个人就是把路由器当 AP 用,家里有服务器(你正在访问的这个就是放在家里),附加功能对于我一点意义都没有 :) 搞这个是主要是出于兴趣。目前正在抄图,准备把 USB 的供电电路反推出来。有了 USB,OpenWrt 就很有意义了。

      • dickgary 说:

        好久没来了,过来打听下:941N的Openwrt的固件有了吗?(偶英语太烂了….)
        感觉TP的QoS实在有点烂,想试试第三方的

        另外,博主推出USB线路打算怎么用? 脱机下载?打印服务器?供电怕不够哦?

        • lark 说:

          现在 941N 的OpenWRT 固件还不好用,主要问题是 ath9k 驱动丢包。
          USB 口弄好的话,主要应用应该是外接 U 盘和做打印服务器,前者电流要求不大,后者不需要 USB 供电。

  6. Lizard 说:

    lark你好。这两天朋友送了台水星牌的路由,说是tp的下属厂家并与其941N一致的硬件,没事搜了全世界找开源固件便找到你这里了。我现在有个疑问就是,若果此水星可以刷上941的官方固件,则届时openWRT针对941N的正式版本出来后我是否可直接刷上去。或者是说,在我当前硬件情况与941一致的情况就可以直接写入openWRT固件了呢。
    谢过先。

  7. smirnoff 说:

    加油啊!

    TP-link 在澳洲的用户似乎很多, 站长不妨推一推.

    TP-link 在北美连大卖场的门都没进, 一般人也没机会见到.
    Dlink 和 TrendNet 已经算很便宜很滥的货了, TP-link 就更不用说

  8. linux_pro 说:

    http://groups.google.com/group/mi424_openwrt?hl=zh-CN&pli=1

    我也很感兴趣 OpenWRT
    但是我没有玩 TP-LINK的东西, atheros的硬件不是很简单.

    现在 ATHEROS 5416已经能正常工作,但是速度还是上不到 300M的样子.

    madwifi驱动可以驱动,但是只是54M.

    有空聊下, 我QQ 四1八一441O

  9. chaircat 说:

    现在最新的源码里面有u-boot了~~

  10. cookieliu 说:

    我刷了openwrt-ar71xx-tl-wr941ndv2-squashfs.uni ,发现无法开启LUCI web界面,于是想刷回原厂固件,我该怎么做呢?TFTP似乎不行,开启不了TFTPD。Web界面现在进入不了。看了您在国外论坛的留言,希望得到您的帮助

    • lark 说:

      串口你弄好了吗?不弄好串口的话,也可以远程登录进去用 dd 刷,但是偏移量要正确,否则损坏 u-boot 就变砖了。如果有串口,操作相对安全。

  11. cookieliu 说:

    您好,今天买好TTL线.我的板子是rev 1.1,serial按照您说,p1=rx p2=tx,p3=gnd,p4=VCC,连接上后,secureCRT没有收到信息。您说要短路两个设备,是什么呀,怎么操作呢?还有,我插串口线以后,插电源,指示灯都不亮了,难道烧掉了其他线路?但是如果把串口插上,灯还可以亮,不知道怎么回事情,谢谢您的帮助

    • lark 说:

      原电路串口 TTL 电路上 RX 的 RC 滤波没有焊上,所以是不通的。RC 滤波可以省掉,所以短接就可以。请参考我在论坛上的帖子。理论上插错了位置或者短路是可以引起串口烧坏的,但芯片内部还有保护电路,烧坏串口别的功能应该还是正常的。

  12. cookieliu 说:

    您好,最近不在?实在没有明确,打搅您,是短路R356和R355吗(我的板子版本是1.1)?如何操作呢?有图片吗?急需您的帮助

    • lark 说:

      时间很长了,我也记不太清楚,请参考在相关论坛上的帖子(我这里有链接过去)。帖子都写得很清楚的。

      • cookieliu 说:

        Lark studied your photos and says with confidence: P1 is RX, P2 is TX. R356 is all you should need to bridge.
        这是我在论坛上找到的解决方案,一个BBB老外网友就是按照你的研究成功进入U-boot。如果按照您的这个办法,是不是就是把R356的两个小焊点连接起来?还是R356和其他零件(例如R355)短路?

  13. zeex 说:

    现在941n v4出来了,支持桥接了,高手能修改刷到v2版本上吗?

    • lark 说:

      我手上没有 V4 硬件,无法判断两个硬件的区别。两个版本也许采用了不同的 flash 或 switch chip,所以不能保证 V4 的能用于 V2。

  14. rek 说:

    http://downloads.openwrt.org/snapshots/trunk/ar71xx/
    在这个上面看到:02-Jan-2010 19:34 这个时间出了:
    openwrt-ar71xx-tl-wr941nd-v2-squashfs-universal.bin
    不知道稳定了没有,哪位大侠用过呢,都有些什么功能的?
    多谢指教

  15. real 说:

    我不知道博主什么时候会出现,现在我刷OpenWRT还原原厂固件的时候把系统刷爆了,但是用串口连接进去发现UBOOT启动后没有中断启动的按键提示,2008年的Uboot是可以使用TP来中断,但是我的是2009的,没有任何提示,对于源代码完全不在行,想问问博主在源代码中启动中断的按键实际上是什么????

  16. gkendiy 说:

    博主usb改造好没?

    • lark 说:

      没精力弄了。我拿到了一个 atheros 的 USB 电路的参考设计,另外又让一个朋友帮忙抄了电路板;但很早我就没再捣腾这个了。对于普通用户,意义不是很大,自己悍 SMT 元件是很困难的。

留下回复