Part #1 Enable root access
Steps to access the linux shell using telnet for the TD-W8970 v1 firmware version0.6.0 2.12 v000c.0 Build 140613 Rel.31066n. Without opening the router physically.
Login to the router web ui at 192.168.1.1. Take backup of the router configuration conf.bin(Keep one copy safely incase you screw up things!)
download tplink configuration encrypter/decrypter tool from the link below. http://ejs1920.users.sourceforge.net/StatPOSTer-20160306.jar (Thanks ejs1920 for making this tool)
Launch the program StatPOSTer-20160306.jar
Select the router as TD-w8970v1 and click on decrypt button in the program and select the config file you saved in the step1
Save the decrypted conf.xml
Open the the decrypted conf.xml in notepad(would suggest to keep backup of this file just in case)
Add the xml tag after the xml node SerialNumber and save it.
<Description val="TD-W8970 v1`telnetd -p 1023 -l login`" />
Click the encrypt button, select the modified config, save as conf_modified.bin
Login to the router web ui at 192.168.1.1 and upload the new conf_modified.bin. And let the router reboot.
Router will reboot and have TD-W8970 v1`telnetd -p 1023 -l login` at the top, this is expected.
Telnet to (using putty or something like it) 192.168.1.1 at port 1023
Enter the user name as admin and password as 1234 (Looks like some sort of backdoor, there goes my peace of mind!)
You are ready to go and have access to linux shell.
Part #2 Install OpenWRT
(Filenames do not much, so download the firmware and rename it )
How to backup original firmware and install openwrt without opening the case
You will need:
1) a usb stick/thumb drive formatted as vfat/msdos
2) PC connected to TD-W8970 v 1 running original firmware either by wire or wireless
3) Telent and dd installed on the PC
Prepare the openwrt images on PC
Download the official 15.05 relese of openwrt-lantiq-xrx200-TDW8970-sysupgrade.image and run the following commnad:
dd if=openwrt-lantiq-xrx200-TDW8970-sysupgrade.image bs=1310720 skip=1 of=openwrt-lantiq-xrx200-TDW8970-sysupgrade-1.image
Create folder td-w8970 on your usb stick/thumb drive then copy these two files over the newly created folder. Unmount/eject the usb stick and plug it into the usb port on the back of TD-W8970.
Backup the original firmware
Open telnet and connect to 192.168.1.1 with login/password both as admin. Type sh after logging successfully. Run the following command to backup:
cat /dev/mtd0 > /var/usbdisk/sda1/td-w8970/mtd0 cat /dev/mtd1 > /var/usbdisk/sda1/td-w8970/mtd1 cat /dev/mtd2 > /var/usbdisk/sda1/td-w8970/mtd2 cat /dev/mtd3 > /var/usbdisk/sda1/td-w8970/mtd3 cat /dev/mtd4 > /var/usbdisk/sda1/td-w8970/mtd4 cat /dev/mtd5 > /var/usbdisk/sda1/td-w8970/mtd5 cat /dev/mtd6 > /var/usbdisk/sda1/td-w8970/mtd6
Verify the size of mtd1 file on the usb stick by executing the following command:
ls -l /var/usbdisk/sda1/td-w8970/mtd1
If the size is 1310720 you can go ahead with installing openwrt otherwise go back to “Prepare the openwrt images on PC” and replace 1310720 by the actual size in the dd command.
Run the following command
cat /var/usbdisk/sda1/td-w8970/openwrt-lantiq-xrx200-TDW8970-sysupgrade.image > /dev/mtdblock1 cat /var/usbdisk/sda1/td-w8970/openwrt-lantiq-xrx200-TDW8970-sysupgrade-1.image > /dev/mtdblock2
Reboot router afterwards.
On some ISPs (ex Greek Wind) you need to change the PPPoE dial interface from pto0 to pto0.835,
as 835 is the deault VLAN that Wind is using.