TP-Link TL-WR841N and OpenWRT


After the events of the other day, I decided to buy a more current router: as much as I love my Linksys WRT54G routers, they're slow, have almost zero storage space after OpenWRT is installed, and can only handle OpenWRT 10.03.1 (five years old - thus less secure and less capable).

Before you buy hardware for OpenWRT, always (ALWAYS) start at the OpenWrt Wiki >> Table of Hardware ( ). You may notice that there are a lot of TP-Link models. I hesitate to say that TP-Link has been "supportive" of open source: but they have adopted a common stance, which is that they aren't actively preventing the use of open source on their hardware.

I chose a TP-Link TL-WR841N from Canada Computers (they don't pay me, but I have an interest in keeping the best general computer hardware chain in Toronto/Canada alive) because it's currently on special for $25, supports the latest OpenWRT, and I don't need lots of memory or USB for a repeater. I was also motivated by the knowledge that my friend Daniel had succeeded in building a repeater with this model.

Keep in mind that manufacturers change the hardware without changing the model number or even, sometimes, the version number. So I went to Canada Computers armed with the knowledge that anything from version 1 through 9 should be okay. TP-Link is usually(?) good about labelling hardware changes, and providing that label on the outside of the box (you can see the exact version number before you buy). The one I got is a "version 9.1," so I wasn't totally sure if it would work.


Again, Use OpenWRT's TOH. From there, the TL-WR841N has its own page. That guided me to the Chaos Calmer release with the statement (about v9) "14.07 has slow wifi - upgrade to chaos calmer." I'd intended to use CC anyway (it's not gold yet, still at RC2, but apparently fairly stable). In the Installation section it points you to the correct folder for Barrier Breaker, but go instead to OpenWrt Downloads to "Chaos Calmer" to "ar71xx" and "generic" (the same path as in the BB pointer). There are a LOT of images. I was looking for the one in the form openwrt-15.05-rc2-ar71xx-generic-tl-wr841nd-v7 ... I was confused by there being two versions, one ending in -squashfs-factory.bin and the other in -squashfs-sysupgrade.bin. I chose the former, and went ahead without bothering to research ...

Daniel has complained about the (lack of) quality of the TP-Link firmware. I've never noticed, because from the time I plug the router in until the time I flash OpenWRT onto it is usually about five minutes. This is unwise: it's best to use the original firmware for some tests to prove the device is actually working before you wipe the firmware and void your warranty. Because once you've wiped it and wondered why the wireless or some port isn't working in OpenWRT, it's hard to check that it was working with the original firmware. So set it up in a really basic configuration and test it (do what I say, not what I do). Then you can return it for a replacement before ensuring that the store won't take it back with the OpenWRT install.

Plug your computer into one of the LAN ports (not the WAN port). The router comes with the classic login "admin" with password "admin" by default. I didn't note the details of locating the "Upgrade the Firmware" section of the interface: I think it was under "Advanced." As mentioned in the OpenWRT page about this router, the latest TP-Link firmware has rudimentary filename detection and if you try to upload "openwrt-15.05-rc2-ar71xx-generic-tl-wr841nd-v7-squashfs-factory.bin" it tells you you still need to give it a filename to upload. So you have to change the openwrt payload to a name that looks like TP-Link firmware: the OpenWRT page suggested "wr841nv9_wr841ndv9_en_3_16_9_up(150310).bin" which worked fine for me. From there it was clear sailing: the router flashed itself and OpenWRT Chaos Calmer is installed.