Help unbrick TL-mr3420 v2.2

hello, im trying to flash openwrt to my router,but unfortunately i flash the wrong rom and now my router just show LED power SYS and wps, im trying to flash using tftpd but no response and trying to access from usb serial but showing weird character, what im suppose to do?

Bad connection (soldering) or speed.

im using 115200 and other speed, but still give the same response, maybe because im using jumper cable and not soldering it, next time maybe im trying to solder it because now i dont have the tools, any advice?

Except for not connecting 3v3, not really.

to be sure, i just connecting the Tx Router to Rx ttl, Rx Router to Tx ttl, gnd router to gnd ttl, is that correct?

Yes, Rx usually go to Tx, and vice versa.

If they were incorrectly connected you'd have no output at all.

I assume you've also done

im just realize that im connecting the Tx to Tx again so im correcting the cable but not showing anything on putty, im really confuse

Is your adapter designed for and configured to use 3.3v?

the usb ttl? yes, i use pl2303 and ch340g and these two give the same responds

new update: im trying to change the baud rate to 128000 and data bits to 7 and turns out now putty can read the output from the route but unfortunately not accept any input from my keyboard
here the output from the putty:

U-Boot 1.1.4 (Dec  6 2012 - 16:31:39)

U-boot AP123

DRAM:  32 MB
id read 0x100000ff
Flash:  4 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   ag934x_enet_initialize...
wasp reset mask:c03300
WASP ----> S27 PHY
file: ag934x.c,line: 179==: set LAN&WAN SWAP. --debug by HouXB
GMAC: cfg1 0x5 cfg2 0x7114
eth0: ba:be:fa:ce:08:41
s27 reg init
athrs27_phy_setup ATHR_PHY_CONTROL 4: 0x1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 4: 0x10
eth0 up
WASP ----> S27 PHY
file: ag934x.c,line: 179==: set LAN&WAN SWAP. --debug by HouXB
GMAC: cfg1 0xf cfg2 0x7214
eth1: ba:be:fa:ce:08:41
s27 reg init lan
ATHRS27: resetting s27
ATHRS27: s27 reset done
athrs27_phy_setup ATHR_PHY_CONTROL 0: 0x1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 0: 0x10
athrs27_phy_setup ATHR_PHY_CONTROL 1: 0x1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 1: 0x10
athrs27_phy_setup ATHR_PHY_CONTROL 2: 0x1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 2: 0x10
athrs27_phy_setup ATHR_PHY_CONTROL 3: 0x1000
athrs27_phy_setup ATHR_PHY_SPEC_STAUS 3: 0x10
eth1 up
eth0, eth1
Autobooting in 1 seconds
## Booting image at 9f020000 ...
   Uncompressing Kernel Image ... OK

Starting kernel ...

