Archer C60 v2 ath79 - Flash Upgrade (8mb to 16mb)

Ive been working on make the C60 16Mb flash upgrade for 8 days. I`m on 23.05.2. What I've done:

  1. Using CH341a, I made a backup of a working 8Mb flash with OpenWRT.As a test, I copied the 8Mb to 16Mb, everything works, but as expected, the firmware dont see the extra space on the flash;
  2. Modified C60 dts to make more room for OpenWRT, adjusted the tplink and art offsets for the end of the 16Mb flash. Modified and to add IMAGE_SIZE := 15872k to the archer C60;
  3. Compiled the modified firmware, and for some reason only sysupgrade and initramfs are are compiled (no factory image);
  4. Using hex editor, created a 16Mb file with the factory-boot, info, u-boot, the sysupgrade generated, tplink and art, using the partitions scheme from dts.
  5. Flashed the new image to 16Mb, system boot and the extra space is recognized. Bingo!
  6. After reboot, using UART I can see errors on boot, system goes to emergency recovery, starts http server @ for tplink image upload.
  7. The error reported on UART is:
Setting 0x181162c0 to 0x82
Reading Partition Table from NVRAM ... OK
Parsing Partition Table ... [NM_Error](nm_lib_parsePtnIndexFile) 00603: invalid part.
[NM_Error](nm_api_checkInteger) 00360: factory boot check integer partition init fai.
Autobooting in 1 seconds

Is there anything that I'm missing?

I'm not sure if this will be helpful.... it seems like this might have been somewhat discussed previously here:

Messing with the bootloader can be dangerous usually though, but you have the original rom backed up and a flash programmer so who cares I guess

thank you wilson,
I'll take a look on that. I read a thousand posts related, I'll check if that one is on my list.
Yeah, I read that. This guy used the breed bootloader. The loader boots on my device, but I got a lzma error when it tries to boot the OpenWRT. I've done a lot of research about the lzma error, and nothing I saw and did worked, so I had to go back to the tp-link u-boot.


  1. messing with the tplink-safeloader.c makes no difference, after make clean and make, the compiled sysupgrade is the same (md5 verified).
  2. I dont know yet why the factory image is not generated. The image size is adjusted on the archer mk files to 16mb, but only sysupgrade (6.3mb) is being generated.

I'm still trying.
Any ideas will be appreciated.