Upgrading DD-WRT to OpenWRT on the TP-Link TL-WR1043ND

I had an old TP-Link TL-WR1043ND that was running DD-WRT firmware from 2013. Needless to say, this was pretty ancient and probably should be remedied but, unfortunately, I’d been unable to figure out how to do this via the web UI. It turns this can’t actually be done and instead you need to use a terminal. The below are my notes from doing just this.

First, you need to download the original firmware and strip the bootloader from it. You can source these firmwares from the TP-Link site but unfortunately, things aren’t as simple as that:

If you want to revert back to stock TP-link firmware from custom firmware, most of the time you can not flash the TP-Link firmware directly from the official TP-Link website.

The reason for this is that most of the downloadable firmware from the TP-Link website contains a so called bootloader section in front of the actual firmware.

Thankfully, a kind individual on the internet has done this work for us and you can download the firmware with the bootloader stripped from here.

Once downloaded, you need to flash this firmware. To do that, you need SSH access. Login in to the router and go to the “Services” tab. Once there, scroll down and enable SSH access. After that, go to the “Administration” and toggle the radio button for “SSH Managment”. Reboot the router.

After reboot, extract and transfer the stripped firmware to the router:

$ unzip TL-WR1043ND-V1-stripped.zip
$ cd TL-WR1043ND-V1-stripped
$ scp TL-WR1043ND-V1-FW0.0.3-stripped.bin [email protected]:/tmp

(use your admin password to authenticate).

Once this has been uploaded, SSH into the device to perform the restore:

$ ssh [email protected]
$ cd /tmp
$ mtd -r write TL-WR1043ND-V1-FW0.0.3-stripped.bin linux

After the restore is complete, you can download the new firmware for the device from openwrt.org:

$ wget http://downloads.openwrt.org/releases/18.06.2/targets/ar71xx/generic/openwrt-ar71xx-generic-tl-wr1043nd-v1-squashfs-factory.bin

Upload this through the web UI.

Bonus: Restoring to stock from OpenWRT

This is pretty simple too. Follow the above but instead of flashing to linux, flash to firmware:

$ mtd -r write TL-WR1043ND-V1-FW0.0.3-stripped.bin firmware


comments powered by Disqus