[    0.000000] Linux version 3.18.23 (buildbot@builder1) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r47269) ) #1 Sun Jan 31 18:39:35 CET 2016
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001974c (MIPS 74Kc)
[    0.000000] SoC: Atheros AR9341 rev 1
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
[    0.000000] Initmem setup node 0 [mem 0x00000000-0x01ffffff]
[    0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line:  board=TL-MR3220-v2  console=ttyATH0,115200 rootfstype=squashfs,jffs2 noinitrd
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Writing ErrCtl register=00000000
[    0.000000] Readback ErrCtl register=00000000
[    0.000000] Memory: 28324K/32768K available (2586K kernel code, 128K rwdata, 540K rodata, 256K init, 193K bss, 4444K reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:51
[    0.000000] Clocks: CPU:535.000MHz, DDR:400.000MHz, AHB:200.000MHz, Ref:25.000MHz
[    0.000000] Calibrating delay loop... 266.64 BogoMIPS (lpj=1333248)
[    0.080000] pid_max: default: 32768 minimum: 301
[    0.080000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.090000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.100000] NET: Registered protocol family 16
[    0.100000] MIPS: machine is TP-LINK TL-MR3220 v2
[    0.110000] ar71xx: invalid PHY interface mode for GE1
[    0.110000] ar71xx: invalid PHY interface mode for GE0
[    0.130000] Switched to clocksource MIPS
[    0.140000] NET: Registered protocol family 2
[    0.140000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.140000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.150000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.150000] TCP: reno registered
[    0.160000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.160000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.170000] NET: Registered protocol family 1
[    0.170000] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.190000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.190000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.200000] msgmni has been set to 55
[    0.210000] io scheduler noop registered
[    0.210000] io scheduler deadline registered (default)
[    0.220000] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.250000] serial8250.0: ttyS0 at MMIO 0x18020000 (irq = 11, base_baud = 1562500) is a 16550A
[    0.260000] m25p80 spi0.0: found s25sl032p, expected m25p80
[    0.260000] m25p80 spi0.0: s25sl032p (4096 Kbytes)
[    0.270000] 5 tp-link partitions found on MTD device spi0.0
[    0.270000] Creating 5 MTD partitions on "spi0.0":
[    0.280000] 0x000000000000-0x000000020000 : "u-boot"
[    0.280000] 0x000000020000-0x00000013f7d8 : "kernel"
[    0.290000] 0x00000013f7d8-0x0000003f0000 : "rootfs"
[    0.290000] mtd: device 2 (rootfs) set to be root filesystem
[    0.300000] 1 squashfs-split partitions found on MTD device rootfs
[    0.310000] 0x000000370000-0x0000003f0000 : "rootfs_data"
[    0.310000] 0x0000003f0000-0x000000400000 : "art"
[    0.320000] 0x000000020000-0x0000003f0000 : "firmware"
[    0.370000] libphy: ag71xx_mdio: probed
[    0.380000] platform leds-gpio: Driver leds-gpio requests probe deferral
[    0.380000] TCP: cubic registered
[    0.390000] NET: Registered protocol family 17
[    0.390000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[    0.400000] Bridge firewalling registered
[    0.410000] 8021q: 802.1Q VLAN Support v1.8
[    0.410000] bootconsole [early0] disabled

any advice?

You should try to interrupt it before the autobooting text.

i tried but it wont stop

According to MR3420 device page:

To be able to use the UART on MR3220v2, TP18 to TP38 and TP28 to TP48 should be connected.

I guess there is a typo there and it should say 3420 instead of 3220

There is also a note there saying

To get the serial connection work reliably, you have to connect a 10k pullup resistor between the TX and the 3.3V pin.

Finally, you will need to quickly type tpl at some point.

no, its definitely mr3420, not mr3220, i think i flash the wrong firmware before the brick

I forgot how old and under-resourced (relative to modern devices) the MR3420 is...

This means it is not possible to run anything newer than 19.07 (unless a "tiny" build is available for it), and it really only works well with 18.06 or older. Based on the fact that you likely have to run a very old, EOL and unsupported version of OpenWrt, it is not recommended to use wifi on these devices or to have them exposed to the internet. The recommended thing (for the sake of security) is to simply ecycle this device and get something that can run a current version of OpenWrt.

well, i cant afford mr3420 v5 because im broke, and i just bought this router so maybe im stick with this rigth now

I certainly can understand if you're cash strapped, but a more modern and capable device (that can run OpenWrt 22.03+) can typically be purchased on the used market for as little as $20USD. With your current device, based on the fact that you'll need to use a very old version of OpenWrt, you may end up seriously compromising your network security which could make your life pretty miserable.

yeah your right, i will buy a newer router next time

thanks for everyone who helping, my router has finally booting normally again
the solution is: turns out on

Bits per second: 115200
Data bits: 8
Stop bits: 1
Parity: None
Flow control: None

its still accepting the input but the text its not (quite) readable, so you have input blindly and carefully so you not inserting the wrong input
so again thank you for helping

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.