OpenWrt Forum Archive

Topic: TP-Link Archer C2 AC750 support

The content of this topic has been archived between 30 Mar 2018 and 5 May 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Same behavior with pimpkin, 3com, tftpd32 and your simple linux server (from windows 10 and linux mint)
I will search for another router with Openwrt compatibily (It will not certainly be tplink of course)

Thanks you for your help

calanto59

Hi All. I'm a bit confused, trying to get 5G to work.

I already have unpacked wifi5G.tar.gz in /:

openwrt@OpenWrt:~$ sudo ls -haltrR /mt7610_ap.ko 
-rwxr-x---    1 root     root        1.1M Dec 24 12:23 /mt7610_ap.ko
openwrt@OpenWrt:~$ sudo ls -haltrR /etc/Wireless/
/etc/Wireless/:
drwxr-xr-x    1 root     root           0 Dec 29 17:32 ..
drwxr-x---    3 root     root           0 Dec 29 17:32 .
drwxr-x---    2 root     root           0 Dec 29 17:32 iNIC

/etc/Wireless/iNIC:
drwxr-x---    3 root     root           0 Dec 29 17:32 ..
-rwxr-x---    1 root     root        2.1K Dec 29 17:32 iNIC_ap.dat
-rwxr-x---    1 root     root        6.6K Dec 29 17:32 SingleSKU.dat
drwxr-x---    2 root     root           0 Dec 29 17:32 .
openwrt@OpenWrt:~$ sudo ls -haltrR /etc_ro/
/etc_ro/:
drwxr-x---    2 root     root           0 Dec 29 17:32 Wireless
drwxr-xr-x    1 root     root           0 Dec 29 17:32 ..
drwxr-x---    3 root     root           0 Dec 29 17:32 .

/etc_ro/Wireless:
-rwxr-x---    1 root     root         512 Dec 29 17:32 MT7610E-V10-FEM.bin
drwxr-x---    3 root     root           0 Dec 29 17:32 ..
drwxr-x---    2 root     root           0 Dec 29 17:32 .


Here are the md5sum's. I took the Xmas wifi5G.tar.gz:

openwrt@OpenWrt:~$ sudo md5sum /etc/Wireless/iNIC/SingleSKU.dat
e892e1b417521ae1ffd089d5cc65ab43  /etc/Wireless/iNIC/SingleSKU.dat
openwrt@OpenWrt:~$ sudo md5sum /etc/Wireless/iNIC/iNIC_ap.dat
4b895c01467c3d590ea115c6f9e3f357  /etc/Wireless/iNIC/iNIC_ap.dat
openwrt@OpenWrt:~$ sudo md5sum /etc_ro/Wireless/MT7610E-V10-FEM.bin
55a576b8d98d7673605f6e6321026e30  /etc_ro/Wireless/MT7610E-V10-FEM.bin
openwrt@OpenWrt:~$ sudo md5sum /mt7610_ap.ko 
7631934f39bb663fd30d8e4c2b30d6a5  /mt7610_ap.ko


And I have this in my /etc/rc.local

insmod /mt7610_ap.ko mac="00:0C:F6:EB:13:B8"
      
ifconfig rai0 up
iwpriv rai0 set AuthMode=WPA2PSK
iwpriv rai0 set EncrypType=AES
iwpriv rai0 set SSID=mySSID
iwpriv rai0 set WPAPSK=myPassphrase
 
iwpriv rai0 set Channel=36

rai0 shows up when I do ifconfig:

rai0      Link encap:Ethernet  HWaddr 00:0C:F6:EB:13:B8  
          inet6 addr: fe80::20c:f6ff:feeb:13b8/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:4


When I scan for networks with any other computer I can't seem to find mySSID. What am I missing? Can someone point me to a good HOW-TO? sad

(Last edited by gargle on 29 Dec 2016, 21:31)

I bet you forgot to bridge your lan interface with the rai0 device.

