Saturday 23 June 2012

WiFi bargain hunting

I recently had occasion to buy a TP-Link TL-WR702N from ebay.
The transaction itself went smoothly enough, but when I tried to use the thing, that's when the problems started.

The box it came in had a lot of Chinese writing on it - I could still see the product name, the company name, and TP-LINK in English.

I was slightly concerned when the documentation included were all in Chinese - I've upgraded the firmware for routers before, and I could download the English manuals from TP-Links web site, so I figured I could "upgrade" it with an English firmware file.

That's where the fun began.

To help you, dear reader, to appreciate the following content, let's talk probabilities. Imagine that each customer, having received the router, considers it 100% likely that they can use the router. For each hurdle some will fail.

Chance for success: 1.0

TP-Links own documentation mentioned that uploading firmware required selecting a ".bin" file from the routers web interface - a file upload - simple enough, I thought - that's how most routers do it.

Unfortunately I couldn't access the routers web interface, from Debian Linux or Windows 7 (I added Debian and Ubuntu to my Samsung laptop).

By chance I happened across another blog that told me how - by using a network cable and setting the ethernet port on my PC to 192.168.1.2.

That hurdle would probably have caused 90% of customers to fail, or 1 in 10 to pass.

Chance for success: 0.1


Then I discovered that the web pages were in Chinese too.

It took a bit of trial and error network wizardry to be able to connect to the internet using WiFi and to the router via the ethernet cable, so that I could translate the web pages to English with Google translate.

That's where the fun really began.

The web pages the router served told me that I had to set up a TFTP server to provide the firmware upgrade.

Since setting up a TFTP server to deliver a file isn't a trivial undertaking, and since the TFTP server configuration varies widely depending on who/what you're serving files to, that's another severe hurdle, causing 90% of customers to fail at this step.

Chance for success: 0.01


The (translated) router web page indicated that there were 5 ways to use the router - the "repeater" mode seemed the best.

In repeater mode, the router acts as a repeater for your "main" router, plus you can connect equipment to the same network using it and and an ethernet cable.

Unfortunately, I couldn't get it to work.

Chance for success: 0.001


It was only after deciding to send it back, telling others about the problems I had, and the delay involved in trying to raise this problem with ebay, trying to cancel the transaction in Paypal (causing a server error, no less) that I tried to set up the router as a client - the way wifi dongles work, but with a network cable instead of a USB port.

It worked, as long as you remembered to set the IP address of whatever device you connect to it.

Chance for success: 0.0001


When I contacted the seller about this I was told that I didn't need a TFTP server. Incorrect.

When I contacted TP-Link about this, I was told that I could only upgrade/convert the router to English if its web pages showed traditional Chinese - routers showing simplified Chinese couldn't be "converted" to English.

Guess which one I had.

I even managed to upload updated (Chinese) firmware to it, using tftpd-hpa-5.2-2 in Debian by running the server in the same directory as the firmware upgrade.
Here's the command you need to run as root to serve that file (bye bye Windows users)
in.tftpd -4 -L -v -s --permissive $PWD
If this command completes straight away it means that it couldn't start (no error message).

You have to stop the running tftpd with

        /etc/init.d/tftpd-hpa stop

first.

Chance for success: 0.000001


The upgraded firmware still needs a TFTP server to work, and no, it wouldn't accept the English firmware file from TP-Links web site.

I considered that a lot of customers (almost including myself) might find that the time and trouble required to enjoy this product may be more than most are willing to commit, and that ebay should take some steps to prevent this happening to other unsuspecting English speaking users, maybe by getting someone fluent in Chinese to talk to TP-Link about this.

They recommended I follow the steps they gave me to get the sellers telephone number to try speaking to him, so that we might come to some amicable arrangement.

Chance for success: 0.0000001

The sweetest thing about all this is that if I'd bought a TL-WR703N I could have just installed OpenWrt!

Some disorganized notes

There's no point trying to lay these out - I'd need to know all the possible failure routes.

================================================

Configuration changes sometimes don't take effect right away.

Try (as root) "ip neigh show", and "ip route list cache"

You can also try to see if "ip route flush cache" and "ip neigh flush dev eth0" can unwedge the system.

After a flush, "ip neigh show" and "ip route list cache" should return very few, if any, entries.

Web pages translated
See my separate blog post.

Error codes translated

错误代码:18000
升级不成功,请检查您是否开启TFTP服务器以及上传文件是否在相应目录下。
<
Error code: 18000
Upgrade is unsuccessful, please check if you open the TFTP server and upload files in the appropriate directory.
>

