Differences

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

toh:tp-link:tl-wr1043nd [2012/12/29 01:16]
europhil
toh:tp-link:tl-wr1043nd [2014/04/20 06:01] (current)
friedzombie not a forum
Line 1: Line 1:
====== TP-Link TL-WR1043ND ====== ====== TP-Link TL-WR1043ND ======
 +One of the first cheap devices with an gigabit Ethernet switch. Manufacture advertised features: 3 removable omni antennas (RP-SMA connectors) and 24 dBm (251 mW, v1.x, v2.x) maximal TX power output. Note: maximal TX power and available channels are limited in some countries!
 +
 +**WARNING:** These routers seem to have unstable wifi in 12.09. They're hit by bugs [[https://dev.openwrt.org/ticket/9654|9654]], [[https://dev.openwrt.org/ticket/12372|12372]] and [[https://dev.openwrt.org/ticket/13966|13966]].
 +
===== Supported Versions ===== ===== Supported Versions =====
-^ Version/Model ^ S/N ^ Release Date ^ OpenWrt Version Supported ^ Model Specific Notes ^ +This router has the following versions/models. 
-| v1.1 | - | | Backfire 10.03.1 | Similar to WR941ND.| + 
-| v1.4 | - | | Backfire 10.03.1 | Same v1 board as v1.1| +^ Version/Model ^ S/N ^ Release Date ^ Bootloader Date ((U-Boot 1.1.4 if not stated otherwise.)) ((''grep U-Boot /dev/mtd0ro'')) ^ Supported since version ((The earliest OpenWRT release to be supported. Subsequent releases should be supported unless otherwise stated.)) ^ Model Specific Notes ^ 
-| v1.5 | - | | Backfire 10.03.1 | Same v1 board as v1.1| +| (DE)v1.0 | - | | | Backfire 10.03.1 | Similar, German WebUI | 
-| v1.6 | - | | Backfire 10.03.1 | Similar +| v1.1 | - | | | Backfire 10.03.1 | Similar to WR941ND.
-| v1.7 | - | | Backfire 10.03.1 | Similar +| (DE)v1.1 | - | | | Attitude Adjustment 12.09-beta2 | German WebUI, V1.1 in S/N sticker | 
-| v1.8 :!:| - | | Tested OK with Attitude Adjustment 12.09-rc1 | Similar +| (RU)v1.1 | - | 2013-09-27 | | Attitude Adjustment 12.09 | Upgraded to stock 3.13.13 first before flashing OpenWRT, no switch leaking | 
-| v1.9 :!:| - | | Tested OK with Backfire 10.03.1 | Unknown +| (DE)v1.2 | - | 2013-03 :?: | | Attitude Adjustment 12.09-rc1 | **Backfire 10.03.1 = BRICK**:!:
-| v1.10 :!:| - | | Tested OK with Attitude Adjustment 12.09-rc1 | Similar rev:1.1 board| +| v1.4 | - | | | Backfire 10.03.1 | Same v1 board as v1.1| 
-| (DE)v1.0 | - | | Backfire 10.03.1 | Similar, German WebUI +| v1.5 | - | | | Backfire 10.03.1 | Same v1 board as v1.1| 
-| (DE)v1.1 | - | | Attitude Adjustment 12.09-beta2 | Similar, German WebUI, V1.1 in S/N sticker |+| v1.6 | - | | | Backfire 10.03.1 | | 
 +| v1.7 | - | | | Backfire 10.03.1 | | 
 +| v1.8 | - | | 2010-08-04 <sup><sub>(and probably other versions prior to 2012-02-02)</sub></sup> | Backfire 10.03.1 | | 
 +| ::: | - | | 2012-02-02, 2012-03-31 <sup><sub>(and probably later versions)</sub></sup> | Attitude Adjustment 12.09-rc1 | Tested OK with Backfire 10.03.1 but **require** [[toh:tp-link:tl-wr1043nd#bootloader.downgrade|bootloader downgrade]]. [[https://forum.openwrt.org/viewtopic.php?id=42539|Suspect of hardware bug that bring down WiFi after a while.]]
 +| v1.9 | - | | 2012-03-31 | | Tested OK with Backfire 10.03.1 but **require** [[toh:tp-link:tl-wr1043nd#bootloader.downgrade|bootloader downgrade]].
 +| v1.10 | - | | | Attitude Adjustment 12.09-rc1 | Similar v1.1 board. **Backfire 10.03.1 = BRICK**:!:.
 +| v1.11 | - | | | Attitude Adjustment 12.09 | **Backfire 10.03.1 = BRICK**:!:
 +| v2.1 | - | | 2013-06-18 | Barrier Breaker (trunk R38958)  |  | 
 + 
 + 
 +^ HW V1.x ^ HW V2.x ^ 
 +|  {{:media:tl-wr1043ndv1_profile.jpg?200|}}  |  {{:media:tl-wr1043ndv2_profile.jpg?200|}}  |
-The supported versions include future releases, unless otherwise stated. The versions above indicate the first version that such device is officially supported. 
===== Hardware Highlights ===== ===== Hardware Highlights =====
-^ CPU ^ Ram ^ Flash ^ Network ^ Gigabit ^ USB ^ Serial ^ JTag ^ +^ HW Version ^ CPU ^ Ram ^ Flash ^ Network ^ Gigabit ^ USB ^ Serial ^ JTag ^ 
-| Atheros AR9132@400MHz  | 32MB | 8MB | 4x1 | Yes | Yes | Yes | Yes |+| 1.x | Atheros AR9132@400MHz  | 32MB | 8MB | 4x1 | Yes | Yes | Yes | Yes
 +| 2.x | Qualcomm Atheros QCA9558@720MHz | 64MB | 8MB | 4x1 | Yes | Yes | Yes | No |
See paragraphs [[toh/tp-link/tl-wr1043nd#Hardware]] or [[toh/tp-link/tl-wr1043nd#Tags]] for more details. See paragraphs [[toh/tp-link/tl-wr1043nd#Hardware]] or [[toh/tp-link/tl-wr1043nd#Tags]] for more details.
===== Warnings / Gotchas ===== ===== Warnings / Gotchas =====
 +<color red>//This section is mess and needs clean up.//</color>
-:!: **It has been [[https://dev.openwrt.org/ticket/11898 | reported]] that recent factory firmware includes a new bootloader revision which disables the WAN port at boot (likely to deal with [[https://dev.openwrt.org/ticket/6819 | switch leakage]]). A fix has been implemented in trunk between [[https://dev.openwrt.org/changeset/32942 | r32942]] - [[https://dev.openwrt.org/changeset/32942 | r32944]], while 45-46 fixes the leakage.** +<color red>//Due to numerous reports that WAN bug does not occur with stock uboot, doing uboot downgrade may be possibly obsolete.//</color> 
-Below is the version of the new bootloader (which disables the wan port) of a version 1.8 hardware model (bought in august 2012).+ 
 +:!: **WAN port disable bug (newer models v1.8+ with U-boot 2012-02-02 and later).** It has been [[https://dev.openwrt.org/ticket/11898 | reported]] that recent TP-Link stock firmware packages include a new bootloader revision, which disables the WAN (port 0) at boot. This was an unhelpful fix to deal with the [[https://dev.openwrt.org/ticket/6819 | switch leakage]], which has been implemented in trunk between [[https://dev.openwrt.org/changeset/32942 | r32942]] - [[https://dev.openwrt.org/changeset/32942 | r32944]] (45-46 fixes the leakage). 
 + 
 +:!: **WAN port disable bug in 1.10** As of today (20130529) installing Attitude Adjustment 12.09 on a 1.10 device works flawless and do not exhibit the WAN port disable bug. 
 + 
 +:!: **WAN port disable bug in (DE)v1.2** As of today (20130902) installing Attitude Adjustment 12.09 on a (DE)v1.2 device works flawless and do not exhibit the WAN port disable bug. 
 + 
 +:!: **WAN port disable bug in 2.1** As of today (20131230) installing Barrier Breaker (trunk) on a v2.1 device works flawless and do not exhibit the WAN port disable bug. 
 + 
 +**ALL newer hardware models v1.8 or above (from ~April 2012) is affected by this WAN port bug.** Below is the code for the affected bootloader that disables the WAN port at boot after flashing.
<code> <code>
root@tpl2:~# grep -a U-Boot /dev/mtd0ro | cut -d'I' -f1 root@tpl2:~# grep -a U-Boot /dev/mtd0ro | cut -d'I' -f1
Line 32: Line 57:
</code> </code>
-** (Nasty) Workaround for routers loaded with the newer firmware - **+  * Check of the TP-LINK firmware, ver. TL-WR1043ND_V1_120405 with a published date 2012/4/5: This firmware updates the bootloader code to a March 31, 2012 release date but has the same WAN port disabled on boot behavior as the Feb. 6, 2012 firmware, and so routers shipping with this firmware need the boot loader downgrade described below
-You can use an older, german stock firmware image to downgrade to an earlier boot-loader version. +&lt;code&gt; 
-Steps to accomplish this: +U-Boot 1.1.4 (Mar 31 2012 - 10:40:21
-  * Download a firmware file called &quot;wr1043nv1_de_3_9_17_up_boot(100331).bin&quot; / "wr1043nv1_de_3_9_17_up_boot(100331).bin.zip" (Google it or get it [[https://www.dropbox.com/el/?r=/s/f5kmuhld737veel/wr1043nv1_de_3_9_17_up_boot%2528100331%2529.bin&b=clk:124224095:13687220193071768671:777:446&z=AADjSCWkSnwuH8evw7wIbFDVpQJ9iogbHn-rdWJwu5h3tQ | here]]). +U-Boot 
- * Use the base firmware that came with your router (if you've flashed the OpenWRT firmware, follow the steps outlined in [[http://wiki.openwrt.org/toh/tp-link/tl-wr1043nd#back.to.original.firmware | Back to original firmware]] to reflash a valid stock version. +</code>
-  * Use the TP-Link firmware to flash the older, german firmware image from above. +
-  * Now, flash the OpenWRT image as you would normally. This time - the WAN port should not be disabled.+
 +==== Bootloader downgrade ====
 +:!: **WAN port disable bug (inelegant) workaround.** The older german stock firmware (v3.9.17/100331) does not feature this bug. The work around involves webreverting/downgrading to this older version and then reflashing OpenWrt.
-:!: **This device does NOT deliver enough USB power for many USB 3G modems.  This can lead to erratic behavior, connections that only work for a few seconds, connections that completely fail to start. If a 3G USB modem is to be used, consider other routers, e.g. [[http://wiki.openwrt.org/toh/buffalo/wzr-hp-ag300h | Buffalo WZR-HP-AG300H]]**+  * Step 1 (optional, only required if OpenWrt is installed): If your WAN port is now disabled follow the guide [[http://wiki.openwrt.org/toh/tp-link/tl-wr1043nd#back.to.original.firmware | here]] to web revert back to stock firmware. 
 + 
 +  * Step 2: Install german stock firmware (v3.9.17) through the TP-Link web interface. Download the firmware file "[[google>wr1043nv1_de_3_9_17_up_boot(100331).bin]]". ([[https://www.dropbox.com/s/f5kmuhld737veel/wr1043nv1_de_3_9_17_up_boot%28100331%29.bin | mirror]]). After the German firmware flash, the u-boot code on a v1.9 router should be downgraded to the Nov. 17, 2009 version: 
 + 
 +<code> 
 +grep -a U-Boot /dev/mtd0ro | cut -d'I' -f1 
 +</code> 
 + 
 +<code> 
 +U-Boot 1.1.4 (Nov 17 2009 - 11:56:26) 
 +U-Boot 
 +</code> 
 + 
 +  * Step 3: Flash the correct OpenWrt firmware image according to your router model/version:!:. This should re-enable the WAN port.  
 + 
 +==== USB 3G Modems ==== 
 +:!: **USB 3G modem issue (insufficient power).** TL-WR1043ND v1.x does NOT deliver enough power for most USB 3G modems, which can lead to erratic behavior such as droped/failed connections. If a 3G USB modem is to be used, consider other routers with a USB port that delivers enough Amperes. (e.g. [[http://wiki.openwrt.org/toh/buffalo/wzr-hp-ag300h|Buffalo WZR-HP-AG300H]]
 + 
 +== Compatible USB 3G modems == 
 +  * e.g. Huawei E1550 
 + 
 + 
 +== Note for TL-WR1043ND v2: == 
 +I got a stable 3g connection on my router! I don't see any erratic behavior! 
 +I tested the router with the following 3g modems: 
 +  * TCT Mobile One Touch X500D 
 +  * TCT Mobile X220L 
 +  * ZTE MF632
===== Installation ===== ===== Installation =====
-  - Download a precompiled [[http://downloads.openwrt.org/attitude_adjustment/12.09-beta2/ar71xx/generic/openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-factory.bin|Attitude Adjustment 12.09 Beta 2 (stable image)]]. +  - [[doc:howto:obtain.firmware]] and [[about/latest|Latest OpenWrt Release]] - required image file is "openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-factory.bin" for v1.x routers, "openwrt-ar71xx-generic-tl-wr1043nd-v2-squashfs-factory.bin" for v2.x routers. Files can be found in the "ar71xx" directory. You can use the quick links from the table below.
-  Or follow the generic instructions on these pages: +
-  - [[doc:howto:obtain.firmware]] You //should// download a stable image with factory and SquashFS in the Name.+
  - [[doc:howto:generic.flashing]] Now write this firmware-file onto the flash-chip of your device   - [[doc:howto:generic.flashing]] Now write this firmware-file onto the flash-chip of your device
-  * You can allways [[doc:howto:obtain.firmware.generate|build]] your own image based on Kamikaze or on Backfire. Choose Atheros AR71xx/AT7240/AR913x platform and use TP-Link WR1043ND v1 Profile.+:!: **''NOTE:''** If case you have a revision > v1.10, you need to flash an elder OEM firmware release first, and only then flash OpenWrt; tested and works [[http://forum.lowyat.net/topic/2481658/all|credits go to sayboon]] for his tutorial
-Notes: 
-  * The precompiled stable image does not include the kernel module for the wireless interface. To use wifi, you need to install kmod-ath9k and regenerate the configuration, see [[doc:uci:wireless|wireless configuration]]. Update: it appears that version Backfire 10.03.1 does contain the wifi driver. Wifi can work "out of the box" right after installation and just need to be enabled.+The **trunk**, code named **Barrier Breaker**, contains bleeding edge source code for OpenWrt.
-It appears that in order to use the &quot;Firmware upgrade"; option in the original firmware for installing OpenWRT, the WR1043ND must be connected to internet, or at least to a dhcp server on its WAN port - otherwise it won't flash the OpenWRT image, but come up with original firmware again after reboot. UPDATE: not a problem with hardware v1.8 running stock firmware 20110429: leaving connected back to back the Windows client PC performing the upgrade was good enough.+|{{:meta:icons:tango:48px-dialog-warning.svg.png?nolink&amp;24}}| The development branch contains everything from documentation to **//experimental//** **//patches//**! Bleeding edge OpenWrt supports additional hardware; however, it's considered unstable, and sometimes won't compile. | 
 + 
 +  * Download **Factory** image if you want to install OpenWrt on router with OEM firmware. 
 +  * Download **Update** image if you already have OpenWrt installed. 
 + 
 + 
 +==== Downloads for TL-WR1043ND v1.x  ==== 
 + 
 +^ Branch ^ Type ^ Download link ^ 
 +|  **Stable** (Attitude Adjustment)  |  **Factory**  |  http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-factory.bin  | 
 +:::  |  **Upgrade**  |  http://downloads.openwrt.org/attitude_adjustment/12.09/ar71xx/generic/openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-sysupgrade.bin  | 
 +|  **Trunk** (Barrier Breaker)  |  **Factory**  |  http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-factory.bin  | 
 +|  :::  |  **Upgrade**  |  http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-sysupgrade.bin  | 
 + 
 +==== Downloads for TL-WR1043ND v2.x  ==== 
 + 
 +^ Branch ^ Type ^ Download link ^ 
 +|  **Trunk** (Barrier Breaker)  |  **Factory**  |  http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-wr1043nd-v2-squashfs-factory.bin  | 
 +|  :::  |  **Upgrade**  |  http://downloads.openwrt.org/snapshots/trunk/ar71xx/openwrt-ar71xx-generic-tl-wr1043nd-v2-squashfs-sysupgrade.bin  |
==== Flash Layout ==== ==== Flash Layout ====
Line 64: Line 131:
^  TP-Link WR1043ND  Flash Layout stock firmware          ^^^^^^ ^  TP-Link WR1043ND  Flash Layout stock firmware          ^^^^^^
^ Layer0      |                      m25p80 spi0.0: m25p64      8192KiB          |||||| ^ Layer0      |                      m25p80 spi0.0: m25p64      8192KiB          ||||||
-^ Layer1      |  mtd0           |  mtd1                            |||  mtd3        | +^ Layer1      |  mtd0 **//u-boot//** 128KiB |   mtd1 **//firmware//** 8000KiB  |||  mtd3 **//art//** 64KiB |
-^ Size in KiB  |  128KiB          |  8000KiB                        |||  64KiB        | +
-^ Name        |  **//u-boot//**  | **//firmware//**               |||  **//art//**  |+
^ mountpoint  |  none            |  /                              |||  none        | ^ mountpoint  |  none            |  /                              |||  none        |
-^ filesystem  |  none            |  SquashFS?                      |||  none        +^ filesystem  |  none            |  SquashFS                       |||  none        |
-^  TP-Link WR1043ND  Visual Flash Layout OpenWrt          ^^^^^^ +
-^ Offset        |    0      |    128                      |    1408                          |    2944                                                        |    8128  | +
-^ x64KiB Blocks  |    2  |    20  |    24  |    81  |    1  |+
^  TP-Link WR1043ND  Flash Layout          ^^^^^^ ^  TP-Link WR1043ND  Flash Layout          ^^^^^^
^ Layer0      |                      m25p80 [[wp>Serial Peripheral Interface Bus|spi]]0.0: m25p64      8192KiB                                                                      ||||| ^ Layer0      |                      m25p80 [[wp>Serial Peripheral Interface Bus|spi]]0.0: m25p64      8192KiB                                                                      |||||
Line 77: Line 139:
^ Layer2      |                              |  mtd1 **//kernel//** 1280KiB  |  mtd2 **//rootfs//** 6720KiB                          ||          | ^ Layer2      |                              |  mtd1 **//kernel//** 1280KiB  |  mtd2 **//rootfs//** 6720KiB                          ||          |
^ <color magenta>mountpoint</color>  |                              |                              |  <color magenta>''/''</color>                          ||          | ^ <color magenta>mountpoint</color>  |                              |                              |  <color magenta>''/''</color>                          ||          |
-^ filesystem  |                              |                              |  [[doc:techref:filesystems#mini_fo|mini_fo]]          ||          | +^ filesystem  |                              |                              |  [[doc:techref:filesystems#overlayfs|overlayfs]]          ||          | 
-^ Layer3      |                              |                              |                 |  mtd3 **//rootfs_data//** 5184KiB    |          +^ Layer3      |                              |                              | 1536KiB        |  mtd3 **//rootfs_data//** 5184KiB    |          |
-^ Size in KiB  |  128KiB                      |  1280KiB                      |  1536KiB        |  5184KiB                              |  64KiB  | +
-^ Name        |  **//u-boot//**              |  **//kernel//**              |                |  **//rootfs_data//**            |  **//art//**  |+
^ <color magenta>mountpoint</color>  |  //none//                    |  //none//                    |  <color magenta>''/rom''</color>  |  <color magenta>''/overlay''</color>  |  //none//  | ^ <color magenta>mountpoint</color>  |  //none//                    |  //none//                    |  <color magenta>''/rom''</color>  |  <color magenta>''/overlay''</color>  |  //none//  |
^ filesystem  |  //none//                    |  //none//                    |  [[doc:techref:filesystems#SquashFS]]  |  [[doc:techref:filesystems#JFFS2]]  |  //none//  | ^ filesystem  |  //none//                    |  //none//                    |  [[doc:techref:filesystems#SquashFS]]  |  [[doc:techref:filesystems#JFFS2]]  |  //none//  |
-ART = Atheros Radio Test - it contains mac addresses and calibration data for the wifi (EEPROM). If it is missing or corrupt, ath9k won't come up anymore.\\+ART = Atheros Radio Test - it contains mac addresses and calibration data for the wifi (EEPROM). If it is missing or corrupt, ath9k won't come up anymore.
-Here is a LibreOffice Calc ODS for better understanding: [[http://ubuntuone.com/2aPBH9pwkxtYzy93S0cS1z]] . 
-==== OEM easy installation ==== 
- 
-Install openwrt-ar71xx-tl-wr1043ndv1-squashfs-factory.bin using the "Firmware Upgrade" page of web interface of the original firmware. 
==== OEM mass flashing ==== ==== OEM mass flashing ====
Flashing hundreds of devices using the web interface can be a real pain. You can use this shell script to automate it: Flashing hundreds of devices using the web interface can be a real pain. You can use this shell script to automate it:
-<code>+<code bash>
#!/bin/bash #!/bin/bash
Line 139: Line 195:
Commands: Commands:
-After you see ''Autobooting in 1 seconds'' type ''tpl'' and hit enter to get into command promt.+After you see ''Autobooting in 1 seconds'' type ''tpl'' and hit enter to get into command prompt.
<code> <code>
-erase 0xbf020000 +7c0000 # 7c0000: size of the firmware (be aware that you may have a different size thus bricking your router) 
tftpboot 0x81000000 code.bin tftpboot 0x81000000 code.bin
 +erase 0xbf020000 +7c0000 # 7c0000: size of the firmware (be aware that you may have a different size thus bricking your router)
cp.b 0x81000000 0xbf020000 0x7c0000 cp.b 0x81000000 0xbf020000 0x7c0000
bootm 0xbf020000 bootm 0xbf020000
 +</code>
 +
 +For version 2.1 you must use the following
 +<code>
 +tftp 0x80060000 openwrt-ar71xx-generic-tl-wr1043nd-v2-squashfs-factory.bin
 +erase 0x9f020000 +0x7c0000
 +cp.b 0x80060000 0x9f020000 0x7c0000
 +boot.m 0x9f020000
</code> </code>
Line 209: Line 273:
  * in case the file name of this firmware file does not contain the word **//"boot"//** in it, you can simply revert back to original firmware   * in case the file name of this firmware file does not contain the word **//"boot"//** in it, you 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:   * 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:
 +
 +
 +The following method applies both for the V1 and V2 since the bootloader is the same size.
 +
An example of an image file with the word "boot" in it is ''wr1043nv1_en_3_9_17_up_boot(091118).bin''. An example of an image file with the word "boot" in it is ''wr1043nv1_en_3_9_17_up_boot(091118).bin''.
Line 217: Line 285:
</code> </code>
-This has been confirmed by [[https://forum.openwrt.org/viewtopic.php?pid=110583#p110583|supertom64]]+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>
 +
 +This has been confirmed by [[https://forum.openwrt.org/viewtopic.php?pid=110583#p110583|supertom64]] (for the V1)
 +
 +OEM TP-Link firmware for the TL-WR1043nd with the **//boot part removed//** to revert to the original OEM firmware:
 +  * TL-WR1043nd **//V1//** [[http://q.gs/6gAN3|TL-WR1043ND-V1-stripped.zip]]
 +  * TL-WR1043nd **//V2//** [[http://q.gs/6gAN7|TL-WR1043ND-V2-stripped.zip]]
Line 226: Line 309:
==== OEM firmware features ==== ==== OEM firmware features ====
-Since this is the same for all TP-LINK products, see [[toh:tp-link:tl-features|TP-LINK firmware features]].+In case you want to have the same features with OpenWrt as the OEM firmware, look this up: [[toh:tp-link:tl-features|TP-Link OEM firmware features]]
===== Specific configuration ===== ===== Specific configuration =====
Line 241: Line 324:
==== Switch Ports (for VLANs) ==== ==== Switch Ports (for VLANs) ====
-Numbers 1-4 are Ports 1-4 as labeled on the unit, number 0 is the Internet (WAN) on the unit, 5 is the internal connection to the router itself. +Gigabit Media Independent Interface is the internal connection to the router itself.  
 + 
 +^ Port ^ Switch port on v1.x ^ Switch port on v2.x ^ 
 +| Internet (WAN)| 0 | 5 |  
 +| LAN 1 | 1 | 4
 +| LAN 2 | 2 | 3 | 
 +| LAN 3 | 3 | 2 | 
 +| LAN 4 | 4 | 1 | 
 +| Gigabit Media Independent Interface | 5 (marked as CPU) | 0 (marked as CPU) Switch0 CPU Port| 
 +| Gigabit Media Independent Interface | - | 6 Switch0 CPU Port | 
 + 
 +FIXME There is a port 6 on v2.x I haven't found it's purpose yet! 
 + 
 +Theory (may be wrong):\\ 
 +The v2.x get's the lan and wan interface not via eth0.1/eth0.2 but via eth0 (wan) and eth1 (lan). 
 +The eth0 in the same vlan as port 5 on the switch. 
 +Because of that, I think that port 6 on the v2.x routers may be an aditional CPU port - used for wan traffic only. 
 + 
 +Wan has VLAN 2, that shouldn't be touch,as you lose the WAN port. Start you VLANs from 3 , attaching them to the eth1.x sub-interfaces. 
-^ Port ^ Switch port ^ 
-| Internet (WAN) | 0 |  
-| LAN 1 | 1 |  
-| LAN 2 | 2 |  
-| LAN 3 | 3 |  
-| LAN 4 | 4 |  
-| Gigabit Media Independent Interface | 5 |  
http://www.realtek.com.tw/products/productsView.aspx?Langid=1&PNid=18&PFid=15&Level=5&Conn=4&ProdID=197 http://www.realtek.com.tw/products/productsView.aspx?Langid=1&PNid=18&PFid=15&Level=5&Conn=4&ProdID=197
Line 256: Line 351:
There is a problem with VLAN-IDs > 9 (at least on v1.4 with 10.03.1-RC6 r28680 and v1.8 with 12.09-rc1 r34185). Using a VLAN-ID > 9 makes the router inaccessible on this interface. There is a problem with VLAN-IDs > 9 (at least on v1.4 with 10.03.1-RC6 r28680 and v1.8 with 12.09-rc1 r34185). Using a VLAN-ID > 9 makes the router inaccessible on this interface.
 +
 +==== Port Mirroring ====
 +Port mirroring is supported since [[https://dev.openwrt.org/changeset/36847/|r36847 ]]
 +
 +/etc/config/network
 +<code>
 +
 +config switch
 +        option name 'switch0'
 +        option reset '1'
 +        option enable_vlan '1'
 +        option enable_mirror_rx '1'
 +        option enable_mirror_tx '1'
 +        option enable_monitor_isolation '1'
 +        option enable_mirror_pause_frames '1'
 +        option mirror_monitor_port '4'
 +        option mirror_source_port '3'
 +config switch_vlan
 +        option device 'switch0'
 +        option vlan '1'
 +        option ports '1 5t'
 +config switch_vlan
 +        option device 'switch0'
 +        option vlan '5'
 +        option ports '2 3'
 +
 +</code>
 +
 +==== Use the WAN-Port as a LAN-Port  ====
 +**remove** to following lines, to remove the wan specific configuration (vlan and interface)
 +
 +/etc/config/network
 +<code>
 +config interface 'wan'
 + option ifname 'eth0.2'
 + option proto 'dhcp'
 +</code>
 +and
 +<code>
 +config switch_vlan
 + option device 'switch0'
 + option vlan '2'
 + option ports '0 5t'
 +</code>
 +
 +and **add** the port 0 to the exsisting Vlan
 +<code>
 +config switch_vlan
 + option device 'switch0'
 + option vlan '1'
 +# add port 0 to the line below
 + option ports '0 1 2 3 4 5t'
 +</code>
 +
 +
 +==== Add VLAN and Second Wan on v.2.x  ====
 +/etc/config/network
 +
 +Each Port is a VLAN
 +
 +Physical Port 1 is the WAN2
 +
 +Adapt to your needs
 +<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 'fd30:0c4a:0bba::/48'
 +
 +config interface 'lan1'
 +        option ifname 'eth1.1'
 +        option type 'bridge'
 +        option proto 'static'
 +        option ipaddr '192.168.1.1'
 +        option netmask '255.255.255.0'
 +
 +config interface 'lan2'
 +        option ifname 'eth1.3'
 +        option proto 'static'
 +        option ipaddr '192.168.2.1'
 +        option netmask '255.255.255.0'
 +        option type 'bridge'
 +
 +config interface 'lan3'
 +        option ifname 'eth1.4'
 +        option proto 'static'
 +        option ipaddr '192.168.3.1'
 +        option netmask '255.255.255.0'
 +        option type 'bridge'
 +
 +config interface 'lan4'
 +        option ifname 'eth1.5'
 +        option proto 'static'
 +        option ipaddr '192.168.4.1'
 +        option netmask '255.255.255.0'
 +        option type 'bridge'
 +
 +config interface 'wan'
 +        option ifname 'eth0'
 +        option proto 'static'
 +        option ipaddr '192.168.100.100'
 +        option netmask '255.255.255.0'
 +
 +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 '0t 1'
 +        option vid '1'
 +
 +config switch_vlan
 +        option device 'switch0'
 +        option vlan '3'
 +        option ports '0t 4'
 +        option vid '3'
 +
 +config switch_vlan
 +        option device 'switch0'
 +        option vlan '4'
 +        option ports '0t 3'
 +        option vid '4'
 +
 +#This should stay untouched
 +config switch_vlan
 +        option device 'switch0'
 +        option vlan '2'
 +        option ports '5 6'
 +        option vid '2'
 +
 +config switch_vlan
 +        option device 'switch0'
 +        option vlan '5'
 +        option ports '0t 2'
 +        option vid '5'
 +</code>
==== Failsafe mode ==== ==== Failsafe mode ====
See [[doc:howto:generic.failsafe|OpenWrt Failsafe Mode]] for general information. See [[doc:howto:generic.failsafe|OpenWrt Failsafe Mode]] for general information.
-Power up your router. When the 'SYS' light starts to blink, press and hold the //QSS// button on the right side of the front panel until the blinking of 'SYS' LED gets faster. If that won't work instead of holding the button press it and keep pressing it until the blinking gets faster. Alternatively you may try both methods on the //RESET// button on the back panel between USB and power plug.+  * Power up your router. When the 'SYS' LED starts to blink, press the //QSS// push button repeatedly until the blinking of 'SYS' LED gets faster. **Done** = You made OpenWrt **boot into OpenWrt failsafe mode.** Proceed with [[doc:howto:generic.failsafe#in.failsafe.mode|In OpenWrt Failsafe Mode]] 
 + 
==== Recovery via serial console ==== ==== Recovery via serial console ====
Line 281: Line 524:
 +==== WiFi: Using other country regulations ====
 +Per default the WLan-"Country Code" is set to US. That means users of OpenWRT worldwide are limited to Channel 1-11.
-===== Hardware ===== +To unlock the specific channels of your country, it is possible to [[doc:start#building.openwrt|compile]] OpenWRT with &quot;ATH_USER_REGD&quot; set (recommended), or by patching the kernel modules (see: [[http://luci.subsignal.org/~jow/reghack/]]).
-==== Info ==== +
-| **[[wp>Instruction set|Architecture]]:** | [[wp&gt;MIPS architecture|MIPS]]  | +
-| **Vendor:**          | [[wp&gt;Qualcomm Atheros]] | +
-| **[[doc:techref:Bootloader]]:**    | [[doc:techref:bootloader:uboot|U-Boot]] | +
-| **[[doc:hardware:soc|System-On-Chip]]:**  | AR9132 rev 2 (MIPS 24Kc V7.4) +
-| **[[doc:hardware:cpu|CPU]]/Speed**        | 24Kc V7.4 400 Mhz | +
-| **Flash-Chip:**      | [[http://www.spansion.com/Support/Datasheets/S25FL064P_00_03_e.pdf|ST 25P64V6P]] +
-| **Flash size:**      | 8192 KiB | +
-| **RAM:**            | 32 MiB  | +
-| **Wireless:**        | Atheros AR9103 2.4ghz 802.11bgn | +
-| **Ethernet:**        | [[http://www.realtek.com.tw/products/productsView.aspx?Langid=1&PNid=18&PFid=15&Level=5&Conn=4&ProdID=197|RealTek RTL8366RB 5-port Gigabit switch  w/ vlan support]], [[doc:techref:swconfig]] | +
-| **Internet:**        | n/a  | +
-| **USB:**            | Yes 1 x 2.0 (OHCI platform; device name ''1-1'')   | +
-| **[[doc:hardware:port.serial|Serial]]:**          | [[#Serial|Yes]] | +
-| **[[doc:hardware:port.jtag|JTAG]]:**            | [[#JTAG|Yes]]  |+
 +WARNING: Do this only if you know what you're doing! Using the wrong frequencies can result in interfering with other radio services.
-The Realtek [[http://realtek.info/pdf/rtl8366_8369_datasheet_1-1.pdf|8366RB]] supports: VLAN, Jumbo Frames (not supported by the SoC), bandwidth control, port priority, storm filtering, QoS, ACL. Not all of these features are actually supported by OpenWrt. Supported VLAN IDs are 1-15 (VLAN Configuration Mode 2 ?). See: [[https://dev.openwrt.org/ticket/7977|Ticket #7977]]+ 
 +===== Hardware ===== 
 +==== Info ==== 
 +^ Type ^ HW ver. 1.x ^ HW ver. 2.x ^ 
 +| **[[wp>Instruction set]]:**              |  [[wp>MIPS architecture|MIPS32]]  || 
 +| **Vendor:**                              |  [[wp>Qualcomm Atheros]]  || 
 +| **[[doc:techref:Bootloader]]:**          |  [[doc:techref:bootloader:uboot|U-Boot]] 1.1.4  || 
 +| **[[doc:hardware:soc|System-On-Chip]]:**  |  AR9132 rev 2 (MIPS 24Kc V7.4)  |  QCA9558 (MIPS 74Kc V5.0)  | 
 +| **[[doc:hardware:cpu|CPU]]/Frq**          |  24Kc V7.4 400 MHz  |  74Kc V5.0 720 MHz  | 
 +| **Target name**                          |  [[http://wiki.openwrt.org/tag/ar71xx?do=showtag&tag=ar71xx|ar71xx]]  || 
 +| **Initial flash image**                  |  ''openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-factory.bin''  |  ''openwrt-ar71xx-generic-tl-wr1043nd-v2-squashfs-factory.bin''  | 
 +| **Upgrade image**                        |  ''openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-sysupgrade.bin''  |  ''openwrt-ar71xx-generic-tl-wr1043nd-v2-squashfs-sysupgrade.bin''  | 
 +| **Flash-Chip:**                          |  [[http://www.spansion.com/Support/Datasheets/S25FL064P_00.pdf|ST 25P64V6P]] |  [[http://www.nexflash.com/hq/enu/ProductAndSales/ProductLines/FlashMemory/SerialFlash/W25Q64FV.htm|Winbond 25Q64FV]]  | 
 +| **Flash size:**                          |  8192 KiB  || 
 +| **RAM:**                                  |  32 MiB  |  64 MiB  || 
 +| **Wireless:**                            |  Atheros AR9103 2.4 GHz 802.11bgn  |  QCA9558 2.4 GHz 802.11bgn  |  
 +| **Wireless Power:**                      |  Maximal power output is 24 dBm (251 mW) || 
 +| **802.11n:**                              |  3 x 3 : 2  |  3 x 3 : 3  | 
 +| **[[doc:hardware:Switch]]:**              |  [[http://www.realtek.com.tw/products/productsView.aspx?Langid=1&PNid=18&PFid=15&Level=5&Conn=4&ProdID=197|RealTek RTL8366RB 5-port Gigabit switch  w/ vlan support]]  |  [[http://wikidevi.com/files/Atheros/specsheets/AR8327_AR8327N.pdf|Atheros AR8327N-BL1A]]  | 
 +| **USB:**                                  |  Yes 1 x 2.0 (OHCI platform; device name ''1-1'')  || 
 +| **Power:**                                |  12V DC 1.5A  || 
 +| **[[doc:hardware:port.serial|Serial]]:**  |  [[#Serial|Yes]] || 
 +| **[[doc:hardware:port.jtag|JTAG]]:**      |  [[#JTAG|Yes]]  |  [[#JTAG|No?]]  |
==== Performance ==== ==== Performance ====
-See -> [[doc:hardware:performance]] for results and [[doc:howto:performance]] for help for measuring+  * [[doc:hardware:performance|Filesystems performance]] results and [[doc:howto:performance]] howto for help on measuring
 +  * [[inbox:benchmark.usb|USB Benchmarks]] results. 
 + 
 +This router gets around 180 Megabits/s WAN to LAN throughput, tested using nuttcp.
==== Power ==== ==== Power ====
Line 309: Line 565:
=== Power Consumption === === Power Consumption ===
-With a cheap Wattmeter i measured 6,9W idle and 9W under load.+With a cheap Wattmeter i measured 6.9 W idle and 9 W under load.
=== PSU (power supply) === === PSU (power supply) ===
Line 318: Line 574:
Specifications: Specifications:
-| **Brand/Model** | Leader Electronics Inc / LEI F7 | +^  ^ TL-WR1043ND DE (v1.0) ^ TL-WR1043ND v2.1 ^ 
-| **Input** | 100-240V~ (50/60Hz, 0.6A) | +| **Brand/Model** | Leader Electronics Inc / LEI F7 | TP-LINK Tech. co., ltd.
-| **Output** | 12.0V 1.5A | +| **Input** | 100-240V~ (50/60Hz, 0.6A) |
-| **Measured output** | 12.25V | +| **Output** | 12V 1.5A |
-| The plug (on the router side) has the following specifications: || +| **Measured output** | 12.25V |  12.40V (w/o load) |
-| **Outer diameter** | 5.5mm | +| The plug (on the router side) has the following specifications: ||| 
-| **Inner diameter**| 2.1mm | +| **Outer diameter** | 5.5mm |
-| **Length of the shaft** | 9.5mm |+| **Inner diameter**| 2.1mm |
 +| **Length of the shaft** | 9.5mm ||
I successfully used the ATX PSU (from my computer) to power the router. I successfully used the ATX PSU (from my computer) to power the router.
All I did was buying a plug with above specifications and soldered a Molex-plug to the other end. All I did was buying a plug with above specifications and soldered a Molex-plug to the other end.
-=== Power consumption on DC-Side ===+=== Powering with different Voltages === 
 +:!: ** WARNING: For sure you will lose your warranty if you run the router with too high voltage and I don't guarantee it will work for you. Your router might break, so only run it with too high voltage if you know what you are doing and you don't care if the router breaks. **
-I have measured simultanously Voltage and Current on the DC-Side of the Router with 2 analogue Multimeters.+Because I wanted to run the router directly from solar and the 12V battery can have between 10.4V and 14.8V I tested the router with different voltages and it runs fine with voltages between 10V and 15V. Could not see any failures or loss in performance.
-It looks like my AC-DC Adapter is stabilized and delivers exactly 12 Volts.+=== Power consumption on DC-Side ===
-1. Without LAN Connected, without any USB device, Openwrt Running with WLAN 10dBm (b/g AP mode) : 250mA +I have measured simultaneously voltage and current on the DC-side of the router with 2 analogue multimeters.
-2. With 1x100MBit LAN, 1xHuawei E1750 in idle (not connected) : 320 mA +
-3. With HSDPA Connection active : 400mA+
-The HSDPA Modem seems draw a lot of Power as soon as any Data is transferred. In total i guess approx. 500mA. (Was NOT possible to measure exactly because my Amperemeter is very slow...)+It looks like my AC-DC adapter is stabilized and delivers exactly 12 Volts.
 +  - Without LAN Connected, without any USB device, OpenWrt Running with WLAN 10dBm (b/g AP mode) : 250mA
 +  - With 1x100MBit LAN, 1xHuawei E1750 in idle (not connected) : 320 mA
 +  - With HSDPA Connection active : 400mA
 +
 +The HSDPA modem seems to draw a lot of power as soon as any data is transferred. In total i guess approx. 500mA. (Was NOT possible to measure exactly because my amperemeter is very slow...)
==== Photos ==== ==== Photos ====
-{{:toh:tp-link:tl-wr1043nd-v16.jpg?700|Version 1.6 Main board}}+Photos of v1.X PCB:
-[[http://wiki.openwrt.org/_media/inbox/tl-wr1043nd_v14.jpg|older version: v1.4]] +{{:toh:tp-link:tl-wr1043nd-v16.jpg?400|PCB Board TP-Link TL-WR1043ND v1.6}} 
-[[http://img5.imageshack.us/img5/5152/pcbfront.jpg|Higher Resolution Picture]]+{{:inbox:tl-wr1043nd_v14.jpg?400|PCB Board TP-Link TL-WR1043ND v1.4}} 
 + 
 +Photos of v2.X PCB: 
 + 
 +{{:media:tl-wr1043nd_images_board1.jpg?400|PCB TP-Link TL-WR1043ND v2.1}} 
 +{{:media:tl-wr1043nd_images_board2.jpg?400|PCB TP-Link TL-WR1043ND v2.1}} 
 + 
 +More photos of the v2 version: [[http://galeria.tech-blog.pl/TP-Link_TL-WR1043ND_v2/|TP-Link TL-WR1043ND v2]]
==== Opening/closing the case ==== ==== Opening/closing the case ====
-Note: This will void your warranty! The case of the WR1043N is composed of 4 pieces:+Note: This will void your warranty!  
 + 
 +The case of the WR1043N v1.x is composed of 4 pieces:
  * Top cover (white, with logo)   * Top cover (white, with logo)
Line 374: Line 644:
Pictures can be found [[http://www.flickr.com/photos/19739482@N05/sets/72157624000636958/|here]] Pictures can be found [[http://www.flickr.com/photos/19739482@N05/sets/72157624000636958/|here]]
-=== Putting it back together ===+The case of the WR1043N v2.x is composed of 2 pieces:
 +  * Top cover (black (bluish))
 +  * Bottom cover (gray)
 +
 +1. Remove the four screws on the bottom cover.
 +2. Use a thin object to release the top cover from the bottom cover
 +
 +=== Putting it back together ===
 +V1.x
  - Place the board on the bottom cover, so that the two plastic pins at the front keep it in place.   - Place the board on the bottom cover, so that the two plastic pins at the front keep it in place.
  - If you undid the antenna connectors, put them back in and tighten the nuts.   - If you undid the antenna connectors, put them back in and tighten the nuts.
Line 383: Line 661:
  - Push the front towards the back so the hooks are engaged, then push down the top cover.   - Push the front towards the back so the hooks are engaged, then push down the top cover.
  - Fasten the screws and re-apply the rubber feet.   - Fasten the screws and re-apply the rubber feet.
 +V2.x
 +  - Put the top cover back on
 +  - Press until it clicks back nicely to the bottom cover.
 +  - Put back the screws
 +
==== Serial ==== ==== Serial ====
-> [[doc:hardware:port.serial]] general information about the serial port, serial port cable, etc. -> [[doc:hardware:port.serial]] general information about the serial port, serial port cable, etc.
Line 391: Line 674:
Don’t forget that the **TX pin** of the serial port must linked to the **RX pin** of the router and the RX to TX! Don’t forget that the **TX pin** of the serial port must linked to the **RX pin** of the router and the RX to TX!
-Speed: 115200 baud+Bits per second: **115200**\\ 
 +Data bits: **8**\\ 
 +Parity: **None**\\ 
 +Stop bits: **1**\\ 
 +Flow control: **None**\\ 
 + 
 +{{:media:tl-wr1043nd_serial_pinouts.jpg|Serial Pinouts}} 
 + 
 +If you use the serial connection more often or want to have a permanent modification you can build a stereo audio jack at the back of the router and use the FTDI serial cable TTL-232R-3V3-AJ. As jumper wire you can recycle an old floppy drive power cable. 
 + 
 +{{:media:wr1043ndserjack.jpg?400|}} 
 + 
 +=== Receive (RX) Disabled === 
 + 
 +Some revisions of v1.x require a jumper between the RX serial pin and the resistor R362 to enable serial writes. See this post for details: 
 + 
 +[[https://forum.openwrt.org/viewtopic.php?pid=176448#p176448]] 
 + 
 +If you find that the serial console will not accept write commands, check with a multimeter that you have continuity between RX and R362.  
 + 
 +If you don't have continuity you will need to jumper them, here is my working example: 
 + 
 +{{:media:tl-wr1043nd.rxjumper.png?400|}} 
 + 
 +I went to the right hand side of the resistor for ease of soldiering, but there may be better solutions.
-{{:inbox:wr1043ndserial.jpg|}}+I also noticed that the small hole just below R362 has continuity to the RX pin so that may provide a cleaner solution with a much smaller jumper.
==== JTAG ==== ==== JTAG ====
-> [[doc:hardware:port.JTAG]] general information about the JTAG port, JTAG cable, etc. -> [[doc:hardware:port.JTAG]] general information about the JTAG port, JTAG cable, etc.
-{{:inbox:TL-WR1043ND_JTagport.jpg?700|}}+{{:inbox:TL-WR1043ND_JTagport.jpg?400|}}
JTAG Line: JTAG Line:
Line 411: Line 718:
Backup: Backup:
-Backup wholeflash:+Backup whole flash:
<code> <code>
Line 434: Line 741:
At the moment it is <b>NOT</b> possible to <b>UNBRICK</b> the router by <b>JTAG</b> (no write access to flashrom).</p> At the moment it is <b>NOT</b> possible to <b>UNBRICK</b> the router by <b>JTAG</b> (no write access to flashrom).</p>
</HTML> </HTML>
-so be very carefull not to overwrite the u-boot.+so be very careful not to overwrite the u-boot.
Line 444: Line 751:
^        ^              ^            ^  Voltage level at GPIO in output-mode  ^^  gpioX/value in input-mode when GPIO is: ^^^ ^        ^              ^            ^  Voltage level at GPIO in output-mode  ^^  gpioX/value in input-mode when GPIO is: ^^^
^  GPIO  ^  Common Name  ^  PCB Name  ^  gpioX/value=1  ^ gpioX/value=0        ^  Floating  ^  Pulled to GND  ^  Pulled to Vcc  ^ ^  GPIO  ^  Common Name  ^  PCB Name  ^  gpioX/value=1  ^ gpioX/value=0        ^  Floating  ^  Pulled to GND  ^  Pulled to Vcc  ^
-|      0 |              |            |                 |                       |            |                 |                 |+|      0 |              |  ->R713    |            3.3V |                   0V |         1 |               0 |       1 |
|      1 |  USB          |  D18=D9    |              0V |                  3.3V |          1 |              1 |        1 | |      1 |  USB          |  D18=D9    |              0V |                  3.3V |          1 |              1 |        1 |
|      2 |  SYS          |  D19=D8    |              0V |                  3.3V |          1 |              1 |        1 | |      2 |  SYS          |  D19=D8    |              0V |                  3.3V |          1 |              1 |        1 |
Line 459: Line 766:
|    13 |  P1-Rx        |            |            3.3V |                    0V |          0 |              0 |        1 | |    13 |  P1-Rx        |            |            3.3V |                    0V |          0 |              0 |        1 |
|    14 |              |            |                |                      |            |                |                  | |    14 |              |            |                |                      |            |                |                  |
-|    15 | USB PSU EN?  | ->R711    |            3.3V |                    0V |          1 |                 |        1         +|    15 | USB PSU EN?  | ->R711    |            3.3V |                    0V |          1 |               0 |        1 | 
-|    16 | USB PSU CHK?  | ->R708    |            3.3V |                    0V |          1 |                 |                 |+|    16 | USB PSU CHK?  | ->R708    |            3.3V |                    0V |          1 |               0 |       1 |
|    17 |              |            |                |                      |            |                |                  | |    17 |              |            |                |                      |            |                |                  |
|    18 |  Data line of the RTL8366RB                                                                          ||||||| |    18 |  Data line of the RTL8366RB                                                                          |||||||
Line 499: Line 806:
//:!: Note: you don't need to configure or activate buttons to get the [[toh:tp-link:tl-wr1043nd#failsafe.mode|Failsafe mode]] working, it will work by default.// //:!: Note: you don't need to configure or activate buttons to get the [[toh:tp-link:tl-wr1043nd#failsafe.mode|Failsafe mode]] working, it will work by default.//
 +
 +//:!: Note2: From versions 1.8 up to 2.x holding the reset button for more than 30' resets to OpenWRT initial settings.//
===== Debricking ===== ===== Debricking =====
Line 505: Line 814:
**NOTE:** If you accidentally bricked your router by overwriting the bootloader, try the following: **NOTE:** If you accidentally bricked your router by overwriting the bootloader, try the following:
  - Desolder the Spansion SPI-Flash ([[http://www.spansion.com/Support/Datasheets/S25FL064P_00.pdf|here]] is the datasheet) from the board. I used tin foil to "mask" out everything else which I did not want to desolder and used a heat gun. It worked quite nice.   - Desolder the Spansion SPI-Flash ([[http://www.spansion.com/Support/Datasheets/S25FL064P_00.pdf|here]] is the datasheet) from the board. I used tin foil to "mask" out everything else which I did not want to desolder and used a heat gun. It worked quite nice.
-  - Find a way to connect the SPI flash to something with SPI interface.... I used a AVR microcontroller. {{:toh:tp-link:spi_flash1.pdf|Here}} you can download a pdf containing the layout for the adapter board I made to solder the Spansion SPI flash chip on, in order to connect it to the AVR. Attention, the PDF is mirrored and it is intended to manufacuring boards with the [[http://thomaspfeifer.net/direct_toner_pcb.htm | direct toner method]].+  - Find a way to connect the SPI flash to something with SPI interface.... I used a AVR microcontroller. {{:toh:tp-link:spi_flash1.pdf|Here}} you can download a pdf containing the layout for the adapter board I made to solder the Spansion SPI flash chip on, in order to connect it to the AVR. Attention, the PDF is mirrored and it is intended to manufacturing boards with the [[http://thomaspfeifer.net/direct_toner_pcb.htm | direct toner method]].
  - Write the bootloader into the flash. I got my bootloader out of another wr1043nd.   - Write the bootloader into the flash. I got my bootloader out of another wr1043nd.
  - Solder the chip back into the router.   - Solder the chip back into the router.
Line 609: Line 918:
{{:inbox:tplink-wr1043nd-rammod-small.jpg|}} {{:inbox:tplink-wr1043nd-rammod-small.jpg|}}
- 
-**To make router see all new 64 mb of RAM do via putty SSH client** 
-<code> 
-1.nvram set sdram_init=0x0013 
-2.nvram commit 
-3.reboot 
-</code> 
<code> <code>
Line 626: Line 928:
==== I²C GPIO Mod ==== ==== I²C GPIO Mod ====
-An I²C-bus can easily be added using the GPIO-lines of the AR913x-SoC. So far, the only usable ones which have been confirmed to work are GPIO 5 (the QSS-LED, easily solderable at D10,left pin with '+') as SDA and GPIO 20 (labeled on the pcb, next to the RAM chip) as SCL. There are only two pull-up resistors of 4,7k-10k needed, which have to be soldered between the apropriate GPIO line and Vcc (found at the spot labeled TP3V3, about 2 cm above the WiFi-shielding). The common ground can be obtained from the TP_GND spot (between P1 and the flash chip). Remember this bus runs at 3.3V level, when connecting I²C-devices. \\ +An I²C-bus can easily be added using the GPIO-lines of the AR913x-SoC. So far, the only usable ones which have been confirmed to work are GPIO 0 (the unpopulated R713 located in the bottom right corner of the SoC, using the pad facing R714), GPIO 5 (the QSS-LED, easily soldered at D10,left pin with '+') and GPIO 20 (labeled on the pcb, next to the RAM chip, easily soldered from the bottom side). Using GPIO 0 and 20 may be the best choice, as they are not used, so there are no issues about removing the LED driver(bindings) or pcb components. If GPIO 5 has to be used, it should be used for SDA (it has less level changes than SCL). There are only two pull-up resistors of 4,7k-10k needed, which have to be soldered between the appropriate GPIO line and Vcc (found at the spot labeled TP3V3, about 2 cm above the WiFi-shielding). The common ground can be obtained from the TP_GND spot (between P1 and the flash chip). Remember this bus runs at 3.3V level, when connecting I²C-devices. \\ 
-To improve signal integrity (in this case namely a solid logic low level on GPIO5), you can replace R373 with a piece of wire and remove the LED D31. R373 seems to be the current limit resistor for the LED D31.+To improve signal integrity (in this case namely a solid logic low level on GPIO 5), you can replace R373 with a piece of wire and remove the LED D31. R373 seems to be the current limit resistor for the LED D31.
{{ http://wiki.openwrt.org/_media/toh/tp-link/i2c-gpio.png }} {{ http://wiki.openwrt.org/_media/toh/tp-link/i2c-gpio.png }}
-Unfortunately the precompiled packages don't seem to work properly, so building from sources is most likely necessary. Therefore, make sure the apropriate part of your OpenWRT-config file looks like that: 
 +Make sure to install package kmod-i2c-gpio-custom.
 +To load the kernel module (with SCL=GPIO 0 and SDA=GPIO 20), do a:
<code> <code>
-+insmod i2c-gpio-custom bus0=0,20,0
-# I2C support +
-+
-CONFIG_PACKAGE_kmod-i2c-core=y +
-CONFIG_PACKAGE_kmod-i2c-algo-bit=y +
-# CONFIG_PACKAGE_kmod-i2c-algo-pca is not set +
-# CONFIG_PACKAGE_kmod-i2c-algo-pcf is not set +
-CONFIG_PACKAGE_kmod-i2c-gpio=y +
-CONFIG_PACKAGE_kmod-i2c-gpio-custom=y+
</code> </code>
- +If your I2C-bus runs successfully, you can enable it on boot by creating a file in /etc/modules.d called &quot;55-i2c-gpio-custom&quot; with the options appropriate to your bus configuration. For example:
-Besides that, check in the kernel-config, that the support for I²C character device is selected. In the kernel config file the appropriate line should look like that: +
-&lt;code&gt; +
-CONFIG_I2C_CHARDEV=m +
-</code> +
-To load the kernel module, do a:+
<code> <code>
-insmod i2c-gpio-custom bus0=0,5,20+i2c-gpio-custom bus0=0,20,0
</code> </code>
-In many cases, GPIO 5 will already be occupied by the leds-gpio kernel module - causing the above command to fail. In case you don't need the leds at all, you can just unload the leds-gpio kernel module, remove the package or disable it in the OpenWRT-configuration. As an alternative, you can just release the binding of the QSS-LED in sysfs - thus keeping the function of the other LEDs. 
-==== I²C Tiny-USB Mod ====+A more convenient way to add an I2C-bus to this router, without a modification of the internal hardware (and risking your warranty), is using the [[doc:howto:usb.i2c-tiny-usb|I²C Tiny-USB]] adapter. The downsides are, that it is not as cheap as the I²C-GPIO mod, and the longterm-stability is lower (temporary USB disconnects can occur randomly or due to EMI, but the I2C-subsystem is not designed for sudden disconnects). Remember this bus runs at 5V level, when connecting I²C-devices. 
 + 
 +==== Flash Mod ==== 
 +You can install 16 MB flash Winbound 25Q128
-Though not really a modification of the internal hardware, the [[doc:howto:usb.i2c-tiny-usb|I²C Tiny-USB]] adapter allows you to extend your router with an I²C bus over USB. It is not as cheap as the I²C-GPIO mod, but will not risk your warranty. Remember this bus runs at 5V level, when connecting I²C-devices. 
===== Custom IPv6 image for wr1043nd ===== ===== Custom IPv6 image for wr1043nd =====
Line 661: Line 952:
a custom image with ipv6 support: radvd, wide-dhcpv6, 3g stick support, made for RCS-RDS Fiberlink dual stack PPPoE service, a custom image with ipv6 support: radvd, wide-dhcpv6, 3g stick support, made for RCS-RDS Fiberlink dual stack PPPoE service,
but should be okay for static wan settings on other ISPs: but should be okay for static wan settings on other ISPs:
-http://www.ip6.ro/firmware/wr1043nd/+http://www.superwrt.eu/firmware/tp-link-wr1043nd/ 
 + 
 +===== Other models with the same hardware ===== 
 + 
 +  * [[http://www.canyon-tech.com/archive/connectivity/wireless/CNP-WF514N3A|Canyon CNP-WF514N3A]] description and internal photos [[http://www.dd-wrt.com/phpBB2/viewtopic.php?t=148618|here]] 
 +  * [[http://www.proware.com.cn/product-detail.asp?productId=1010195&t=4#info|Proware PW-RN611D/MH5-WR1043ND]] probably another clone... 
 +  * [[http://wiki.openwrt.org/toh/tp-link/tl-wdr7500|TP-Link TL-WDR7500]] TP-Link TL-WDR7500 / TP-Link Archer C7 AC1750 (similar hardware to v2.1)
===== Tags ===== ===== Tags =====
-{{tag>GigabitEthernet 5Port 1PHY USB JTAG 802.11bgn ath9k 3Ant DetachableAntenna 32RAM 8Flash MIPS MIPS32 24Kc JumboFrames vlan}}+{{tag>GigabitEthernet 5Port 1NIC 1WNIC USB JTAG 802.11bgn ath9k 3Ant DetachableAntenna 32RAM 64RAM 8Flash MIPS MIPS32 24Kc 74Kc QCA9558 JumboFrames vlan AR9132 ar71xx atheros-ap83}}

Back to top

toh/tp-link/tl-wr1043nd.1356740193.txt.bz2 · Last modified: 2012/12/29 01:16 by europhil