@eddy551, I did, I added rai0 in the physical settings. I think I'm missing out on something important.

https://s27.postimg.org/xdr13zusz/2016_12_30_23_57_01_nils_Home_Interfaces_Lu_CI.png

You have to set the settings like in the screenshot. The actual interface is the one your wired lan is running.
Simply adding the ral0 as an interface will not work. There is no DHCP server running. Maybe you could try to set up one, but I think your purpose is to add wireless clients to your eth0, therefore this is your way to go.

(Last edited by eddy551 on 31 Dec 2016, 00:02)

I have the exact same configuration :

https://s30.postimg.org/rhomt241t/Untitled.png.

When I scan for networks I can see the 2.4G btw, but not the 5G sad

(Last edited by gargle on 2 Jan 2017, 11:38)

(UPDATED: I don't think that that error matters. Check http://www.flupzor.nl/downloads/tplink_uart_output.txt, it appears on the original tp-link firmware too)

This is what happens when I insmod /mt7610_ap.ko mac="00:0C:F6:EB:13:B9":

Sat Dec 31 09:56:36 2016 authpriv.notice sudo:  openwrt : TTY=pts/0 ; PWD=/home/openwrt ; USER=root ; COMMAND=/usr/sbin/insmod /mt7610_ap.ko mac=00:0C:F6:EB:13:B9
Sat Dec 31 09:56:38 2016 kern.debug kernel: [  740.987908] rtpci 0000:01:00.0: no of_node; not parsing pinctrl DT
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  740.999675]
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  740.999675]
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  740.999675] === pAd = c0b81000, size = 837024 ===
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  740.999675]
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  741.009465] <-- RTMPAllocTxRxRingMemory, Status=0
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  741.015510] <-- RTMPAllocAdapterBlock, Status=0
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  741.020139] device_id =0x7650
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  741.023203] RtmpFlashRead(82d9c334, 80000, 400)
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  741.033569] RtmpFlashWrite(82d9c334, 80000, 200) IGNORED!
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  741.039190] ==>MT76x0_WLAN_ChipOnOff(): OnOff:1, pAd->WlanFunCtrl:0x0, Reg-WlanFunCtrl=0xff000002
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  741.048305] MACVersion = 0x76502000
Sat Dec 31 09:56:38 2016 kern.warn kernel: [  741.051882] MT7610 AP Driver version: 3.0.0.9


