The TP-Link TL-MR3420 is a Fast Ethernet b/g/n 300M (two 3 dBi omni-antennas) wireless router with USB 2.0.
The TP-Link TL-MR3220 is a Fast Ethernet b/g/n Lite-N 150M (one 5 dBi omni-antennae) wireless router with USB 2.0.
The TP-Link TL-WR842ND is a Fast Ethernet b/g/n 300M (two 5 dBi omni-antennas) wireless router with USB 2.0.
The TP-Link TL-WR841ND v7 is a Fast Ethernet b/g/n 300M (two 3 dBi omni-antennas) wireless router without USB 2.0, but has a header in place.
The failsafe function is not working at launch time, serial is also unfriendly: Stick to trunk. More...
Snapshot images are always risky. Check the forum discussion for latest opinions on available images.
Has known bugs, read carefully: #12135, #12143.
| Model |
CPU |
Ram |
Flash |
Network |
USB |
Serial |
JTag |
| MR3420 |
AP99 Atheros AR7241@400MHz |
32 MiB |
4 MiB |
4 x 1 |
2.0 |
Yes |
No |
| MR3220 |
AP99 Atheros AR7241@400MHz |
32 MiB |
4 MiB |
4 x 1 |
2.0 |
Yes |
No |
| WR841ND v7 |
AP99 Atheros AR7241@400MHz |
32 MiB |
4 MiB |
4 x 1 |
Header |
Yes |
No |
| WR842ND |
AP99 Atheros AR7241@400MHz |
32 MiB |
8 MiB |
4 x 1 |
2.0 |
Yes |
No |
TL-MR3420,
TL-WR841ND v7 &
TL-WR842ND: Atheros AR9287 wireless chip. Single-band, 2x2 MIMO configuration
TL-MR3220: Atheros AR9285 wireless chip. Single-stream (no MIMO, Lite-N)
This section details what is required to install and upgrade OpenWrt. First we link to software that you should download before you start reading the instructions on how to install.
Please double-check if the image revision you are downloading is newer than supported by the "Model Version" of your router.
-
Download latest original firmware for your router
MR3420/
MR3220/
WR842ND just in case upgrade goes wrong and need it to recover Internet access.
This section deals with how you install OpenWrt from a device freshly opened. Plus the steps required such as reset to factory defaults if the device has already been configured
Note: Reset router to factory defaults if it has been previously configured.
Note: Newer TP-Link retail firmwares (confirmed on v2.4 devices, but definitely not on v2.0) include a crude mechanism to prevent you uploading unsuitable firmware. It does this by checking the filename, so you may need to rename the *-factory.bin file to the name of a TP-Link retail firmware file. e.g. wr741nv1_en_3_12_4_up(100910).bin (not necessary with firmware V4_120320)
-
Login with user name: admin password: admin
Use left navigation panel and go to System Tools

Navigate to
- Factory Defaults and click on
Restore if it has been previously configured.
Then navigate to - Firmware Upgrade
Upload previously chosen -factory.bin file to router
Click on Upgrade button and wait for it to reboot

Do NOT turn off the power during upgrade
Wait about 120 seconds to start up, see SYS LED activity.
If the router's IP (192.168.1.1) doesn't repond to ping, try clear ARP cache on your machine
arp -d
Don't clear your browser cache! Please report
here what you installed, if do
http://192.168.1.1/ work anyway and which
link let you get in. Successful ones have

removed. This only happen once, so your input is important.

