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.
Install openwrt
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.
Notes
DSL firmware install script no longer works. Google dsl_vr9_firmware_xdsl-05.04.08.00.00.06_05.04.04.04.00.01.bin and save either to /lib/firmware/vdsl.bin or mtdblock4 (mtd erase first then mount) and do a symbolic link to vdsl.bin
fq_codel is the default qdisc which caused unexplained packet loss and network dealy once on the wired network. I have now disabled it by having these lines in /etc/rc.local
for device in eth0 ifb0 ifb1 wlan0 wlan0-1; do
tc qdisc del dev $device root
tc qdisc del dev $device ingress
tc qdisc add dev $device root pfifo
done
Sample network config section for UK ADSL PPOA (atm bridge section is not needed):
config interface 'wan'
option proto 'pppoa'
option encaps 'vc'
option vci '38'
option vpi '0'
option username 'foo'
option password 'bar'
option ipv6 '0'
option mtu '1492'
config vdsl 'dsl'
option xfer_mode 'atm'
option tone 'av'
option annex 'a'
option firmware '/lib/firmware/vdsl.bin'
(Last edited by s7mx1 on 10 Oct 2016, 13:18)