[SOLVED]Copy router to router firmware


I have 2 identical routers Archer C7(RU) ver: 5.0
To the both routers I have access throught UART console.

On the first one installed OpenWRT 18.0.6, but WiFi and USB does not works.
On the second - original firmware.

My goal to restore original firmware on the first from the second router.

But original router has no "firmware" partition and I do not how to do it.

First(OpenWRT) router partitions:

[    0.637482] Creating 6 MTD partitions on "spi0.0":
[    0.642441] 0x000000000000-0x000000020000 : "factory-uboot"
[    0.649815] 0x000000020000-0x000000040000 : "u-boot"
[    0.656701] 0x000000050000-0x000000060000 : "art"
[    0.663292] 0x0000000c0000-0x000000240000 : "kernel"
[    0.670123] 0x000000240000-0x000000fc0000 : "rootfs"
[    0.676643] mtd: device 4 (rootfs) set to be root filesystem
[    0.682587] 1 squashfs-split partitions found on MTD device rootfs
[    0.688972] 0x000000470000-0x000000fc0000 : "rootfs_data"
[    0.696340] 0x0000000c0000-0x000000fc0000 : "firmware"

cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 00020000 00010000 "factory-uboot"
mtd1: 00020000 00010000 "u-boot"
mtd2: 00010000 00010000 "art"
mtd3: 00180000 00010000 "kernel"
mtd4: 00d80000 00010000 "rootfs"
mtd5: 00b50000 00010000 "rootfs_data"
mtd6: 00f00000 00010000 "firmware"

Second(Original) router partitions:

[    0.460000] Creating 5 MTD partitions on "spi0.0":
[    0.460000] 0x000000000000-0x000000020000 : "factory-uboot"
[    0.470000] 0x000000020000-0x000000050000 : "u-boot"
[    0.480000] 0x000000050000-0x000000060000 : "ART"
[    0.480000] 0x000000060000-0x0000001e0000 : "uImage"
[    0.490000] 0x0000001e0000-0x000001000000 : "rootfs"
[    0.500000] mtd: partition "rootfs" set to be root filesystem

cat /proc/mtd 
dev:    size   erasesize  name
mtd0: 00020000 00010000 "factory-uboot"
mtd1: 00030000 00010000 "u-boot"
mtd2: 00010000 00010000 "ART"
mtd3: 00180000 00010000 "uImage"
mtd4: 00e20000 00010000 "rootfs"

Made dump of all mtd's


mtd -r  write /tmp/mtd3_uImage.backup firmware

That did not help, after that "Bad magic number", so I restored OpenWRT.

So how to make copy of router?

It seems OpenWrt doesn't have any partition covering 0x60000 - 0xc0000 flash range. It's weird as apparently OpenWrt has kernel at 0xc0000 and U-Boot seems to boot it successfully.

Is there really anything in the 0x60000 - 0xc0000 range? Try dumping that range on original firmware.

I suggest TFTP recovery as the most straightforward and least risky way to revert to stock.

1 Like

I restored ART partition, after that radio begun works.
Installed USB drivers and USB came back to life

opkg install kmod-usb2 kmod-usb3 kmod-usb-storage-uas
So I do not need restore original firmware any more.

TFTP recovery with original firmware does not works.
Showed error or simply reboot.
Tried to strip it, without success.

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.