Due to a wrong update of firmware, I bricked the TP-Link WDR 4300 wireless router I had. It was unused for a considerable period of time assuming that it had died due to hardware fault, with no hope of being resuscitated.
Finally, got some time to investigate it further and attempted to recover or salvage it. Here is what I did to de-brick it and make it work again. A big thank you to all the folks and TP-Link whose how tos and articles made it possible. These are the references https://community.tp-link.com/en/home/forum/topic/81462 and https://www.trishtech.com/2015/06/unbrick-tplink-wr740n-wifi-router/.
Steps followed are in sequence, unless they can be performed iteratively.
- Use a TFTP server to upload the stripped TP-Link WDR-4300 firmware
To do this, download Tftpd64-4.62-setup.exe from http://tftpd32.jounin.net/tftpd32_download.html. I used the 64 bit version as Windows 10 is 64 bit on my computer.
Double-click and install the Tftpd64 application. - Download the Stripped TP-Link firmware for TP-Link WDR4300 wireless router
Visit http://www.friedzombie.com/tplink-stripped-firmware/ and download the stripped firmware for the TP-Link WDR4300 router. This is the file I used TL-WDR4300-V1-stripped.zip.
I tried with the stock firmware from the TP-Link website, but it never worked. - Extract the zip file and rename the bin file
Rename the TL-WDR4300-V1-FW0.0.3-stripped.bin file in the folder where you extracted it to wdr4300v1_tp_recovery.bin - Change your computer’s IP address to 192.168.0.66 and gateway as 255.255.255.0.
To do this, right click on the the networking icon in the system tray of Windows 10. Next, choose Change Adapter Settings, select Microsoft TCP/IP 4 from the list, it’s properties and enter 192.168.0.66 as the IP address of the computer and 255.255.255.0 as the gateway.
The TP-Link router will recognize this IP address as that of the TFTP server. Hence, we run the TFTP server next on the computer. - Run TFTPd64 as Administrator
The next step is to run the TFTPD server on the computer as an administrator. Note that if you run it as an normal user, you will not be able to recover the router.
In the TFTPd64 application, enter the current directory as that where you have the stored the file wdr4300v1_tp_recovery.bin and in Server Interface, choose the one with IP address 192.168.0.66.
Leave this running and do the next step. - Connect the router to the computer
Switch off the router and connect the ethernet cord to the computer. After this, hold the reset button of the router and start it. While holding down the reset button, make sure that you see the progress bar on the screen. The IP address of the for server interface should still be 192.168.0.66. - Success
Once the router has completed, you can restart the router, close the TFTPd64 application. Try to connect to the router by using http://192.168.0.1. - Change the IP address of the computer to the default values
To do this, right click on the the networking icon in the system tray of Windows 10. Change it back to “Obtain and IP address automatically” and “Obtain DNS server address automatically”. - Reboot the router and restore stock firmware
Now, update the firmware to the stock TP-Link firmware for the WDR 4300 model for your region. Download stock firmware from https://www.tp-link.com/in/download/TL-WDR4300.html#Firmware. The firmware was in https://static.tp-link.com/res/down/soft/TL-WDR4300_V1_150518.zip. Extract the file and you get wdr4300v1_en_3_14_3_up_boot(150518).bin. This is the firmware file to be used next. - Install stock firmware
Start the router and visit http://192.168.0.1 in the web browser, visit the Administration option and upgrade the firmware through the web interface. Once done, you can normally administer and set up the router.
This debricking procedure did not work in the first go, but after a couple of retries, it worked successfully.
Note that I installed the stock US firmware thinking it was the only firmware available for this model. Any change to non-US firmware does not work. Therefore, choose the right stock firmware for the router.