Install firmware on TL-WPA8630 v2

My TL-WPA8630 v2 is bricked.
I was able to connect to the serial.

But I am not sure where to flash the firmware (could be openwrt, @netadair image or stock).

On this topic @noblem
[Solved] TL-WPA8630P Lede does not install
I see:
tftpboot 0x80000000 factory.bin
erase 0x9f010000 +7c0000
cp.b 0x0x80000000 0x9f010000 0x7c0000
reset

On the TL-WPA8630 v2
Should I use 0x80000000 and 0x9f010000 addresses ?

I would appreciate any help.
Thanks

Pedro

The flash layout on the V2 is different from the V1, so you need to double check the values are correct as you don't want to erase the wrong area of the flash...

I think running printenv on my device gave me the info I needed to perform the recovery

tftpboot 0x80060000 factory.bin
erase 0x9f000000 +filesize
cp.b 0x80060000 0x9f000000 filesize
reset

Should be this ones ?

dragonfly> printenv
bootargs=console=ttyS0,115200 root=31:03 rootfstype=squashfs init=/sbin/init board=AP152 mtdparts=spi0.0:128k(factory-uboot),128k(u-boot),1024k(uImage),6784k(rootfs),64k(mib0),64k(ART)
bootcmd=bootm 0x9f010000
bootdelay=1
baudrate=115200
ethaddr=0x00:0xaa:0xbb:0xcc:0xdd:0xee
dir=
lu=tftp 0x80060000 ${dir}tuboot.bin&&erase 0x9f000000 +$filesize&&cp.b $fileaddr 0x9f000000 $filesize
lf=tftp 0x80060000 ${dir}ap152${bc}-${squashfs}&&erase 0x9f110000 +0x6d0000&&cp.b $fileaddr 0x9f110000 $filesize
lk=tftp 0x80060000 ${dir}vmlinux${bc}.lzma.uImage&&erase 0x9f010000 +$filesize&&cp.b $fileaddr 0x9f010000 $filesize
stdin=serial
stdout=serial
stderr=serial
ipaddr=192.168.10.100
serverip=192.168.10.2
ethact=eth0

Environment size: 709/65532 bytes
dragonfly>

I think 0x9f010000 might be what you want as that's where the device is trying to boot from, I'm pretty sure that's what I did to recover mine, although it was over two years ago :grinning:

1 Like

I think you were right. :smiley:
I just bricked it.
I can not even see the U-Boot anymore.

I typed

tftpboot 0x80060000 factory.bin
erase 0x9f000000 +filesize
cp.b 0x80060000 0x9f000000 filesize
bootm 0x9f010000

I guess I should have typed

tftpboot 0x80060000 factory.bin
erase 0x9f010000 +filesize
cp.b 0x80060000 0x9f010000 filesize
reset

Is there anything I can do ?
Apart from JTag (I dont have experience to do that)

If there is nothing I can do, I can send the device to someone that needs and knows what to do with it.
Thanks

I think you've probably overwritten the uboot, so JTag or similar is probably the only option. I've no experience of that either, but Sysupgrade question for new device (TL-WPA8630P V2) makes it sound easy...

Hi there,

Could someone confirm that TL-WPA8630 v2 can tftp boot? And if it can how do I initiate that?

I've tried holding the reset button as I power on but not getting it to pull image from tftp server, nothing in the logs.

@petersnows

What device model is it? I have a memory dump for the EU 2.0 model I can send you. If you already have it open to access the serial lines, all you need is a Pomona SOIC-8 clip and a Raspberry Pi (or some other flash tool) to write to the flash.

@nux
AFAIK the only times I've heard tftp being used is when its started via the uboot CLI on the serial console inside the device. There is also a uboot HTTPD firmware recovery server inside the stock uboot/fs-uboot firmware but I don't know under what conditions it activates, it would be nice to find that out too.

After these commands

1.
dragonfly> tftp 0x80060000 code.bin
Trying eth0
Using eth0 device
TFTP from server 192.168.1.100; our IP address is 192.168.1.1
Filename 'code.bin'.
Load address: 0x80060000
Loading: ...........
done
Bytes transferred = 5505876 (540354 hex)

2.
bootcmd=bootm 0x9f010000
dragonfly> erase 0x9f010000 +0x540354
Erasing flash...
First 0x1 last 0x55 sector size 0x10000                                       85
Erased 85 sectors
dragonfly> cp.b 0x80060000 0x9f010000 0x540354
Copy to Flash... write addr: 9f010000
done
dragonfly> boot
## Booting image at 9f040000 ...
---- fileTag = 9f040000
         text base = 42398995
         entry point = 7f71c364
         hdr->ih_load = 00000000
         hdr->ih_ep = 00000000
   Uncompressing Kernel Image at 42398995 ... Too big uncompressed streamLZMA ERROR 1 - must RESET board to recover

I completely bricked my TL-WPA8630P(EU) v2.0 and I can not even see the U-Boot anymore.

Do you still have the memory dump for this bridge? If yes, could you send me?

Thank you.

Did you unbrick your TL-WPA8630P ?

Send me a message with your email and I'll forward you a dump of the OEM image.

Thank you for so quick answer.

Thank you for your help.

Do you have any idea why I was able to complete brick my WPA8630p bridge during put firmware by serial?
The printenv result before brick is below,

dragonfly> printenv
bootargs=console=ttyS0,115200 root=31:03 rootfstype=squashfs init=/sbin/init board=AP152 mtdparts=spi0.0:128k(factory-uboot),128k(u-boot),1024k(uImage),6784k(rootfs),64k(mib0),64k(ART)
bootcmd=bootm 0x9f010000
bootdelay=1
baudrate=115200
ethaddr=0x00:0xaa:0xbb:0xcc:0xdd:0xee
ipaddr=192.168.1.1
dir=
lu=tftp 0x80060000 ${dir}tuboot.bin&&erase 0x9f000000 +$filesize&&cp.b $fileaddr 0x9f000000 $filesize
lf=tftp 0x80060000 ${dir}ap152${bc}-${squashfs}&&erase 0x9f110000 +0x6d0000&&cp.b $fileaddr 0x9f110000 $filesize
lk=tftp 0x80060000 ${dir}vmlinux${bc}.lzma.uImage&&erase 0x9f010000 +$filesize&&cp.b $fileaddr 0x9f010000 $filesize
stdin=serial
stdout=serial
stderr=serial
serverip=192.168.1.234
ethact=eth0

Environment size: 707/65532 bytes
dragonfly>

and what I have done are in the my first post.

I'm not sure, I haven't really used U-Boot TFTP recovery with the unit. There might be some hints in the original support thread here. If you come up with some safe commands, it would be useful to add to the wiki!