Support for TP-Link Archer C2 v3

Interesting, how long have you had it running without problems?
I'm asking, because with with stock openwrt firmware (ath10k or atk10k-ct) I get kernel panic due to OOM after 4-6h. So far got best results then using firmware "firmware-2-ct-nrcc-community-20.bin" - around 24h without any crash (still testing).

hello,
according to this discussion it should be possible flash V3 with openwrt, but exact procedure is not known or which specific firmware use
can someone provide few hints? : )

thx

You need to build an image from the sources with all the modifications from above, ath79 target which is a source-only target. And then flash using tp-link recovery method or console.

I have some errors in the kernel logs when the router starts (see below) , but wireless is working, I let a laptop connected to 5GHz more than 24 hours pinging the router and it lost only 2 packets.

[   11.347803] ath10k 4.16 driver, optimized for CT firmware, probing pci device: 0x50.
[   11.357231] PCI: Enabling device 0000:00:00.0 (0000 -> 0002)
[   11.363284] ath10k_pci 0000:00:00.0: pci irq legacy oper_irq_mode 1 irq_mode 0 reset_mode 0
[   11.637663] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/fwcfg-pci-0000:00:00.0.txt failed with error -2
[   11.648573] ath10k_pci 0000:00:00.0: Falling back to user helper
[   11.801821] firmware ath10k!fwcfg-pci-0000:00:00.0.txt: firmware_loading_store: map pages failed
[   11.811186] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/pre-cal-pci-0000:00:00.0.bin failed with error -2
[   11.822263] ath10k_pci 0000:00:00.0: Falling back to user helper
[   11.999822] firmware ath10k!pre-cal-pci-0000:00:00.0.bin: firmware_loading_store: map pages failed
[   12.215521] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/ct-firmware-5.bin failed with error -2
[   12.226882] ath10k_pci 0000:00:00.0: Falling back to user helper
[   12.315155] firmware ath10k!QCA9887!hw1.0!ct-firmware-5.bin: firmware_loading_store: map pages failed
[   12.324995] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/ct-firmware-2.bin failed with error -2
[   12.336345] ath10k_pci 0000:00:00.0: Falling back to user helper
[   12.507582] firmware ath10k!QCA9887!hw1.0!ct-firmware-2.bin: firmware_loading_store: map pages failed
[   12.517409] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/firmware-6.bin failed with error -2
[   12.528490] ath10k_pci 0000:00:00.0: Falling back to user helper
[   12.698613] firmware ath10k!QCA9887!hw1.0!firmware-6.bin: firmware_loading_store: map pages failed
[   12.708158] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/firmware-5.bin failed with error -2
[   12.719239] ath10k_pci 0000:00:00.0: Falling back to user helper
[   12.890319] firmware ath10k!QCA9887!hw1.0!firmware-5.bin: firmware_loading_store: map pages failed
[   12.899869] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/firmware-4.bin failed with error -2
[   12.910946] ath10k_pci 0000:00:00.0: Falling back to user helper
[   13.079078] firmware ath10k!QCA9887!hw1.0!firmware-4.bin: firmware_loading_store: map pages failed
[   13.088620] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/firmware-3.bin failed with error -2
[   13.099698] ath10k_pci 0000:00:00.0: Falling back to user helper
[   13.269214] firmware ath10k!QCA9887!hw1.0!firmware-3.bin: firmware_loading_store: map pages failed
[   13.284902] ath10k_pci 0000:00:00.0: qca9887 hw1.0 target 0x4100016d chip_id 0x004000ff sub 0000:0000
[   13.294483] ath10k_pci 0000:00:00.0: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[   13.306956] ath10k_pci 0000:00:00.0: firmware ver 10.1-ct-87-__fW-021-4fa9f30 api 2 features wmi-10.x,has-wmi-mgmt-tx,txstatus-noack,wmi-10.x-CT,ratemask-CT,get-temp-CT,tx-rc-CT,cust-stats-CT crc32 00580da5
[   13.410082] ath10k_pci 0000:00:00.0: Direct firmware load for ath10k/QCA9887/hw1.0/board-2.bin failed with error -2
[   13.420895] ath10k_pci 0000:00:00.0: Falling back to user helper
[   13.525262] firmware ath10k!QCA9887!hw1.0!board-2.bin: firmware_loading_store: map pages failed
[   13.534713] ath10k_pci 0000:00:00.0: board_file api 1 bmi_id N/A crc32 546cca0d
[   14.567035] ath10k_pci 0000:00:00.0: 10.1 wmi init: vdevs: 16  peers: 127  tid: 256
[   14.581751] ath10k_pci 0000:00:00.0: wmi print 'P 128 V 8 T 410'
[   14.588209] ath10k_pci 0000:00:00.0: wmi print 'msdu-desc: 1424  sw-crypt: 0'
[   14.595612] ath10k_pci 0000:00:00.0: wmi print 'alloc rem: 26992 iram: 12784'
[   14.640590] ath10k_pci 0000:00:00.0: htt-ver 2.1 wmi-op 2 htt-op 2 cal file max-sta 128 raw 0 hwcrypto 1