When I put rai0 up I get an error:
Sat Dec 31 09:57:25 2016 authpriv.notice sudo:  openwrt : TTY=pts/0 ; PWD=/home/openwrt ; USER=root ; COMMAND=/sbin/ifconfig rai0 up
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  757.550281] load fw spent 20ms
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  757.553907] RX DESC a2c5c000 size = 2048
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  757.560774] RX1 DESC a2c5d000 size = 2048
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  757.575109] cfg_mode=14
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  757.577681] cfg_mode=14
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  757.580183] wmode_band_equal(): Band Not Equal!
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.199548] 1. Phy Mode = 49
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.202572] 2. Phy Mode = 49
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.205587] ERROR!!! E2PROM: WRONG VERSION 0x2, should be 1
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.211335] ext_pa_current_setting = 1
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.215178] TXALC> bInternalTxALC = 0
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.218975] 3. Phy Mode = 49
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.221969] AntCfgInit: primary/secondary ant 0/1
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.227267] MCS Set = ff 00 00 00 01
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.231156] MT76x0_ChipBBPAdjust():rf_bw=2, ext_ch=1, PrimCh=36, HT-CentCh=38, VHT-CentCh=42
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.241141] MT76x0_ChipSwitchChannel: DefaultTargetPwr = 28
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.246838] TXALC> bInternalTxALC = 0
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.250671] APStartUp(): AP Set CentralFreq at 42(Prim=36, HT-CentCh=38, VHT-CentCh=42, BBP_BW=2)
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.263813] Main bssid = 00:0c:f6:eb:13:b8
Sat Dec 31 09:57:25 2016 kern.warn kernel: [  758.268087] <==== rt28xx_init, Status=0
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  758.277145] MT76x0_Calibration - Channel = 42, bPowerOn = 1, bSaveCal = 1
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  758.285997] MT76x0_ChipSwitchChannel: DefaultTargetPwr = 28
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  758.291708] TXALC> bInternalTxALC = 0
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  758.295514] FullCalibration():  docal = [0006] valid bit[0]
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  758.301224] FullCalibration - Channel = 42, param = 0x301, bSave = 1, CalibrationMode = 255
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  758.675579] MT76x0_ChipSwitchChannel: DefaultTargetPwr = 28
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  758.681293] TXALC> bInternalTxALC = 0
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  758.685086] FullCalibration():  docal = [0006] valid bit[0]
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  758.690791] FullCalibration - Channel = 136, param = 0x401, bSave = 1, CalibrationMode = 255
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.065227] MT76x0_ChipSwitchChannel: DefaultTargetPwr = 28
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.070936] TXALC> bInternalTxALC = 0
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.074727] FullCalibration():  docal = [0006] valid bit[0]
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.080432] FullCalibration - Channel = 155, param = 0x501, bSave = 1, CalibrationMode = 255
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.454850] MT76x0_ChipSwitchChannel: DefaultTargetPwr = 28
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.460560] TXALC> bInternalTxALC = 0
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.464350] FullCalibration():  docal = [0006] valid bit[0]
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.470056] FullCalibration - Channel = 42, param = 0x701, bSave = 0, CalibrationMode = 255
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.494328] RTMPDrvOpen(1):Check if PDMA is idle!
Sat Dec 31 09:57:27 2016 kern.warn kernel: [  759.499177] RTMPDrvOpen(2):Check if PDMA is idle!

(Last edited by gargle on 3 Jan 2017, 13:23)

yoq wrote:

xmas release OpenWrt r50020 + 5G driver wink
- will now read the correct mac address from rom, for both 2.4G and 5G wifi

and here is a new openwrt recovery image, back-to-stock recovery image, and a simple tftp server for linux:
beinder.at/pub/c2_recovery.zip

TFTP flashing:
- turn the C2 off
- connect a ethernet cable from any port to your machine
- set your machines' IP to static 192.168.0.66/255.255.255.0
- set up your TFTP server (windows: tftpd32, linux: simple server in folder)
- hold the WPS/Reset button
- turn the C2 on
- keep holding the WPS/Reset button until the WPS light comes on (takes ~10sec)
- the C2 will now attempt to pull the file ArcherC2V1_tp_recovery.bin from your TFTP server
- flashing takes about 1 minute and reboot afterwards
- set your machines' IP back to dynamic
- WebUI for stock firmware is at 192.168.0.1, OpenWrt is at 192.168.1.1

Thanks Yoq for this, it works perfectly.
Would you mind sharing a kmod-tun module from your build environment ?
, using the kmod-tun from the trunk triggers kernel panics.

Alternatively I'll try compiling my own, but I could use your .config file and a few pointers.
Thanks

@gargle
Did you install the "wireless-tools" package? It's mandatory for the 5Ghz extension.

@eddy551, I did, you need that package for the iwpriv command.

openwrt@OpenWrt:~$ sudo opkg list-installed wireless-tools
wireless-tools - 29-5

What am I missing?

AFAIK, the only things needed should be the wireless-tools, the extra etc and etc_ro files, insmod /mt7610_ap.ko mac="00:0C:F6:EB:13:B9", ifconfig rai0 up, iwpriv rai0 set AuthMode=WPA2PSK,iwpriv rai0 set EncrypType=AES,iwpriv rai0 set SSID=Gargle5G,iwpriv rai0 set WPAPSK=<pw>,iwpriv rai0 set Channel=36, and modifying the settings in physical settings. That should be it, no?

(Last edited by gargle on 9 Jan 2017, 10:33)

