[Solved] TP-Link Archer C7 V2, Can't recover through serial


I've been trying to recover my TP-Link Archer C7 v2 device through serial, with no success (While following "Recovery using serial connection").

I have soldered wires to a USB UART device, and can successfully receive output from it.

However, when trying to input "tpl" (+Enter), there is no response from the device.
I can tell that the USB to Serial device sends data, due to the TX led blinking.

Also, I tried to put a pull-up resistor, according to the link above, but to no avail :confused:

Any help would be much appreciated!


You should be able to activate TFTP by holding down the button as you power it up. Hold the button down until the serial output shows the transfer starting.

Mine have always been tweaky about being able to interrupt. I’ve never pursued it as the button has always gotten me into TFTP mode.

What kind of output you get from serial console? It's possible that uboot is already corrupted.

1 Like

I had to try quite a few times (repeatedly typing tpl) before I could interrupt

When you start the router. Keep typing tpl and hitting enter as fast as you can. If it doesn't work, restart and try again.

I always try to use the copy/paste method with this whenever I can. I mainly use Putty in Windows for serial access so I just copy tpl from notepad and when it asks for the input I just right click on the console and it pastes the data. I never had to press enter but in your case it may also work even with enter key and it should be faster than manually typing it.

Thank you all for the support! Much appreciated!
Though I didn't (Unfortunately) manage to access the serial interface (It may be possible with more effort, based on your suggestions), I did work-around the problem of flashing a custom firmware on my router.

I realized it was region locked to Israel, so according to the wiki, I've tried flashing a custom dd-wrt image with the relevant region (Downloaded it from
https://download1.dd-wrt.com/dd-wrtv2/downloads/betas/2019/02-06-2019-r38581/tplink_archer-c7-v2/factory-to-ddwrt-IL.bin ), then flashed an older stock firmware, and lastly, flashed the openwrt firmware (All according to the wiki).

So if something bad happens, I may have to come back for help with accessing the serial interface, and may do it just-for-fun :slight_smile:

Thank you all for the suggestions!

1 Like

Great! Welcome back then!

If your issue is solved, please mark the topic as such by adding [Solved] to the beginning of the title, like below.

I am hoping good news, but I am guessing not...
I accidentally flashed an incorrect image to my Archer c7V2.
I tried unsuccessfully to flash via TFTP many many times, but it would just sit and hang, even with properly "stripped" firmware.
I finally popped the case and soldered the rs232 headers. I had to mess around a bit to get a good ground, and I suspect along the way fried something. Now it won't connect to my TFTP server... here's the serial bootlog:

U-Boot 1.1.4 (Jan 14 2018 - 10:37:14)

ap135 - Scorpion 1.0DRAM:  
Scorpion 1.0
ath_ddr_initial_config(179): (32bit) ddr2 init
tap = 0x00000003
Tap (low, high) = (0x3, 0x1d)
Tap values = (0x10, 0x10, 0x10, 0x10)
128 MB
Flash Manuf Id 0xc8, DeviceId0 0x40, DeviceId1 0x18
flash size 16MB, sector count = 256
Flash: 16 MB
Using default environment

*** Warning *** : PCIe WLAN Module not found !!!
In:    serial
Out:   serial
Err:   serial
Net:   ath_gmac_enet_initialize...
athrs_sgmii_res_cal: cal value = 0xe
No valid address in Flash. Using fixed address
No valid address in Flash. Using fixed address
ath_gmac_enet_initialize: reset mask:c02200 
Scorpion  ----> S17 PHY *
Vlan config...
TEST: FINAL REG VAL after TX Calibration - 0x46000000
TEST: FINAL XMII VAL after RX Calibration - 0x56000000
TEST: FINAL ETH_CFG VAL after RX Calibration - 0x00028001
athrs17_reg_init: complete
: cfg1 0x80000000 cfg2 0x7335
eth0: ba:be:fa:ce:08:41
eth0 up
athrs17_reg_init_wan done
SGMII in forced mode
athr_gmac_sgmii_setup SGMII done
: cfg1 0x800c0000 cfg2 0x7214
eth1: ba:be:fa:ce:08:41
eth1 up
eth0, eth1
Setting 0x18116290 to 0x58b1214f
Autobooting in 1 seconds
## Booting image at 9f020000 ...
   Uncompressing Kernel Image ... OK

Starting kernel ...

And then in hangs there forever. Holding down the WPS button doesn't change it.

Time for a new router?

You need to interrupt the boot process when it says "Autobooting in 1 seconds". This is done by hitting return, or if that doesn't work paste in the letters 'tpl'. If successful you will get a uboot command prompt.

If unsuccessful it may require adding a resistor or jumper to hook up the serial receiver. Check the device wiki page.

Then manually TFTP in an initramfs image, boot it, and use it to flash OpenWrt.


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