User Tools

Site Tools


toh:tp-link:tl-wr841nd

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
toh:tp-link:tl-wr841nd [2013/10/30 04:46]
denix
toh:tp-link:tl-wr841nd [2015/03/09 14:48] (current)
GTRTFM v1 and v 1.5 have same latest fw
Line 6: Line 6:
   * 1 Port 100/10 Wan Interface   * 1 Port 100/10 Wan Interface
   * 4 MB Flash   * 4 MB Flash
 +  * 32 MB Ram
 +  * QSS Button
 +  * Reset Button
  
-**''​Note1''​**:​ The TL-WR841N is identical except that the antennas are not detachable. TP-Link naming scheme is, that devices ending in a D have **d**etachable antennas.\\ +**''​Note1''​**:​ The [[.:​tl-wr841n|TL-WR841N]] is identical except that the antennas are not detachable. TP-Link naming scheme is, that devices ending in a D have **d**etachable antennas.\\ 
-**''​Note2:''​** v5.4, v5.2 etc. are all v5. The only difference is the firmware version the come with. +**''​Note2:''​** v5.4, v5.2 etc. are all v5, similarly for v7, v8, v9. The only difference is the firmware version the come with. v1 and 1.5 have same latest fw
  
 ===== Clones ===== ===== Clones =====
-Known clones of this device TP-Link TL-WR841ND v8:  Mercury MW300R v3 and Fast FW300R v3. + 
 +Known clones of this device
 +  * TP-Link TL-WR841ND ​v7: Rosewill Wireless N Router RNX-N300RT -- see [[..:​rosewill/​rnx-n300rt]] 
 +  * TP-Link TL-WR841N ​v8: ThinkPenguin TPE-NWIFIROUTER2 aka Rosewill RNX-N300RT v2 -- see [[..:​rosewill/​rnx-n300rt]] 
 +  * TP-Link TL-WR841ND v8: Mercury MW300R v3 and Fast FW300R v3. 
  
 ===== Supported Versions ===== ===== Supported Versions =====
Line 20: Line 27:
   * Sometimes, there is Version x. for PRC only and Version x. for world-wide sale. If there is a special chinese-Version with the same major-number,​ then that version has usually significantly different hardware   * Sometimes, there is Version x. for PRC only and Version x. for world-wide sale. If there is a special chinese-Version with the same major-number,​ then that version has usually significantly different hardware
  