@eddy551, my problem sat between the keyboard and my chair... I'm an idiot! Chromecast and the old laptop I was using don't support 5 Ghz.

5 Ghz works with a laptop I brought from work smile

Sorry for the confusion. The new years' celebrations must have clouded my brain.

Hello yoq,

I've used linked recovery file for back to stock, but I have a problem. I was in the US firmware before installing openwrt, but it's converted to EU one after coming back stock. (Revert file is include a EU firmware I think) I tried to flash US firmware via web ui, but it does not accept.

Is there any way to flash US version?

Edit: I've done it. Downloaded latest US firmware and cutted myself. Then flashed via tftp. Everything is fine now.

yoq wrote:

xmas release OpenWrt r50020 + 5G driver wink
- will now read the correct mac address from rom, for both 2.4G and 5G wifi

and here is a new openwrt recovery image, back-to-stock recovery image, and a simple tftp server for linux:
beinder.at/pub/c2_recovery.zip

TFTP flashing:
- turn the C2 off
- connect a ethernet cable from any port to your machine
- set your machines' IP to static 192.168.0.66/255.255.255.0
- set up your TFTP server (windows: tftpd32, linux: simple server in folder)
- hold the WPS/Reset button
- turn the C2 on
- keep holding the WPS/Reset button until the WPS light comes on (takes ~10sec)
- the C2 will now attempt to pull the file ArcherC2V1_tp_recovery.bin from your TFTP server
- flashing takes about 1 minute and reboot afterwards
- set your machines' IP back to dynamic
- WebUI for stock firmware is at 192.168.0.1, OpenWrt is at 192.168.1.1

(Last edited by EXcomZkko on 17 Jan 2017, 09:40)

Is this firmware working properly ? Are there any issues with it ? Can I just flash it and everything will work ?

(Last edited by viciuascuns on 18 Jan 2017, 17:42)

@yoq Can You send short instruction to compile padavan 5GHz  module?

Good day guys (or night maybe)! I am trying to flash openwrt recovery via tftp using method from post 124. I set serverip to 192.168.0.66 and client (uboot) ip 192.168.0.1. (Server: tftpd64) But something wrong, i cant download firmware from my server. I watching this:

MT7620 # setenv serverip 192.168.0.66
MT7620 # tftpboot 0x82000000 test.bin

 netboot_common, argc= 3

 NetTxPacket = 0x83FE5800

 KSEG1ADDR(NetTxPacket) = 0xA3FE5800

 NetLoop,call eth_halt !

 NetLoop,call eth_init !
Trying Eth0 (10/100-M)

 Waitting for RX_DMA_BUSY status Start... done


 ETH_STATE_ACTIVE!!
TFTP from server 192.168.0.66; our IP address is 192.168.0.1
Filename 'test.bin'.

 TIMEOUT_COUNT=10,Load address: 0x82000000
Loading: Got ARP REPLY, set server/gtwy eth addr (00:e0:aa:0a:02:78)
Got it
##
 Same block again; ignore it
T #
 Same block again; ignore it
T ##
 Same block again; ignore it
T
 Same block again; ignore it
T Got ARP REQUEST, return our IP

 Same block again; ignore it
T ####
 Same block again; ignore it
T #
 Same block again; ignore it
T ##
 Same block again; ignore it
T ##
 Same block again; ignore it
T #####
 Same block again; ignore it
T
 Same block again; ignore it

Retry count exceeded; starting again
do_bootm:argc=2, addr=0xbc020000

Same block again; ignore it sad I turned off firewall and antivirus. Also trying with another server (3com,pimpkin)  and back_to_stock bin, get the same. P's: test.bin is ArcherC2V1_tp_recovery.bin (openwrt build for this router)

Here uboot version:

U-Boot 1.1.3 (Aug 31 2015 - 16:32:16)

Thanks

(Last edited by norulez.nikita on 24 Jan 2017, 21:02)

