Trouble installing OpenWrt on TP-Link Archer C20 v4

Hello,

I own a TP-Link Archer C20 v4 router since 2018 and it was working perfectly.

Today, I wanted to install OpenWRT on it, in order to learn new things.

Here's what I tried, on my Linux machine :

  • I installed the tftpd-hpa and tftp packages
  • I checked that the tftpd-hpa service was running
  • I downloaded the openwrt-19.07.2-ramips-mt76x8-tplink_c20-v4-squashfs-tftp-recovery.bin file
  • I verified its SHA-256 checksum
  • I copied it in /srv/tftp as tp_recovery.bin
  • I tested the TFTP client, which returned Permission denied
  • I changed the file permissions to 777
  • I tested the TFTP client again, which returned no error anymore
  • I changed my IP address to 192.168.0.66
  • I unplugged all ethernet cables except the one connected to my Linux machine
  • I powered off the router
  • I began pressing the reset button
  • I powered on the router
  • The wireless LED began blinking fastly
  • I checked that my Linux machine detected an ethernet connection
  • I stopped pressing the reset button
  • The wireless LED continued to blink
  • The wireless LED stopped to blink after a few seconds
  • All LEDs began to blink simultaneously (at the end of a blink cycle, the www LED turns red and the power LED turns off a half-second after the others, before they all turn on again, etc.)

If I turn off then on the router, all LEDs start blinking again.
It doesn't respond to ping.
If I try again, it will do exactly the same thing.

Thanks

Maybe you stopped pressing the reset button too early.

From https://openwrt.org/toh/tp-link/tp-link_archer_c20_v4

Connect the computer to one of the router's Ethernet ports while the router is off. Press and keep pressed the router's reset button and power it up. After about 7-10 seconds release the reset button. The power LED will flicker rapidly for ~3 seconds, indicating download of the firmware file.

Is it downloading the file? Watch the server log to see that the file downloaded. After the file downloads it can take several minutes to flash. Do not cut the power to the router during that time.

So, I tried to wait for the power LED to turn on : it never turned on. But, after 45 seconds of waiting, all LEDs began to blink simultaneously again.

The ftfpd-hpa service log indicates :

Starting LSB: HPA's tftp server...
* Starting HPA's tftpd in.tftpd
Started LSB: HPA's tftpd server.

And, that's all.
It didn't print anything else, not even while testing using the Linux TFTP client.

Make sure to configure tftpd-hpa to be a little more verbose, e.g. on Debian this would mean setting TFTP_OPTIONS="--secure -vvvv" in /etc/default/tftpd-hpa and restarting the service, its messages go to syslog.

Okay, here's what I've got when testing using the TFTP client :
RRQ from ::1 filename tp_recovery.bin

And, unfortunately, I got nothing when I retry with the router, wether I wait 45 seconds until all LEDs starts blinking simultaneously, or I wait a bit less while the wireless LED is still alone blinking.

Hello, is anyone here ? :slight_smile:

Check firewall settings. It's possible that tftpd work only on loopback interface :slight_smile:

Thanks for your answer, where can I find these settings ?

First try tftp client from another computer. If connection refused search in your unix distribution docs.
Or google for examples ubuntu:
https://www.google.com/search?q=ubuntu+firewall+open+port

I've got the same result when trying the client from another computer :

RRQ from 192.168.1.3 filename tp_recovery.bin

Does it means success ?

Yes. So firewall doesn't matter

Okay, what's the issue then ?

No other ideas. Bootloader logs (with USB-to-TTL adapter) may clairfy situation.