yes, but modifying image sources and compiling new firmware is little bit too much : ) can someone upload working modded firmware and few tips how flash it? thx

Ok, here are some files you can upload thru the web interface:

https://gofile.io/?c=hOVDpT

Download the archive from the above link. Flash the first file from the web interface of the router (openwrt-ath79-generic-tplink_archer-c2-v3-squashfs-18.06.1factory.bin), wait 10 minutes to be sure the flash is done and then flash the sysupgrade file.
It's mandatory to flash the sysupgrade, the first image is created from the 18.06.1 branch and the 5 GHz doesn't work on that.

MD5 for the file:fb0624dc1352820a53fabb14c51279d8
SHA3-256:a973a8375fb5d2c14751c8df0e95fa02fdd0cd7ae0e57e3bfe0c4c092e355b99

and now everybody can test openwrt on Archer C2 v3, finally!, thanks : )

two things:

  • if something go "wrong way" is there stripper original firmware for revert back?
  • 5G will never properly work with these devices?

To revert back you use the tp-link recovery procedure ( I used it it works):
1.Download the latest available firmware from TP-LINK website, extract from the archive and rename the file ArcherC2v3_recovery.bin
2.Set your PC to use the static IP address 192.168.0.66/24 (the router will have 192.168.0.86) and start a tftp server on it (for windows you can use tftpd32)
3.Copy the firmware file on the root folder of the tftp server (or browse to the file in case of tftpd32)
4.Power on the router while pressing the reset button until the lock LED is lighting up (you will see the file being tranfered to the router and led blinking during the firmware flash)
5.Wait for the router to reboot

Also I saw this on the tp-link site: https://www.tp-link.com/de/faq-1482.html

I don't know about 5GHZ, on my router it works.

1 Like

I´m using Dorin´s Image and 5G works for me :slight_smile:

I hit the snag, too. I started having OOM errors after I started using the router with pppoe (another ISP). I don't think the error is not related with the 5 GHz wlan driver/firmware, is some memory management problem, the memory is getting full and the oom-killer starts killing the processes. ( in may case started with ppptd, in your case the with the 5 GHz wlan related procceses)

I put the log with the errors here https://pastebin.com/hpL77LYn

One workaround is to set vm.min_free_kbytes=1024 in sysctl (now is 8192kB), it worked after that. (edit /etc/sysctl.conf , add vm.min_free_kbytes=1024, then run sysctl -p)
Is not a very good workaround, but is all that I have.

1 Like

well I working with snapshot from Dorin since 28.11 and everything looks good so far... so why is no official support in snapshots for C2 ? ath79 target already exist some time https://downloads.openwrt.org/snapshots/targets/ath79/generic/

It looks like x-logLT's and lars18th's pull requests are waiting to be reviewed and accepted:
https://github.com/openwrt/openwrt/pull/1501
https://github.com/openwrt/openwrt/pull/1579

IPv4 addresses does not work. Only the IPv6 part of the internet is available. If IPv6 WAN and/or LAN protocol is disabled, then it stops the internet access. (ISP Telekom Hungary, cable).

I've tried Dorin's image a week ago. The flashing itself went fine but the machine is getting out of memory very often. I let it reboot every six hours via cron and even with that sometime it stopped authenticating or just stopped 2.4 or 5ghz.
Currently I've put this into /etc/rc.local

# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
while true; do
  memory=$(grep ^MemFree /proc/meminfo | awk '{ print $2 }')
  [ $memory -lt 10240 ] && echo "low memory - rebooting  " | ncat syslog-ng-server 601
  [ $memory -lt 10240 ] &&  ps w | ncat syslog-ng-server 601
  [ $memory -lt 10240 ] && cat /proc/meminfo | ncat syslog-ng-server 601
  [ $memory -lt 10240 ] && df -h | ncat syslog-ng-server 601
  [ $memory -lt 10240 ] && cat /proc/mtd | ncat syslog-ng-server 601
  [ $memory -lt 10240 ] && for i in /proc/[0-9]*/; do echo $i ------------; cat $i/status; echo ==============; done | ncat syslog-ng-server 601
  [ $memory -lt 10240 ] && reboot

  sleep 60
done &
exit 0

syslog-ng is running on syslog-ng-server. Obviously the rebooting is not a proper solution but it may give some clue about why the hell is the machine getting oom so often as that's making hte machine unusable.

can i upgrade ? or better wait for stable/beta ??
3.0.1 Build 20180423 Rel. 53178(EU)
ArcherC2 v3.0

Julius852: I'm using it on daily basis at home and it works.

Offloading logs to an exrernal server seems desired as from some reson rsyslog is able to eat over 36MB of memory.

hi, everything still working... :smiley: question: do You updating fw with latest snapshots?

It was added: 9c01273

Thanks to all involved!

1 Like

archerc2v3
it seems working fine.
//i not using wifi interfaces

Anybody had any luck flashing on the US version of this? https://wikidevi.com/wiki/TP-LINK_Archer_C900_v1.1 As far as I can tell, it's identical hardware, just a different name and firmware for the US release. (grumbles about the FCC and their stupid rules)