Same problem. Router connects to tftpd64 on Windows, but after random amount of time (max i got 34%)Timeout error.
OS: 0.9.1 4.0 v0032.0 Build 160516 Rel.40209n
model: Archer C2 v1 00000001

Guys, the filename is not chosen at one's convenience. The router listens to only one specific file, depending on the model. In your case "ArcherC2V1_tp_recovery.bin", not something else like "test.bin".

Hi, flashed a C20i with release Chaos Chalmer 15.05.1 via tftp method (original TP-Link bootloader + OpenWRT), it works.

USB port however isn't working (installed kmod-cxacru for using an ADSL modem but connecting the modem don't show anything in dmesg), so i tried to update to the latest trunk (openwrt-ramips-mt7620-ArcherC20i-squashfs-sysupgrade.bin oon 2017-01-27 date) from LUCI's flash firmware interface, sysupgrade from SSH and both updates the firmware, but on reboot i have no web interface (trunk doesn't have LUCI, so it's expected) but neither SSH or telnet access!

I also tried with tftp flash with TP-Link bootloader + trunk, nothing.

Tried both keeping settings and removing settings from the choice before upgrading, it's nearly the 5th time i reflash CC via tftp (also, the failsafe mode window is too short and seems no button press does anything, so gone again with tftp)

(Last edited by Vezexe on 27 Jan 2017, 13:58)

Hey there! I tried flash with name "ArcherC2V1_tp_recovery.bin" and get " Same block again; ignore it" sad What's wrong ?

eddy551 wrote:

Guys, the filename is not chosen at one's convenience. The router listens to only one specific file, depending on the model. In your case "ArcherC2V1_tp_recovery.bin", not something else like "test.bin".

Unfortunately, it's nonsense sad

Update: I can download via tftp another bin files to memory (like original firmware or empty bin file), but when i downloading via tftp files from post 124, i get same block again

(Last edited by norulez.nikita on 1 Feb 2017, 17:37)

Is there a way to use 2.4GHz and 5GHz simultaneously?
So far I haven't managed to make it work...

Edit...5GHz is working...But no in parallel with the 2.4GHz

(Last edited by chrisargiris on 7 Feb 2017, 22:24)

Hi,
sorry for my English. Could someone tell me step by step how to flash openWRT into my Archer C2?
I downloaded c2_r50020.zip Inside I have got  file openwrt-ramips-mt7620-ArcherC2-squashfs-sysupgrade.bin I see that I can't flash this file through factory web interface because in file name the isn't word: "factory" only sysupgrade.
Have I to use the second archive: c2_recovery.zip ?
Inside I have got two directories: back_to_stock and openwrt_r50020. First is to restore factory firmware. Second is openwrt but file name isn't: openwrt-ramips-mt7620-ArcherC2-squashfs-sysupgrade.bin but the same like in first directory: ArcherC2V1_tp_recovery.bin
Is this the way to cheat TP-Link recovery procedure with tftp?
Will I need to use console cable like in TL-W8970/8980 model?
How to install wifi5G.tar.gz step by step?
How can I install some GUI after flashing clean openwrt?
Thank You for your answers.

Its posible to flash this from web interfeca, because i have c20i and i flash stock firmware for c2 and lan ports dont work

@dom133_pl: under C20i OpenWRT wiki, follow the link under "Information on how to install OpenWrt to the device, how to unbrick it and how to TFTP-flash it are provided here."

Flashing OpenWRT from the OEM web interface tends to brick the device as written in the wiki.

Also, C2 != C20i:

Note: The TP-Link Archer C2 AC750 used to link to this page, it now has its own entry at ::link removed as forum permits 0 links:: It is similar to C20i, but has a Gigabit switch instead of the 100M switch in the C20i.

There's also a Kickstarter for "Better support for MT7620A/N in OpenWrt/LEDE" as it should be the SOC used in this router.

(Last edited by Vezexe on 11 Feb 2017, 14:00)