Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision | ||
| toh:tp-link:tl-wa801nd [2017/09/03 08:54] – [Hardware Highlights] r3sist3nt | toh:tp-link:tl-wa801nd [2024/12/06 11:38] – [Supported Versions] frollic | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== TP-Link TL-WA801ND ====== | ||
| + | ==== Special note for versions v1-4 + v6; v5 is supported ==== | ||
| + | |||
| + | {{section> | ||
| + | |||
| + | ===== Supported Versions ===== | ||
| + | |||
| + | Only v5 is still supported. | ||
| + | |||
| + | <!-- ToH: { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } --> | ||
| + | |||
| + | |||
| + | ===== Hardware Highlights ===== | ||
| + | <!-- ToH: { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } --> | ||
| + | |||
| + | |||
| + | ===== Installation ===== | ||
| + | <!-- ToH: { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } --> | ||
| + | |||
| + | ==== Locked Firmware ==== | ||
| + | Since v3 hardware, TP-Link has started shipping with the new locked TP-link firmware. | ||
| + | However, this does not work with v4. Use the Workaround below instead. | ||
| + | |||
| + | ==== Firmware Workaround ==== | ||
| + | A workaround for the locked firmware has been found, based on Keyboardgnome' | ||
| + | |||
| + | To use the workaround, set the device' | ||
| + | |||
| + | < | ||
| + | `echo "httpd -k"> | ||
| + | `echo "sleep 10">> | ||
| + | `echo "httpd -r&">> | ||
| + | `echo "sleep 10">> | ||
| + | `echo "httpd -k">> | ||
| + | `echo "sleep 10">> | ||
| + | `echo "httpd -f">> | ||
| + | `sh /tmp/s` | ||
| + | </ | ||
| + | |||
| + | After the reboot sequence, the router may have fallen back to its default IP address : 192.168.0.254, | ||
| + | |||
| + | Rename the downloaded firmware to firmware.bin | ||
| + | |||
| + | Log in to the web interface and go the the firmware upload page | ||
| + | |||
| + | Select the correct firmware file, and you're done : the system now accepts the openwrt image 8-) | ||
| + | ===== Unsorted ===== | ||
| + | |||
| + | ...Not Tested... | ||
| + | ==== WA801ND v3 Hardware overview ==== | ||
| + | |||
| + | {{http:// | ||
| + | {{http:// | ||
| + | |||
| + | Some weeks ago i’ve succesfully ported OpenWrt to the TP-Link TL WA801ND v3, that access point features 2×2 MIMO, detachable antennas, 32 MBytes of ram and 4 Mbytes of flash. | ||
| + | It is based, like most new tp-link devices on a Qualcomm Atheros system on chip (QCA9533-BL3A) which integrates the MIPS core, ethernet switch and wifi hardware. | ||
| + | |||
| + | ==== Accessing the WA801ND v3 serial port ==== | ||
| + | |||
| + | Out of the box even if the serial header is present and has the typical TP-Link pinout, it won’t work, because some resistors are missing from the board, namely R105 and R107. | ||
| + | TL-WA801ND v3 solder bridge required | ||
| + | Solder bridge on R105 required to receive data from the serial port | ||
| + | TL-WA801ND v3 solder bridge required | ||
| + | Solder bridge on R107 to allow sending to serial port | ||
| + | |||
| + | The serial port settings are, as usual 115200 baud and to enter uboot prompt you have to quickly type “tpl” when it says that it is waiting 1 second. | ||
| + | |||
| + | ==== Installing from the web interface ==== | ||
| + | |||
| + | |||
| + | OpenWrt trunk builds can be installed using the original tp-link firmware from the web interface. | ||
| + | In order to do that download openwrt trunk build for the device, under the directory ar71xx there should be in trunk a file named openwrt-ar71xx-generic-tl-wa801nd-v3-squashfs-factory.bin , download it and rename it to a.bin ( tested working, but maybe anything works ), and use it to upgrade the access point from the web interface. | ||
| + | Once you uploaded the file, wait for the device to reboot, when it reboots currently , no leds will be lit. | ||
| + | That’s because by default no led is assigned to anything, maybe i should do some patch to fix that in the future. | ||
| + | To configure it connect with ssh to 192.168.1.1 ( DHCP should be enabled by default too ), or if you have built an image with luci, just navigate to http:// | ||
| + | |||
| + | source: [[http:// | ||
| + | |||
| + | |||
| + | ==== Installing on v5 ==== | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Pre-built images are available starting with release 19.07. | ||
| + | |||
| + | Don't try to update the firmware from the web interface, it'll brick your device. Anyway, to install it (or unbrick): | ||
| + | |||
| + | * rename the bin/ | ||
| + | * put it in your tftp folder | ||
| + | * the router expects TFTP at **192.168.0.66** | ||
| + | * power device on with reset button pressed until the rightmost led is lit (the lock) to enter TFTP recovery mode | ||
| + | |||
| + | Once it's installed, do a normal sysupgrade with the squashfs image you built, also found in bin dir of the sources | ||
| + | |||
| + | |||
| + | ===== Bootlogs ===== | ||
| + | ==== OEM bootlog ==== | ||
| + | |||
| + | OEM bootlog from tl-wa801nd-v1 | ||
| + | |||
| + | <WRAP bootlog> | ||
| + | < | ||
| + | |||
| + | AP93 (ar7240) U-boot | ||
| + | DRAM: | ||
| + | sri | ||
| + | #### TAP VALUE 1 = 7, 2 = 8 | ||
| + | 32 MB | ||
| + | id read 0x100000ff | ||
| + | flash size 4194304, sector count = 64 | ||
| + | Flash: | ||
| + | Using default environment | ||
| + | |||
| + | In: serial | ||
| + | Out: | ||
| + | Err: | ||
| + | Net: | ||
| + | No valid address in Flash. Using fixed address | ||
| + | : cfg1 0xf cfg2 0x7014 | ||
| + | eth0: 00: | ||
| + | eth0 up | ||
| + | No valid address in Flash. Using fixed address | ||
| + | : cfg1 0xf cfg2 0x7214 | ||
| + | eth1: 00: | ||
| + | ATHRS26: resetting s26 | ||
| + | ATHRS26: s26 reset done | ||
| + | eth1 up | ||
| + | eth0, eth1 | ||
| + | Autobooting in 1 seconds | ||
| + | ## Booting image at 9f020000 ... | ||
| + | | ||
| + | |||
| + | Starting kernel ... | ||
| + | |||
| + | Booting AR7240(Python)... | ||
| + | Linux version 2.6.15--LSDK-7.3.0.300 gcc version 3.4.4 #1 Mon Feb 14 14:32:06 CST 2011 | ||
| + | flash_size passed from bootloader = 4 | ||
| + | CPU revision is: 00019374 | ||
| + | Determined physical RAM map: | ||
| + | | ||
| + | User-defined physical RAM map: | ||
| + | | ||
| + | Built 1 zonelists | ||
| + | Kernel command line: console=ttyS0, | ||
| + | Primary instruction cache 64kB, physically tagged, 4-way, linesize 32 bytes. | ||
| + | Primary data cache 32kB, 4-way, linesize 32 bytes. | ||
| + | Synthesized TLB refill handler (20 instructions). | ||
| + | Synthesized TLB load handler fastpath (32 instructions). | ||
| + | Synthesized TLB store handler fastpath (32 instructions). | ||
| + | Synthesized TLB modify handler fastpath (31 instructions). | ||
| + | Cache parity protection disabled | ||
| + | PID hash table entries: 256 (order: 8, 4096 bytes) | ||
| + | Using 200.000 MHz high precision timer. | ||
| + | Dentry cache hash table entries: 8192 (order: 3, 32768 bytes) | ||
| + | Inode-cache hash table entries: 4096 (order: 2, 16384 bytes) | ||
| + | Memory: 30548k/ | ||
| + | Mount-cache hash table entries: 512 | ||
| + | Checking for ' | ||
| + | NET: Registered protocol family 16 | ||
| + | Returning IRQ 48 | ||
| + | AR7240 GPIOC major 0 | ||
| + | squashfs: version 3.3 (2007/ | ||
| + | squashfs: LZMA suppport for slax.org by jro | ||
| + | Initializing Cryptographic API | ||
| + | io scheduler noop registered | ||
| + | io scheduler deadline registered | ||
| + | Serial: 8250/16550 driver $Revision: #1 $ 1 ports, IRQ sharing disabled | ||
| + | serial8250.0: | ||
| + | RAMDISK driver initialized: | ||
| + | PPP generic driver version 2.4.2 | ||
| + | PPPoX init, max protocols:3 | ||
| + | NET: Registered protocol family 24 | ||
| + | pppox protocol 0 register. max:3 | ||
| + | cmdlinepart partition parsing not available | ||
| + | Searching for RedBoot partition table | ||
| + | 5 RedBoot partitions found on MTD device ar7240-nor0 | ||
| + | Creating 5 MTD partitions on " | ||
| + | 0x00000000-0x00020000 : " | ||
| + | 0x00020000-0x00120000 : " | ||
| + | 0x00120000-0x003e0000 : " | ||
| + | 0x003e0000-0x003f0000 : " | ||
| + | 0x003f0000-0x00400000 : " | ||
| + | ->Oops: flash id 0x10215 . | ||
| + | NET: Registered protocol family 2 | ||
| + | IP route cache hash table entries: 512 (order: -1, 2048 bytes) | ||
| + | TCP established hash table entries: 2048 (order: 1, 8192 bytes) | ||
| + | TCP bind hash table entries: 2048 (order: 1, 8192 bytes) | ||
| + | TCP: Hash tables configured (established 2048 bind 2048) | ||
| + | TCP reno registered | ||
| + | TCP bic registered | ||
| + | NET: Registered protocol family 1 | ||
| + | NET: Registered protocol family 17 | ||
| + | 802.1Q VLAN Support v1.8 Ben Greear < | ||
| + | All bugs added by David S. Miller < | ||
| + | VFS: Mounted root (squashfs filesystem) readonly. | ||
| + | Freeing unused kernel memory: 128k freed | ||
| + | init started: | ||
| + | Algorithmics/ | ||
| + | ip_conntrack version 2.4 (256 buckets, 5120 max) - 244 bytes per conntrack | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | insmod: cannot open module `/ | ||
| + | Now flash open! | ||
| + | Now flash open! | ||
| + | sys_mode=3 mac: | ||
| + | 2 | ||
| + | sys_mode=3 mac: | ||
| + | 1 | ||
| + | sys_mode 3 PHY4 auto-negotiation enable | ||
| + | Attention: PHY4 Class A setting in debug 5 register which is not described in DS | ||
| + | phy_setup ethUnit:0 phyUnit:4 | ||
| + | Port 4, Neg Success | ||
| + | |||
| + | | ||
| + | (none) login: ATHRS26: resetting s26 | ||
| + | ATHRS26: s26 reset done | ||
| + | sys_mode 3 PHY0 auto-negotiation enable | ||
| + | Attention: PHY 0 Class A setting in debug 5 register which is not described in DS | ||
| + | sys_mode 3 PHY1 auto-negotiation enable | ||
| + | Attention: PHY 1 Class A setting in debug 5 register which is not described in DS | ||
| + | sys_mode 3 PHY2 auto-negotiation enable | ||
| + | Attention: PHY 2 Class A setting in debug 5 register which is not described in DS | ||
| + | sys_mode 3 PHY3 auto-negotiation enable | ||
| + | Attention: PHY 3 Class A setting in debug 5 register which is not described in DS | ||
| + | phy_setup ethUnit:1 phyUnit:0 | ||
| + | phy_setup ethUnit:1 phyUnit:1 | ||
| + | phy_setup ethUnit:1 phyUnit:2 | ||
| + | phy_setup ethUnit:1 phyUnit:3 | ||
| + | Port 0, Neg Success | ||
| + | Port 1, Neg Success | ||
| + | Port 2, Neg Success | ||
| + | Port 3, Neg Success | ||
| + | device eth0 entered promiscuous mode | ||
| + | Now flash open! | ||
| + | phy_setup ethUnit:1 phyUnit:0 | ||
| + | phy_setup ethUnit:1 phyUnit:1 | ||
| + | phy_setup ethUnit:1 phyUnit:2 | ||
| + | phy_setup ethUnit:1 phyUnit:3 | ||
| + | Port 0, Neg Success | ||
| + | Port 1, Neg Success | ||
| + | Port 2, Neg Success | ||
| + | Port 3, Neg Success | ||
| + | ath_hal: module license ' | ||
| + | ath_hal: 0.9.17.1 (AR5416, DEBUG, REGOPS_FUNC, | ||
| + | wlan: 0.8.4.2 (Atheros/ | ||
| + | ath_rate_atheros: | ||
| + | ath_dev: Copyright (c) 2001-2007 Atheros Communications, | ||
| + | ++++ phy_up is 1, fdx is 1, speed is 1 | ||
| + | AG7240: enet unit:1 phy:0 is up...Mii 100Mbps full duplex | ||
| + | AG7240: enet unit 1 phy 0 mode 0x4c04 | ||
| + | ath_pci: 0.9.4.5 (Atheros/ | ||
| + | wifi0: Atheros 9280: mem=0x10000000, | ||
| + | br0: port 1(eth0) entering learning state | ||
| + | br0: topology change detected, propagating | ||
| + | br0: port 1(eth0) entering forwarding state | ||
| + | wlan_me: Version 0.1 | ||
| + | Copyright (c) 2008 Atheros Communications, | ||
| + | wlan: mac acl policy registered | ||
| + | |||
| + | TP_Flags: | ||
| + | The selected channel is 1 | ||
| + | Country ie is US | ||
| + | Country ie is US | ||
| + | maxrate = 300000 | ||
| + | Country ie is US | ||
| + | br0: port 1(eth0) entering disabled state | ||
| + | phy_setup ethUnit:1 phyUnit:0 | ||
| + | phy_setup ethUnit:1 phyUnit:1 | ||
| + | phy_setup ethUnit:1 phyUnit:2 | ||
| + | phy_setup ethUnit:1 phyUnit:3 | ||
| + | Port 0, Neg Success | ||
| + | Port 1, Neg Success | ||
| + | Port 2, Neg Success | ||
| + | Port 3, Neg Success | ||
| + | device ath0 entered promiscuous mode | ||
| + | br0: port 2(ath0) entering learning state | ||
| + | br0: topology change detected, propagating | ||
| + | br0: port 2(ath0) entering forwarding state | ||
| + | br0: port 2(ath0) entering disabled state | ||
| + | Country ie is US | ||
| + | br0: port 2(ath0) entering learning state | ||
| + | br0: topology change detected, propagating | ||
| + | br0: port 2(ath0) entering forwarding state | ||
| + | phy_up is 1, fdx is 1, speed is 1 | ||
| + | AG7240: enet unit:1 phy:0 is up...Mii 100Mbps full duplex | ||
| + | AG7240: enet unit 1 phy 0 mode 0x4c04 | ||
| + | br0: port 1(eth0) entering learning state | ||
| + | br0: topology change detected, propagating | ||
| + | br0: port 1(eth0) entering forwarding state | ||
| + | br0: port 2(ath0) entering disabled state | ||
| + | Country ie is US | ||
| + | br0: port 2(ath0) entering learning state | ||
| + | br0: topology change detected, propagating | ||
| + | br0: port 2(ath0) entering forwarding state | ||
| + | |||
| + | OPERMODE: | ||
| + | Inteference detected | ||
| + | rx_clear=99, | ||
| + | ath_bstuck_tasklet... Calling ath_internal reset | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ===== Tags ===== | ||
| + | [[meta: | ||
| + | {{tag> | ||