Clear your browser cache if you are sure some web interface is installed, but can't access to
http://192.168.1.1/
Set a root password
Once password has been setup Telnet is no longer available, use
SSH instead to connect.
Install the OpenWrt image using "Firmware Upgrade" from the orginal firmware.
Download openwrt-ar71xx-generic-tl-mr3420-v1-squashfs-factory.bin
Connect your pc via serial interface.
use a tftpd server name the the firmware code.bin and set your ip to 192.168.1.27
power on the router, and type tpl if "Autoboot in .." occurs (type fast!)
if it works you now should see: ar7100>
Now you should type the following:
ar7100> erase 0x9f020000 +0x3c0000
ar7100> tftpboot 0x81000000 code.bin
ar7100> cp.b 0x81000000 0x9f020000 0x3c0000
ar7100> bootm 0x9f020000
(source: http://eko.one.pl/?p=openwrt-mr3420)
The following procedure was tested with a TL-WR842ND.
Enter failsafe mode:
remove the power plug from the router
press and hold the RESET button
insert the power plug
release the RESET button
Some seconds later no LED besides the one for USB (and maybe for attached ethernet ports) should be lit.
The device now uses the IP 192.168.1.86. It repeatedly tries to download a file named wr842ndv1_tp_recovery.bin from a tftpd server with the IP 192.168.1.66. You can verify these continuous requests with a network sniffer (e.g. tcpdump or wireshark).
The following steps will serve an openwrt fimrware image to the device:
download an appropriate firmware file (e.g. openwrt-ar71xx-generic-tl-wr842n-v1-squashfs-factory.bin)
create a symlink or rename the file: ln -s openwrt-ar71xx-generic-tl-wr842n-v1-squashfs-factory.bin wr842ndv1_tp_recovery.bin
configure the static IP 192.168.1.66 for your local ethernet interface
connect your computer to one of the LAN ports of the router
install a tftpd server (e.g. atftpd)
run the tftpd server and let it serve the directory that contains the above firmware image: atftpd –no-fork –daemon FIRMWARE_DIRECTORY
the router immediately starts to download the firmware image
after some time you will see all LEDs flashing once followed by a normal restart of the router
| Model |
MR3420 |
MR3220 |
| Version |
1 |
1.1 |
1.2 |
1 |
1.2 |
| Architecture: |
MIPS 24Kc V7.4 |
| Manufacturer: |
Atheros |
| Bootloader: |
U-Boot |
| System-On-Chip: |
Atheros AR7241@400MHz |
| Flash chip: |
MACRONIX MX25L3206E |
cFeon F32-100HIP |
Winbond W25Q32BV |
Spansion FL032PIF |
cFeon F32-100HIP |
| Flash size: |
4 MiB |
| RAM chip: |
Zentel A3S56D40FTP -G5 |
 |
Zentel A3S56D40FTP -G5 |
| RAM size: |
32 MiB |
| Wireless |
Atheros AR9287 (2x2 MIMO 300Mbps) |
Atheros AR9285 (1x1 MIMO 150Mbps) |
| Antenae(s) |
2 Removables x 3 dBi |
1 Removable x 5 dBi |
| Ethernet: |
AG71xx 4 LAN, 1 WAN 100/10 |
| USB: |
1 x 2.0 |
| Serial: |
Unfriendly |
| JTAG: |
No |
| 1 |
2 |
3 |
4 |
| TX |
RX |
GND |
VCC |
|
SJ1 |

Pin 1 is clearly marked on the board.
To get the serial connection work reliably, you have to connect a 10k pullup resistor between the TX and the 3.3V pin. This is because the TX pin is connected to a voltage divider (2x5.6k) and a capacitor is put between the real pin and the TX connector. 3)
Now connect a serial hack adapter (DKU-5, CA-42 or similar containing the PL-2303 chip) and away you go!
The right settings for accessing the serial console are as follows:
Bits per second: 115200
Data bits: 8
Stop bits: 1
Parity: None
Flow control: None
Password to get into uboot prompt is tpl
Password to get root login is 5up
Since this part is identical for all devices, see Basic configuration.
Note: (TP-Link MR4320 v1.2) In case the vlan switch configuration is not created automagically (⇐ 10.03.1) and there is eth0 and eth1 after bootup change /etc/config/network to reflect the vlan setup by adding the lines below. Also replace the 'option ifname "ethX"' accordingly (eth0.1, eth0.2). The proper ethernet port layout has still to be confimed.
config switch eth0
option reset 1
option enable_vlan 1
config switch_vlan
option device eth0
option vlan 1
option ports "0t 1 2 3 4"
config switch_vlan
option device eth0
option vlan 2
option ports "0t 5"
In MR3220 v1.2 is:
config 'switch'
option 'name' 'eth0'
option 'reset' '1'
option 'enable_vlan' '1'
config 'switch_vlan'
option 'device' 'eth0'
option 'vlan' '1'
option 'ports' '0 1 2 3 4'
Failsafe is a quite popular feature, of this router, thats lets you recover instantly from a misconfiguration above.
Use the QSS button instead of reset button, everything else is identical to generic failsafe document.
Failsafe may not work in Backfire before r29661, so it's confirmed to not work at Backfire 10.03.1 launch (r29592). Be extremely cautious on what you're doing or go directly to serial recovery.
Note for MR-3220 running on 12.09-rc1 (r34185): I did not get any UDP packets to port 4919 as promised either when connected to LAN or WAN, however repeatedly pushing the front button made the router to enter the failsafe mode, which allowed me to gain again access to the router. The problem almost bricking my router was in my network configuration, for some reason setting a fixed MAC address for a bridge caused the router to hang at /etc/init./network start.
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:
http://www.ip6.ro/firmware/mr3420/
Back to top
toh/tp-link/tl-mr3420.txt · Last modified: 2013/05/01 22:09 by init