-^ Version/​Model ^ Launch Date ^ OpenWrt ​Version ​Supported ^ Model Specific Notes ^ +^ Version/​Model ^ Launch Date ^ OpenWrt ​Versions ​Supported ​^ Download latest stable version ​^ Model Specific Notes ^ 
-v3 |  10.03  | [[https://forum.openwrt.org/​viewtopic.php?​id=21425|Report]] | +v1.x 2007 |  10.03(.01) & 12.09 & 14.07  ​| ​ [[http://downloads.openwrt.org/​barrier_breaker/​14.07/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841nd-v1.5-squashfs-factory.bin|14.07]] ​ | [[http://​dev.openwrt.org/​changeset/​18893|Added model support]] | 
-v5 |  10.03  | [[https://​forum.openwrt.org/​viewtopic.php?​pid=119163#​p119163|Report]] | +v3.x 2008 |  10.03(.01) & 12.09 & 14.07  |  [[http://​downloads.openwrt.org/​barrier_breaker/​14.07/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841nd-v3-squashfs-factory.bin|14.07]] ​ ​|[[https://​forum.openwrt.org/​viewtopic.php?​id=21425|Report]] | 
-| v5 | |  10.03.1-rc4  ​| ​Works pretty well | +| v5.x 2010 |  10.03(.01) & 12.09 & 14.07  ​| ​ ​[[http://​downloads.openwrt.org/​barrier_breaker/​14.07/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841nd-v5-squashfs-factory.bin|14.07]]  |[[https://​forum.openwrt.org/​viewtopic.php?​pid=119163#​p119163|Report]] ​
-v5.x | -  12.09  ​| ​fully working with 12.09 +| v7.2010 |  12.09 & 14.07  ​| ​ ​[[http://​downloads.openwrt.org/​barrier_breaker/​14.07/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841nd-v7-squashfs-factory.bin|14.07]]  |UFO shape -- Fully working with 12.09 | 
-| v7.|  12.09  | UFO shape -- Fully working with 12.09 | +| v8.x (chinese version) | - |  Trunk r29631(modified) ​ |  ? ​ | Only 2 MiB flash, ​need hardware mod | 
-v7.- |  12.09  | UFO shape -- Fully working with 12.09 | +| v8.x (international) | 2012-Aug ​|  12.09 & 14.07  ​|  [[http://​downloads.openwrt.org/​barrier_breaker/14.07/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-factory.bin|14.07]]  | [[.:​tl-db120|DB120]] ​- [[https://​dev.openwrt.org/​ticket/​15448|IPv6 bug]]  | 
-| v8.x (chinese version) | - |  Trunk r29631(modified) ​ | need hardware mod | +| v9 | 2014 |  14.07  |  [[http://​downloads.openwrt.org/​barrier_breaker/​14.07/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841n-v9-squashfs-factory.bin|14.07]] ​ | Working with Barrier Breaker 14.07, :!: slower wifi, first version supported is [[http://​dev.openwrt.org/​changeset/​40695|r40695]] (Wifi tx power setting fixed), [[http://​downloads.openwrt.org/​snapshots/​trunk/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841n-v9-squashfs-factory.bin|latest Chaos Calmer]] fully works |
-| v8.x (Intl) | 2012-Aug |  [[http://​downloads.openwrt.org/​attitude_adjustment/12.09/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-factory.bin|12.09]]  | [[.:​tl-db120|DB120]] |+
  
 ===== Hardware ===== ===== Hardware =====
-^ Version ^ v3 ^ v5 ^ v7.1 v7.2 v8.0 +^ Version ^ v3 ^ v5 ^ v7 ^ v8 v9 
-| **[[wp>​Instruction set]]:** | [[wp>​MIPS Architecture|MIPS]] ||||| +| **[[wp>​Instruction set]]:** | [[wp>​MIPS Architecture|MIPS]] ​|||||| 
-| **Vendor:** | Atheros ||||| +| **Vendor:** | Atheros ​|||||| 
-| **[[doc:​techref:​Bootloader]]:​** | [[doc:​techref:​Bootloader:​UBoot]] ||||| +| **[[doc:​techref:​Bootloader]]:​** | [[doc:​techref:​Bootloader:​UBoot]] ​|||||| 
-| **[[doc:​hardware:​soc|System-On-Chip]]:​** | AR9130 | AR7240 rev 2 | AR7241 rev 1 | AR7241-AH1A | AR9341 | +| **[[doc:​hardware:​soc|System-On-Chip]]:​** | AR9130 | AR7240 rev 2 | AR7241-AH1A | AR9341 ​| QCA9533-AL3A ​
-| **[[doc:​hardware:​CPU]] Frq:​** ​| 400 Mhz | 400 Mhz | 400 Mhz | 400 Mhz | 535 Mhz | +| **[[doc:​hardware:​CPU]] Frq:** | 400 Mhz | 400 Mhz | 400 Mhz | 535 Mhz | 550 MHz 
-| **BogoMIPS:​** | 265.42 | 266.24 ​| 265.42 ​| 265.42 | 266.64 | +| **BogoMIPS:​** | 265.42 | 266.24 | 265.42 | 266.64 ​| 366.18 ​
-| **Flash-Chip:​** | ? | ? | cFeon F32-100HIP (?) | FL032PIF |+| **Flash-Chip:​** | ST 25P32V6P ​Hynix  ​| cFeon F32-100HIP/SPANSION FL032PIF ​(?) | Spansion FL032PIF | Spansion ​FL032PIF |
 | **Flash size:** | 4 MiB | 4 MiB | 4 MiB | 4 MiB | 4 MiB | | **Flash size:** | 4 MiB | 4 MiB | 4 MiB | 4 MiB | 4 MiB |
-| **RAM-Chip:​** | ? | ? | Zentel A3S56D40ETP-G5 | |+| **RAM-Chip:​** | Hynix HY5DU561622FTP-5 ​Hynix HY5DU561622FTP-5 ​| Zentel A3S56D40ETP-G5 | ESMT M13S2561616A-5T | Winbond W9425G6JH-5 ​|
 | **RAM size:** | 32 MiB | 32 MiB | 32 MiB | 32 MiB | 32 MiB | | **RAM size:** | 32 MiB | 32 MiB | 32 MiB | 32 MiB | 32 MiB |
-| **Wireless ​No1:** | Atheros AR9100 Rev:7 | Atheros AR9280 Rev:2 | Atheros AR9287 Rev2, 2.4GHz, 802.11bgn ​| Atheros AR9287-BL1A 2.4ghz 802.11bgn | AR9341 | +| **Wireless:​** | Atheros AR9100 Rev:7 | Atheros AR9280 Rev:2 | Atheros AR9287-BL1A 2.4ghz 802.11bgn | AR9341 | QCA9533-AL3A ​
-| **Wireless No2:** | none ||||+| **[[doc:​hardware:​Switch]]:​** | Marvell 88E6060 ​| AR7240 built-in switch | AR7240/​AR9330 built-in switch | AR9341 built-in switch ​| QCA9533-AL3A build-in ​
-| **[[doc:​hardware:​Switch]]:​** | | AR7240 built-in switch | AR7240/​AR9330 built-in switch ​| ? | AR9341 built-in switch | +| **USB:** | ? | [[#​usb.1.1.port|Yes]] | [[#​usb.2.0.port.on.v7| ​Yes ]] | [[http://​forum.openwrt.org/​viewtopic.php?id=37010|In progress]] | [[http://​wikidevi.com/​wiki/​Qualcomm_Atheros|No is SoC]] 
-| **USB:** | ? | [[#​usb.1.1.port|Unpopulated]] | [[#​usb.2.0.port.on.v7| ​unpopulated ​]] | ? | +| **[[doc:​hardware:​port.serial|Serial]]:​** | [[#serial_console|Yes]] | [[#serial_console|Yes]] | [[#serial_console|Yes]] | [[#serial_console|Yes]] | [[#serial_console|Remove R26]] | 
-| **[[doc:​hardware:​port.serial|Serial]]:​** | [[#Serial|Yes]] | [[#Serial|Yes]] | [[#Serial|Yes]] | [[#Serial|Yes]] | [[#Serial|Yes]] | +| **[[doc:​hardware:​port.jtag|JTAG]]:​** | Yes | ? | ? | [[#JTAG|Yes]] | ? |
-| **[[doc:​hardware:​port.jtag|JTAG]]:​** | ? | ? | ? | ? | [[#JTAGlYes]] | +
 ===== Installation ===== ===== Installation =====
  
-Flash the 12.09 squashfs images only, the jffs images will brick the router (not enough space on 4Mb flash) ([[https://​dev.openwrt.org/​ticket/​13659|bug report]]). ​+Flash the squashfs images only, the jffs images will brick the router (not enough space on 4Mb flash) ([[https://​dev.openwrt.org/​ticket/​13659|bug report]]). ​
  
-==== Installing ​OpenWrt on TP-Link TL-WR841ND V5: ==== +==== Installing ​via web interface: ==== 
-  - Download ​V5 image: http://​downloads.openwrt.org/​attitude_adjustment/12.09/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841nd-v5-squashfs-factory.bin+  - Download image for your version: http://​downloads.openwrt.org/​barrier_breaker/14.07/​ar71xx/​generic/​
   - Log in to router web interface and select the firmware image you just uploaded as an update   - Log in to router web interface and select the firmware image you just uploaded as an update
   - Sit and wait while it flashes. It will reboot and be accessible at 192.168.1.1.   - Sit and wait while it flashes. It will reboot and be accessible at 192.168.1.1.
 +The Barrier Breaker image already includes a GUI, you do not have to install it manually.
  
-==== Installing OpenWrt on TP-Link TL-WR841ND V7.x: ==== 
-  - Download V7 image: http://​downloads.openwrt.org/​attitude_adjustment/​12.09/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841nd-v7-squashfs-factory.bin 
-  - Log in to router web interface and select the firmware image you just uploaded as an update 
-  - Sit and wait while it flashes. It will reboot and be accessible at 192.168.1.1. ​   
-:!:  Warning! in some cases after reboot you don't have web interface (GUI), only telnet and ssh access. You can install GUI, for details see: [[doc/​howto/​luci.essentials]],​ but before install LuCI (GUI) you need to configure your router to have access to internet, for configuration see: [[doc/​howto/​internet.connection]] 
- 
-==== Installing OpenWrt on TP-Link TL-WR841ND V8.x: ==== 
-  - Download V8 image from: http://​downloads.openwrt.org/​attitude_adjustment/​12.09/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-factory.bin 
-  - Log in to router web interface http://​192.168.0.1/​ and select the firmware image you just uploaded as an update 
-  - Sit and wait while it flashes. It will reboot and be accessible at 192.168.1.1. ​   
 :!:  Warning! in some cases after reboot you don't have web interface (GUI), only telnet and ssh access. You can install GUI, for details see: [[doc/​howto/​luci.essentials]],​ but before install LuCI (GUI) you need to configure your router to have access to internet, for configuration see: [[doc/​howto/​internet.connection]] :!:  Warning! in some cases after reboot you don't have web interface (GUI), only telnet and ssh access. You can install GUI, for details see: [[doc/​howto/​luci.essentials]],​ but before install LuCI (GUI) you need to configure your router to have access to internet, for configuration see: [[doc/​howto/​internet.connection]]
  
 ==== TFTP install ==== ==== TFTP install ====
  
-Beware that this installation method needs a TTL level serial console and a working TFTP server and should not be attempted unless you have experience with this sort of thing or are eager to learn :)+[[#​v9_without_serial|For v9 is much easier]] 
 + 
 +Beware that this installation method needs a [[http://​wiki.openwrt.org/​doc/​hardware/​port.serial|TTL level serial console]] usb to TTL like DKU-5 data cable  or RS232-TTL level shifter like this: {{:​media:​max3232.gif?​500}}\\ ​and [[http://​wiki.openwrt.org/​doc/​howto/​generic.flashing.tftp|a working TFTP server]] and should not be attempted unless you have experience with this sort of thing or are eager to learn.
  
 This is taken more or less verbatim from https://​forum.openwrt.org/​viewtopic.php?​id=24203,​ thanks to dl3daz. This is taken more or less verbatim from https://​forum.openwrt.org/​viewtopic.php?​id=24203,​ thanks to dl3daz.
  
-  - Download http://​downloads.openwrt.org/​backfire/10.03/​ar71xx/​openwrt-ar71xx-tl-wr841nd-v5-squashfs-factory.bin ​to your TFTP server.+  - Download ​[[http://​downloads.openwrt.org/​barrier_breaker/14.07/ar71xx/​generic/​|an appropriate image]] to serve from your TFTP server (for example, http://​downloads.openwrt.org/​barrier_breaker/​14.07/​ar71xx/​generic/​openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-factory.bin).
   - Hook your routers WAN ethernet port up to your network (for v8.2 it's LAN1 ethernet port)   - Hook your routers WAN ethernet port up to your network (for v8.2 it's LAN1 ethernet port)
   - Hook up the serial console as explained in the section "​serial console"​. At the prompt "​Autobooting in 1 seconds"​ type "​tpl"​ quickly to start a uboot console.   - Hook up the serial console as explained in the section "​serial console"​. At the prompt "​Autobooting in 1 seconds"​ type "​tpl"​ quickly to start a uboot console.
-  - Now we need to set router and server IP addresses (here named ROUTERIP and SERVERIP, substitute these with the real IP addresses). Type in the console:<​code>​+  - Now we need to set router and server IP addresses (here named ROUTERIP and SERVERIP, substitute these with the real IP addresses). ​ 
 +  ​Type in the console:<​code>​
 setenv ipaddr ROUTERIP setenv ipaddr ROUTERIP
 setenv serverip SERVERIP setenv serverip SERVERIP
-printenv +printenv</​code>​ 
-</​code>​ + 
-  - Double check that the output of printenv lists the IP addresses you just set. Now we can load the firmware over TFTP with "​tftpboot 0x80000000 openwrt-ar71xx-tl-wr841nd-v5-squashfs-factory.bin":​ <​code>​ +For example: Configure this static ip for your LAN card 192.168.1.100. If your computer containing other LAN or Wifi card, disable it! 
-ar7240> tftpboot 0x80000000 openwrt-ar71xx-tl-wr841nd-v5-squashfs-factory.bin+ 
 + Type in the console 
 +<​code>​setenv ipaddr 192.168.1.111 
 +setenv serverip 192.168.1.100</​code>​ 
 +192.168.1.111 is the router ip, 192.168.1.100 is the TFTP server ip. 
 + 
 +  - Double check that the output of printenv lists the IP addresses you just set
 +  - Uboot needs the tftp server to be listening on port 69. Make sure your server is configured to listen to that port. Now we can load the firmware over TFTP with "​tftpboot 0x80000000 openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-factory.bin":​ <​code>​ 
 +ar7240> tftpboot 0x80000000 openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-factory.bin
 Using eth0 device Using eth0 device
-TFTP from server 192.168.32.253; our IP address is 192.168.32.246 +TFTP from server 192.168.1.100; our IP address is 192.168.1.111 
-Filename '​openwrt-ar71xx-tl-wr841nd-v5-squashfs-factory.bin'​.+Filename '​openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-factory.bin'​.
 Load address: 0x80000000 Load address: 0x80000000
 Loading: checksum bad Loading: checksum bad
Line 108: Line 114:
   - Note the "​3c0000"​ in the last line (your number may differ). Now execute the following commands, if necessary replacing 3c0000 with the number you got from tftpboot   - Note the "​3c0000"​ in the last line (your number may differ). Now execute the following commands, if necessary replacing 3c0000 with the number you got from tftpboot
  
-For TL-WR841ND v3:<​code>​ +Type: <​code>​printenv bootcmd</​code>​ 
-ar7100> erase 0xbf020000 +0x3c0000+ 
 +Take note of the address and use it as flash erase start address. 
 + 
 +For TL-WR841ND v3
 + 
 + 1. Erase the flash: <​code>​ ar7100> erase 0xbf020000 +0x3c0000
                                                                                                                                                            
 First 0x2 last 0x3d sector size 0x10000 ​                                     ​ First 0x2 last 0x3d sector size 0x10000 ​                                     ​
   61                                                                            61                                                                         
-Erased 60 sectors +Erased 60 sectors ​</​code>​ 
-ar7100> cp.b 0x80000000 0xbf020000 0x3c0000 ​                                 ​+ 2.Copy RAM content to flash: 
 +<​code> ​ar7100> cp.b 0x80000000 0xbf020000 0x3c0000 ​                                 ​
 Copy to Flash... write addr: bf020000 ​                       Copy to Flash... write addr: bf020000 ​                      
-done                                                         +done </​code>​ 
-ar7100> reset                                               +3.Reset <​code> ​ar7100> reset                                               
                                                             ​                                                             ​
-Resetting... +Resetting...</​code>​ 
-</​code>​+4. Done.
  
-For TL-WR841ND v5, v7 and v8:<​code>​ +For TL-WR841ND v5, v7v8, v9: 
-ar7240> erase 0x9f020000 +0x3c0000 + 
-... +1. Erase the flash: 
-ar7240> cp.b 0x80000000 0x9f020000 0x3c0000 +<​code>​wasp> erase 0x9f020000 +0x3c0000</​code>​ 
-ar7240> bootm 0x9f020000+2Copy RAM content to flash: 
 +<​code>​wasp> cp.b 0x80000000 0x9f020000 0x3c0000
 </​code>​ </​code>​
 +3. Set up the boot
 +<​code>​wasp>​ bootm 0x9f020000
 +## Booting image at 9f020000 ...
 +Uncompressing Kernel Image ... OK
  
-  ​You're set, OpenWrt should now boot and you can set it up as usual:<​code>​ +Starting kernel ...</​code>​ 
-U-Boot 1.1.(Apr  9 2009 12:29:57)</​code>​+ 
 +4. Done. 
 + 
 +===v9 (without serial)=== 
 + 
 +As most other current TP-Link routers this device ​can be flashed and debricked without serial access. Basically, the procedure is as follows
 + 
 +  ​Set your PC to use the static IP address ''​192.168.0.66'' ​(the router will have ''​192.168.0.86''​) 
 +  ​- ​Put an OpenWrt factory image named ''​wr841nv9_tp_recovery.bin''​ in the root directory of an TFTP server and start it 
 +  - Power on the router while pressing the reset button until the lock LED is lighting up 
 +  - Wait for the router to reboot 
 + 
 +For details, see [[toh:tp-link:tl-wdr4900#​reset_button_method_no_serial_cable_needed]]
  
 ===== Go back to original firmware =====  ===== Go back to original firmware ===== 
 +-> [[doc:​howto:​generic.uninstall]]
  
-  * Download the original firmware from TP-Link'​s site (IMPORTANTDownload a firmware which has does not contain the word //boot// in it's filename (such as wr741nv1_en_3_9_18_up_boot(100104).bin),​ extract the file and rename it to something short and simple such as ''​tplink.bin''​.+{{page>​meta:infobox:​dangerous&​noheader&​nofooter&​noeditbtn}}
  
-[[http://​www.tp-link.com/Resources/software/TL-WR841N_V8_120522.zipTP-Link wr841n v.firmware w/o boot in title ]]+With the TL-WR842ND router, there is a catch: the stock firmware is obtained from the OEM: [[http://​www.tplink.com/en/support/download/?​model=TL-WR841Nversions 1,5,7,8,​9]](verions v1 and v1.5 have same latest fw) and [[http://​www.tplink.com/​en/​support/​download/?​model=TL-WR841ND&​version=V3|link for v3]]
  
-  * tested to work on nmight work on nd 9-11-2013 - note - edited link to ND and it also downloaded ​the same file.  Thanks ​to Undermonster on openwrt forum.+  * in case the file name of this firmware file does not contain the word **//"​boot"//​** in ityou can simply revert back to original firmware 
 +  * in case the file name of this firmware file does contain the word **//"​boot"//​** in it, you need to cut off parts of the image file //before// flashing it:
  
-  * Upload ​it to ''​/tmp''​-directory on your router and execute:<​code>​ + 
-mtd -r write /tmp/tplink.bin ​firmware+The following method applies both for the V1 V3 V5 V7 V8 and V9 since the bootloader is the same size. 
 + 
 + 
 +An example of an image file with the word "​boot"​ in it is ''​wr841nv9_en_3_14_4_up_boot(131129).bin''​
 + 
 +Cut the first 0x20200 (that is 131,584 = 257*512) Bytes from original firmware: 
 +<​code>​ 
 +dd if=orig.bin of=tplink.bin ​skip=257 bs=512
 </​code>​ </​code>​
-  * Be careful, if you were hit by the "​missing web interface"​ problem described above, you will be probably see the same issue when flashing back to OEM and the box will lack in telnet or ssh, too, so no way to get out without hardware intervention. 
  
 +You should transfer the firmeware image to the /tmp folder and revert back to original firmware (if availlable you can flash the firmware via the webinterface as well):
 +
 +Via the safer method using sysupgrade:
 +<​code>​
 +sysupgrade /​tmp/​tplink.bin
 +</​code>​
 +
 +Or you use the mtd method:
 +<​code>​
 +mtd -r write tplink.bin firmware
 +</​code>​
 +
 +It is also possible to revert to the stock firmware using the method with tftp described in "TFTP install"​. (you still need the firmware images without the boot part).
 +
 +OEM TP-Link firmware for the TL-WR841ND with the **//boot part removed//** or the original firmware if there wasn't a boot part to revert to the original OEM firmware:
 +  * TL-WR841N(D) **//V1//** [[http://​www.tplink.com/​resources/​software/​2008613143645.zip|2008613143645.zip]]
 +  * TL-WR842N(D) **//V3//** [[https://​drive.google.com/​uc?​export=download&​id=0B-pEMb4uQtg8SXpmVFJRbE54cFk|TL-WR841ND-V3-stripped.zip]]
 +  * TL-WR841N(D) **//V5//** [[http://​www.tplink.com/​resources/​software/​201112613340616.zip|201112613340616.zip]]
 +  * TL-WR841N(D) **//V7//** [[http://​www.tplink.com/​Resources/​software/​TL-WR841N_WR841ND_v7_120201.zip|TL-WR841N_WR841ND_v7_120201.zip]]
 +  * TL-WR842N(D) **//V8//** [[https://​drive.google.com/​uc?​export=download&​id=0B-pEMb4uQtg8cFhhSGZlWlE0ZXc|TL-WR841ND-V8-stripped.zip]]
 +  * TL-WR842N(D) **//V9//** [[https://​drive.google.com/​uc?​export=download&​id=0B-pEMb4uQtg8aXRScW1PeVFvdHc|TL-WR841ND-V9-stripped.zip]]
 +  ​
 ===== Failsafe mode ===== ===== Failsafe mode =====
 [[doc:​howto:​generic.failsafe]] [[doc:​howto:​generic.failsafe]]
Line 151: Line 210:
 ===== Debricking ===== ===== Debricking =====
  
-===v7.2 (July 2012)===+====v7.2 (July 2012)====
  
   - Disconnect the router from the internet, connect it with a PC via RJ45 cable and perform a 30/30/30 restart   - Disconnect the router from the internet, connect it with a PC via RJ45 cable and perform a 30/30/30 restart
Line 170: Line 229:
 Basically the router now works like after the initial flash to OWRT. Now you have to [[http://​wiki.openwrt.org/​doc/​howto/​basic.config|configure the internet connection]] and probably you want to install [[http://​wiki.openwrt.org/​doc/​howto/​luci.essentials|LUCI]]. After that open your browser, connect to 192.168.1.1 and log in with the data you entered via telnet. Basically the router now works like after the initial flash to OWRT. Now you have to [[http://​wiki.openwrt.org/​doc/​howto/​basic.config|configure the internet connection]] and probably you want to install [[http://​wiki.openwrt.org/​doc/​howto/​luci.essentials|LUCI]]. After that open your browser, connect to 192.168.1.1 and log in with the data you entered via telnet.
  
-===v8.x note===+====v8.x note====
  
 Debricking see the above, but you will have to plug your cable to WAN port in failsafe to be able to telnet 192.168.1.1. Debricking see the above, but you will have to plug your cable to WAN port in failsafe to be able to telnet 192.168.1.1.
 +
 +====v8.1 note====
 +
 +Try LAN port 1 instead of WAN port. The Link LEDs won't work.
 +
 +====v9====
 +
 + ​[[#​v9_without_serial|See v9 installing without serial]] ​
  
 ===== Basic configuration ===== ===== Basic configuration =====
 [[doc:​howto:​configuration]] [[doc:​howto:​configuration]]
 +
 +==== Repeater / Multiple SSID / Virtual access point / Client bridge ====
 +[[https://​forum.openwrt.org/​viewtopic.php?​id=39077|Basic information about repeater configuration on a forum thread]]. ​
 +
 +=== With BARRIER BREAKER (Bleeding Edge, r40867) ===
 +Tested with the wr841n v9 with ''​Linux OpenWrt-tplink 3.10.36 #1 Thu May 29 06:34:50 UTC 2014 mips GNU/​Linux/'' ​ or better ''​openwrt BARRIER BREAKER (Bleeding Edge, r40867)''​ . The system supports multiple virtual access points.
 +
 +Modify the files that follows according to your needs (and, in the case, search for the file definition here in the wiki to understand how it works)
 +
 +== etc/​config/​wireless ==
 +<​code>​
 +config wifi-device ​ radio0
 +        option type     ​mac80211
 +        option channel ​ 9 #same channel of the existing wifi network
 +        option path     '​platform/​qca953x_wmac'​
 +        option txpower ​ 12 #this depends on your needs, default is 20 dBm. Lower it is healthier (citation needed)
 +        # REMOVE THIS LINE TO ENABLE WIFI:
 +        #option disabled 1
 +
 +config wifi-iface
 +        option device ​  ​radio0
 +        option network ​ lan
 +        option mode     ap
 +        option ssid     '​This_is_a_new_wifi_network'​
 +        option encryption ​      psk2 #wpa2 psk
 +        option key      '​this_is_the_wifi_password'​
 +
 +config wifi-iface
 +        option device ​  ​radio0
 +        option network ​ wan
 +        option mode     '​sta'​
 +        option ssid     '​This_is_the_name_of_the_existing_wifi_network'​
 +        option encryption ​      psk2
 +        option key      '​this_is_the_wifi_password_to_get_the_connection'​
 +</​code>​
 +
 +== etc/​config/​network ==
 +<​code>​
 +config interface '​loopback'​
 +        option ifname '​lo'​
 +        option proto '​static'​
 +        option ipaddr '​127.0.0.1'​
 +        option netmask '​255.0.0.0'​
 +
 +config globals '​globals'​
 +        option ula_prefix 'here is written something, no need to modify it'
 +
 +config interface '​lan'​
 +        option ifname '​eth0'​
 +        option force_link '​1'​
 +        option type '​bridge'​
 +        option proto '​static'​
 +        option ipaddr '​192.168.11.1'​ ä modify this according to you needsfor the lan network
 +        option netmask '​255.255.255.0'​
 +        option ip6assign '​60'​
 +
 +config interface '​wan'​
 +        #option ifname '​eth1'​
 +        option proto '​dhcp'​
 +
 +config interface '​wan6'​
 +        option ifname '​@wan'​
 +        option proto '​dhcpv6'​
 +
 +config switch
 +        option name '​switch0'​
 +        option reset '​1'​
 +        option enable_vlan '​1'​
 +
 +config switch_vlan
 +        option device '​switch0'​
 +        option vlan '​1'​
 +        option ports '0 1 2 3 4'
 +</​code>​
 +
 +== etc/​config/​dhcp ==
 +Pratically unchanged
 +<​code>​
 +config dnsmasq
 +        option domainneeded '​1'​
 +        option boguspriv '​1'​
 +        option filterwin2k '​0'​
 +        option localise_queries '​1'​
 +        option rebind_protection '​1'​
 +        option rebind_localhost '​1'​
 +        option local '/​lan/'​
 +        option domain '​lan'​
 +        option expandhosts '​1'​
 +        option nonegcache '​0'​
 +        option authoritative '​1'​
 +        option readethers '​1'​
 +        option leasefile '/​tmp/​dhcp.leases'​
 +        option resolvfile '/​tmp/​resolv.conf.auto'​
 +
 +config dhcp '​lan'​
 +        option interface '​lan'​
 +        option start '​100'​
 +        option limit '​150'​
 +        option leasetime '​12h'​
 +        option dhcpv6 '​hybrid'​
 +        option ra '​hybrid'​
 +        option ndp '​hybrid'​
 +
 +config dhcp '​wan'​
 +        option interface '​wan'​
 +        option ignore '​1'​
 +
 +config odhcpd '​odhcpd'​
 +        option maindhcp '​0'​
 +        option leasefile '/​tmp/​hosts/​odhcpd'​
 +        option leasetrigger '/​usr/​sbin/​odhcpd-update'​
 +
 +config dhcp '​wan6'​
 +        option dhcpv6 '​hybrid'​
 +        option ra '​hybrid'​
 +        option ndp '​hybrid'​
 +        option master '​1'​
 +</​code>​
 +
 +== etc/​config/​firewall ==
 +Pratically unchanged because the "​client"​ wifi is connected to the "​wan"​ interface, while the "​repeater"​ wifi is connected to the lan interface, thus the firewall is basically already configured.
 +<​code>​
 +config defaults
 +        option syn_flood ​       1
 +        option input            ACCEPT
 +        option output ​          ​ACCEPT
 +        option forward ​         REJECT
 +# Uncomment this line to disable ipv6 rules
 +#       ​option disable_ipv6 ​    1
 +
 +config zone
 +        option name             lan
 +        list   ​network ​         '​lan'​
 +        option input            ACCEPT
 +        option output ​          ​ACCEPT
 +        option forward ​         ACCEPT
 +
 +config zone
 +        option name             wan
 +        list   ​network ​         '​wan'​
 +        list   ​network ​         '​wan6'​
 +        option input            REJECT
 +        option output ​          ​ACCEPT
 +        option forward ​         REJECT
 +        option masq             1
 +        option mtu_fix ​         1
 +
 +config forwarding
 +        option src              lan
 +        option dest             wan
 +</​code>​
 +== Final actions ==
 +Just be sure that the files are saved. To edit the files on windows, either use vi on the openwrt, check for a tutorial online, the basic commands are not difficult; or use winscp with a SCP connection and edit the files with an editor on windows. Then reboot the system and check for the wifi connection.
 +
 +Remember that if the "​client"​ wifi doesn'​t work, won't work also the repeater wifi network.
 +
 +=== attitude_adjustment 12.09 (final) ===
 +The default wireless configuration is different, for example
 +there is no: ''​option path     '​platform/​qca953x_wmac'''​ .
 +Further investigation shown that the wireless is able to provide an AP
 +if connected to whatever interface defined in ''/​etc/​config/​network'',​
 +while for '​sta'​ mode (a wifi client) it is possible to obtain it only if
 +the interface connected to the wireless configuration is __not using the ''​bridge''​ option nor having a relation to a switch with more than one port__ (for example if with eth0 we define a switch over multiple ports) ​ Note: //would be better to check this statement more thoroughly//​.
 +
 +For example, with the configuration reported above for barrier breaker, the wlan is linked with the wan side, that is using no switch interfaces nor bridge protocol. This works too for 12.09.
 +===== Use WPS with WPS button =====
 +// found info in Netgear WNDR3700 page  [[toh:​netgear]] and adapted for WR841N // 
 +
 +==== Prepare and install WPS ====
 +  - Follow the instructions for installing WPS : See [[doc:​uci:​wireless#​wps.options]]
 +  - Your '/​etc/​config/​wireless'​ file should be like that :
 +<​code>​
 +config wifi-iface
 +        option device '​radio0'​
 +        option network '​lan'​
 +        option mode '​ap'​
 +        option ssid '​XXXXXXXXXXXXXXX'​
 +        option key '​XXXXXXXXXXXXXXXXXXXXXXX'​
 +        option wps_pushbutton '​1'​
 +        option wps_config '​push_button'​
 +        option encryption '​psk2'​
 +</​code>​
 +==== Check configuration ====
 +  - After reboot, if everything is ok, you can test with this command:
 +<​code>​
 +root@OpenWrt /root# hostapd_cli -p /​var/​run/​hostapd-phy0 wps_pbc
 +Selected interface '​wlan0'​
 +OK
 +</​code>​
 +==== Plug button action ====
 +  - Now, we can configure the WPS button on back on TL-WR841N to launch this command when we pressed it. Edit the file '/​etc/​hotplug.d/​button/​50-wps' ​
 +<​code>​
 +#!/bin/sh
 +# for debugging button name and action name, uncomment this 2 lines
 +#logger $BUTTON
 +#logger $ACTION
 +
 +if [ "​$ACTION"​ = "​pressed"​ -a "​$BUTTON"​ = "​reset"​ ]; then
 +        for dir in /​var/​run/​hostapd-*;​ do
 +                [ -d "​$dir"​ ] || continue
 +                hostapd_cli -p "​$dir"​ wps_pbc
 +        done
 +fi
 +</​code>​
 +If everything goes ok, you should see in Syslog not only the button events, but also succesful WPS authentication.
 +
 +
 +
 ==== Wifi on/off toggle by QSS button ==== ==== Wifi on/off toggle by QSS button ====
 Read [[doc:​howto:​hardware.button|this howto]] to use buttons on TP-Link ​ Read [[doc:​howto:​hardware.button|this howto]] to use buttons on TP-Link ​
Line 211: Line 486:
 If you do not have serial port on your PC, use [[http://​www.dealextreme.com/​p/​data-cable-compatible-with-nokia-ca-42-446|Nokia CA-42 data USB cable]]. If you do not have serial port on your PC, use [[http://​www.dealextreme.com/​p/​data-cable-compatible-with-nokia-ca-42-446|Nokia CA-42 data USB cable]].
  
-**For TP-LINK WR841ND V7.2 power conector (+5V) is ignored, just connect RX - TX - GND and router power cord, work fine...** 
  
-Another ​user notes: My TP-LINK WR841ND V7.2 has a VCC of +3.3V and like the TL-MR3420 [[http://​wiki.openwrt.org/​toh/​tp-link/​tl-mr3420#​serial]] needed to connect a 10k pullup resistor between the TX and the 3.3V pin to get reliable serial.+==== Yet another ​user notes ====
  
-Yet another user notes: ​My TP-Link WR841ND V7.1 also requires ​the 10k pullup resistor between TX and the 3.3V pin.  Without the resistor I just get garbage when I type, but can see some console output+  * For TP-LINK WR841ND V7.2 power conector (+5V) is ignored, just connect RX - TX - GND and router power cord, work fine... 
 +  * My TP-LINK WR841ND V7.2 has a VCC of +3.3V and like the TL-MR3420 [[http://​wiki.openwrt.org/​toh/​tp-link/​tl-mr3420#​serial]] needed to connect a 10k pullup resistor between ​the TX and the 3.3V pin to get reliable serial: 
 +  {{:​media:​dsc02532_324.jpg?800|}}
  
-=== Serial port settings: === +  * My TP-Link WR841ND V7.1 also requires the 10k pullup resistor between TX and the 3.3V pin.  Without the resistor I just get garbage when I type, but can see some console output.  
-^ Version ^ v3.2 ^ v5 ^ v7.X ^ v8.4 ^ +  * just swap TX and GND pin in serial and no garbage in serial console, but this is read-only. 
-| **Image** | {{:​toh:​tp-link:​tl-wr841nd-v3.2-serial.jpg?​250|}} | {{:​toh:​tp-link:​wr841nd-v5-serial.jpg?​250|}} | {{:​toh:​tp-link:​tl-wr841nd.v7.2.serial.jpg?​250|}} | {{:​media:​toh:​tp-link:​tl-wr841nd.v8.4.serial.jpg?​250|tl-wr841nd.v7.2.serial.jpg}} | +  * For my TP-Link TL841N v9.0 i had to remove R26. It's a pull-up between RX (device side) and VCC. My ftdi device couldn'​t send data with R26 attached. 
-| **U-Boot speed** | 9600 | 115200 ||| +  * For my TP-Link TL-WR841ND v8.4 was not required 10K resistor. My TTL to RS232 converter has bad marking of Tx and Rx pins. So, it was necessary to connect Tx-Tx and Rx-Rx. The connection of Vcc (3.3V) was necessary too. The connection scheme you can find on the following image: 
-| **kernel speed** | 115200 - switch automaticaly | 115200 ||| +    {{:​media:​tplink-841nd-v8-4-serial.jpg?​800|}} 
-| **Data format** | always 8N1 ||||+ 
 + 
 +**Tip:** Connecting TL-WR841N v8.1 via Arduino Due R3 ([[https://​forum.openwrt.org/​viewtopic.php?​id=37010&​p=6 | forum link]]): 
 + 
 +{{:​media:​tp-link-tl-wr841n-v8-2.jpeg?​450|}} 
 + 
 + 
 +==== Serial port settings: ​==== 
 +^ Version ^ v3.2 ^ v5 ^ v7.X ^ v8.4 ^ v9.0 
 +| **Image** | {{:​toh:​tp-link:​tl-wr841nd-v3.2-serial.jpg?​250|}} | {{:​toh:​tp-link:​wr841nd-v5-serial.jpg?​250|}} | {{:​toh:​tp-link:​tl-wr841nd.v7.2.serial.jpg?​250|}} | {{:​media:​toh:​tp-link:​tl-wr841nd.v8.4.serial.jpg?​250}} {{:​media:​toh:​tp-link:​tp-link:​tl-wr841nd.v9.0.serial.jpg?250}} | 
 +| **U-Boot speed** | 9600 | 115200 ​|||| 
 +| **kernel speed** | 115200 - switch automaticaly | 115200 ​|||| 
 +| **Data format** | always 8N1 |||||
  
 After connecting, you will be greeted by something like this: After connecting, you will be greeted by something like this:
Line 286: Line 574:
 ==== Can not connect to v8? ==== ==== Can not connect to v8? ====
 check whether eth0/eth1 are switched! check whether eth0/eth1 are switched!
 +
 +===== Bootloader Mods =====
 +  - you could read about [[doc:​techref:​bootloader]] in general and about [[doc:​techref:​bootloader:​uboot|Das U-Boot]] in particular.
 +
 +==== U-Boot 1.1.4 modification for routers ====
 +Forum member [[https://​forum.openwrt.org/​profile.php?​id=72549|pepe2k]] made a modification of **U-Boot 1.1.4** for **Qualcomm Atheros** SoCs based devices (the project is still being developed, so new devices and SoCs will be supported in the future). Up to date information,​ binary images and sources can be found on official [[https://​github.com/​pepe2k/​u-boot_mod|GitHub repository]].
 +
 +This modification started from [[http://​code.google.com/​p/​wr703n-uboot-with-web-failsafe/​|wr703n-uboot-with-web-failsafe]] project, but supports more devices, all modern web browsers, has a lot of improvements and other modifications (like U-Boot NetConsole, custom commands, overclocking possibilities etc.).
 +
 +More information:​
 +
 +  * Official repository on GitHub: [[https://​github.com/​pepe2k/​u-boot_mod|U-Boot 1.1.4 modification for routers]]
 +  * Discussion about this project on [[https://​forum.openwrt.org/​viewtopic.php?​id=43237|OpenWrt forum]]
 +  * An article (in Polish) about one of the first version of this project on [[http://​www.tech-blog.pl/​2013/​03/​29/​zmodyfikowany-u-boot-dla-routerow-tp-link-z-atheros-ar9331-z-trybem-aktualizacji-oprogramowania-przez-www-i-konsola-sieciowa-netconsole/​|www.tech-blog.pl]]
  
 ===== Hardware Mods ===== ===== Hardware Mods =====
Line 356: Line 658:
  
 Apply this patch and build... Apply this patch and build...
 +
 +==== CANBus Interface for V8.x ====
 +{{:​media:​tplink:​wr841_slcan_02_s.jpg|}}
 +
 +[[http://​lnxpps.de/​openwrt/​wr841/​indexe.html|SLCAN CAN-Bus Interface]]
  
 ===== Version 8.0 forum thread ===== ===== Version 8.0 forum thread =====
 [[https://​forum.openwrt.org/​viewtopic.php?​id=37010]] [[https://​forum.openwrt.org/​viewtopic.php?​id=37010]]
 +
 +===== Custom OpenWrt image with LuCi integrated =====
 +
 +http://​www.superwrt.eu/​en/​firmware/​tp-link-wr841nd/​
 +
  
 ===== Tags ===== ===== Tags =====
toh/tp-link/tl-wr841nd.1383104817.txt.bz2 · Last modified: 2013/10/30 04:46 by denix