错误代码:18001
上传文件长度错误,请检查文件并重试。
<
Error code: 18001
Upload the file length error, please check the file and try again.
>
错误代码:18005
上传的文件版本与机型不符。
<
Error code: 18005
Version of the uploaded file does not match with the models.
>

14 comments:

  1. Hi,

    Same problem here.

    Did you have a chance to make the firmware upgrade work ?

    Thierry

    ReplyDelete
  2. I did manage to upgrade the firmware, but the trouble was that the upgrade page is in Chinese and uses frames.

    As Google+ can't (as yet) translate frames I had to open another window with Google translate, and copy/paste the web page there for translation.

    I used wifi to access the net and a wired connection for the tp-link device but I had to hard-code their ip addresses in /etc/network/interfaces

    I'll update the article with some disorganized notes I made that might help.

    ReplyDelete
  3. Hi Phil,

    I went through similar grief with the 702. Before ordering, I had read the available English documentation, so I knew that it wasn't completely straightforward to connect to the router's interface. Nevertheless, I still failed to notice the unexpected IP address 192.168.1.123 on the device's label!

    Did you, as I did, purchase from abeyerr? The eBay listing said "This device has Chinese User Interface, however, we will provide an English version of setup", so before ordering, I had checked the availability of English firmware and when the device arrived was relieved to see that its label stated "Ver: 1.0".

    Even though the router would respond to HTTP requests from my PC, its LED flashed for a few seconds after connecting the Ethernet cable, but then remained on. The English QIG says that a steady LED means "It’s powered on but the LAN/WAN port is not connected", so I thought perhaps the 702 somehow couldn't see the TFTP server on my PC.

    However, http://wiki.openwrt.org/toh/tp-link/tl-wr703n implies that there may be hardware as well as firmware differences between the Chinese and English market versions of the 702, which probably accounts for the difficulty in installing the English firmware.

    I can't really blame eBay or TP-LINK for any of this, but I have emailed abeyerr asking for the missing "English version of setup" and UK power adapter or plug adapter promised in the listing.

    Did your supplier give you proper instructions for upgrading the firmware, or did you have to struggle to a successful conclusion yourself?

    If can't get satisfaction from abeyerr, eBay or PayPal, I'll want to try configuring the router in Chinese, so I would appreciate any info about hard-coding the IP addresses in /etc/network/interfaces to get Internet via WiFi and the router via the Ethernet cable.

    Alan

    ReplyDelete
    Replies
    1. You need to download the user guide - the datasheet pdf is too short.

      You need to select "client mode" and reserve an ip address for your pc in your main wireless routers configuration page.

      Use the same subnet as your main router - I use 192.168.0.100 for the wr702n so I can ping it and the "main" router - you may not need to do this - I wouldn't describe myself as a networking expert.

      DCHP doesn't work with this so set your ip address manually.

      My network configuration is controlled by network manager - you can manually set the ip address there too.

      I bought mine from betterjohnny.

      The seller wasn't aware of the tftp configuration, presumably because they never needed to try it, being fluent in Chinese.

      That missing power adapter wasn't promised to me, so that alone would give you every right to return it and get a wr703n - it has 4mb flash space compared to the wr702's 2mb which openwrt says isn't enough for them.

      It works fine now and is very handy but if I'd known how much hassle was involved and if I'd known about the wr703n I would have bought that,

      The (yet another) funny thing is, I already bought a D-Link /Ralink class N adapter which works with my wr740n wireless router so I could've avoided buying it altogether.

      It is handy if you just want to hook something up real quick without the need to do wireless settings + WPA passphrase, etc.

      Happy trails.

      Delete
  4. Thanks for such a prompt reply, Philip. Windows thinks that I am doomed to failure with multiple default gateways. My router/modem and the 702N already shared the same subnet, but reserving an IP address for my PC and setting its IP address manually still didn't give me connection with both simultaneously. Perhaps I should have done the same for the 702N. I tried setting up separate subnets, but that didn't help and I had to factory reset my router/modem to recover!

    betterjohnny should have been aware of the tftp configuration, because even Chinese customers may need to upgrade their firmware.

    Although it would be a wonderful resource for hundreds of other purchasers of Chinese boxes, I'd hate to ask you to give up what little remains of your Sunday to write a definitive guide to installing the English firmware. Nevertheless, could you give us a few clues as to how you did it, so that I can evaluate anything my seller tells me and decide whether I want to wrestle with the Chinese interface?

    If the Chinese 702N's default mode is AP like the English version, I need to get it into Router mode for my application.

    Thanks again,

    Alan

    ReplyDelete
    Replies
    1. I've just realised that perhaps your "disorganised notes" had been your response to thibugs' earlier enquiry.

      All the text from the interface looked very familiar from my explorations of it, but because they ended with a series of error messages, I didn't get a feel for where you might have achieved your breakthrough with the English firmware.

      Delete
  5. Forget about what little remains of today - I spent man-days on this.

    I use Debian - the "HPA's tftp server" package - tftpd-hpa.

    Look at "man tftpd" for the details of the arguments.

    The parts inside the "{}"'s are for you to fill in, dropping the {} delimiters.

    I downloaded the firmware upgrade from tplinks website and put in a copy into a directory I created - say ~/tftpd.

    sudo /usr/sbin/in.tftpd --permissive --secure --foreground --ipv4 --create --user {your-user-name} ~/tftpd

    To test it (and because its also useful) use this to backup the wr702n's current configuration.

    The reason I said to make a copy is in case you specify the firmware upgrade's file name accidentally - I used "config.bin".

    Tplink offer an article on upgrading your firmware but since it doesn't mention tftp, it's usefulness is marginal - http://www.tp-link.com/en/article/?faqid=296
    It does at least tell you that you have to unpack the upgrade file to get at the file to serve up via tftp - wr702nv1-cn-up.bin in my case.

    You CANT upgrade to the English version - see "Chance for success: 0.000001" above.

    You could easily spend a week of evenings at this and still not get it working.
    Sheldons previous room-mate's advice is apt here.

    Walk away, dude, walk away.

    You're missing the power adapter - get your money back.

    ReplyDelete
  6. This comment has been removed by the author.

    ReplyDelete
  7. Thanks for the clarification. I now realise that your comment of the 9th related to the upgrade of the Chinese firmware, not a breakthrough with the English. We love to learn and it's sometimes difficult to walk away. Good advice nevertheless!

    I got a steer on using TFTP from TP-LINK from http://www.tp-link.com/en/article/?faqid=136, although I know see it was tagged for "wired routers"!

    Now that I have put mine into Router mode, I've got wired Internet from my router and wireless connection with the 702N, so I can more easily manage the Chinese firmware in IE with Translate with Bing.

    ReplyDelete
  8. thnx a lot for your info, I had the same experience. I posted a link to this site on the product page of dx.com
    If I had know before....

    ReplyDelete
  9. Hi, I had the same problem, however purchased from bossknow on ebay.

    ***This device has Chinese User Interface, however, we will provide an English version of setup. If in need, please feel free to contact us***

    I did try to upgrade to the firmware version i download from tp-link (wr702nv1-en-up.bin), and installed TFTPD32 on my laptop. Had to disable firewall in windows 8 though
    But i get the error:
    Error code: 18005
    Upload the file version does not match with the models.

    So i am wondering if maybe its just a version number that needs to be changed in the .bin

    Do you have a link to the latest chinese version of the firmware ?
    I might be able to see what the header is in the file and modify it to install the firmware.

    ReplyDelete
    Replies
    1. You can get the Chinese version from the same site.

      I took that error code to mean that you can't upgrade from Chinese firmware to English - I got the same error.

      Find a way to have Google Translate view the routers web page, set it up, and forget it.

      Delete
  10. I bought a WR703N from a chinese Ebay seller, but what I got these days was a WR702N. My simply goal was to get my satelite reciver into my WLan, so it seemed enough. The ebay-guy offered me a compensation of 3$ to give him still a good rating. Then I found out that there is no way to get it to a English interface. But with the help of http://www.tp-link.com/en/article/?id=395, where it is described step by step how to configure a WR702N as a client, I saw some hope. After 10 mins and some google translations I'm able to write this using it as a client. So if you just want to use it as a client, success ~1.0 if you are used to configure IT stuff. For other purposes the chances are really low to get a satisfying sollution. For that I would have invited my chinese co-worker over for some beer and let him do the stuff.

    ReplyDelete
    Replies
    1. Glad to hear it worked out.

      I had to change the wifi password recently, tried reading my own documentation, ended up restoring it to factory defaults, and now it's just sitting there, gloating.

      I guess the updated firmware has some interface differences to the factory-installed version.

      I take it you didn't try to upgrade the firmware.
      Don't.
      As long as it's working, leave it be.
      For the love of all that is holy and good, leave it be.

      Delete