Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
toh:tp-link:archer_c2_ac750 [2019/09/01 13:04] – [Serial] nlitsmetoh:tp-link:archer_c2_ac750 [2022/06/29 14:20] – [Switch] Add more details about using VLAN IDs above 31 in the outer switch configuration znark
Line 1: Line 1:
 ====== TP-Link Archer C2 AC750 ====== ====== TP-Link Archer C2 AC750 ======
  
-===== Supported Versions ===== +{{:media:tplink:archer-c2-v1:archer-c2-ac750-v1.png?300}}
----- datatable ---- +
-cols    Brand, Model, Versions, Supported Current Rel, OEM device homepage URL_url, LEDE Forum Topic URL_url, Device Techdata_pageid +
-headers Brand, Model, Version, Current Release, OEM Info, Forum Topic, Technical Data +
-align   c,c,c,c,c,c,+
-filter  Model=Archer C2 AC750 +
-filter  : Versions~v1 +
-----+
  
 +<WRAP 80%>
 +<tabbox Hardware Highlights>
 ---- datatable ---- ---- datatable ----
-cols    : Unsupported Functions_unsupporteds+cols    : Model, Versions, CPU, CPU MHz, Flash MB_mbflashs, RAM MB_mbram, WLAN Hardware, WLAN 2.4GHz, WLAN 5.0GHz, Ethernet 100M ports_, Ethernet Gbit ports_, Modem, USB ports_ 
 +header  : Model, Version,SoC,CPU MHz,Flash MB,RAM MB,WLAN Hardware,WLAN2.4,WLAN5.0,100M ports,Gbit ports,Modem,USB 
 +align   : c,c,c,c,c,c,c,c,c,c,c,c,c
 filter  : Model=Archer C2 AC750 filter  : Model=Archer C2 AC750
 filter  : Versions~v1 filter  : Versions~v1
 ---- ----
- +<tabbox OpenWrt support>
- +
-===== Hardware Highlights =====+
 ---- datatable ---- ---- datatable ----
-cols    : Model, Versions, CPUCPU MHzFlash MB_mbflashsRAM MB_mbram, WLAN Hardware, WLAN 2.4GHz, WLAN 5.0GHz, Ethernet 100M ports_, Ethernet Gbit ports_, Modem, USB ports_ +cols    : Brand, Model, Versions, Supported Current RelOEM device homepage URL_urlOWRT Forum Topic URL_urlDevice Techdata_pageid 
-header  : Model, Version,SoC,CPU MHz,Flash MB,RAM MB,WLAN Hardware,WLAN2.4,WLAN5.0,100M ports,Gbit ports,Modem,USB +headers Brand, Model, Version, Current ReleaseOEM InfoForum TopicTechnical Data 
-align   : c,c,c,c,c,c,c,c,c,c,c,c,c+align   : c,c,c,c,c,c,c
 filter  : Model=Archer C2 AC750 filter  : Model=Archer C2 AC750
 filter  : Versions~v1 filter  : Versions~v1
 ---- ----
  
 +<tabbox Hardware details>
 +^ [[wp>Instruction set]]          | [[wp>MIPS architecture|MIPS]]            |
 +^ Vendor                          | [[wp>MediaTek]] |
 +^ [[docs:techref:bootloader]]     | [[docs:techref:bootloader:uboot|U-Boot]] |
 +^ [[docs:techref:hardware:soc|System-On-Chip]]  | MT7620A |
 +^ [[docs:techref:hardware:cpu|CPU]]/Speed       | 580 MHz |
 +^ Flash-Chip      | Winbond 25Q64BVSIG [[http://www.winbond.com/hq/enu/ProductAndSales/ProductLines/FlashMemory/SerialFlash/W25Q64BV.htm|docs]] |
 +^ Flash size      | 8192 KiB |
 +^ RAM             | 64 MiB   |
 +^ Wireless No1    | SoC-integrated: MT7620A 2.4GHz 802.11bgn |
 +^ Wireless No2    | On-board chip: MT7610EN 5GHz 802.11ac |
 +^ [[docs:techref:hardware:switch]]  | RTL8367RB Gigabit Switch |
 +^ USB             | Yes 1 x 2.0 |
 +^ [[docs:techref:hardware:port.serial|Serial]]  | [[#Serial|Yes]] |
  
-===== Installation =====+<tabbox Firmware downloads>
 ---- datatable ---- ---- datatable ----
-cols    : Model, Versions, Supported Current Rel, Firmware OpenWrt snapshot Install URL_url, Firmware OpenWrt snapshot Upgrade URL_url, Firmware OEM Stock URL_url +cols    : Model, Versions, Supported Current Rel, Firmware OpenWrt Install URL_url, Firmware OpenWrt Upgrade URL_url, Firmware OEM Stock URL_url 
-headers : Model, Version, Current Release, Firmware OpenWrt snapshot Install, Firmware OpenWrt snapshot Upgrade, Firmware OEM Stock+headers : Model, Version, Current Release, Firmware OpenWrt Install, Firmware OpenWrt Upgrade, Firmware OEM Stock
 align   : c,c,c align   : c,c,c
 filter  : Model=Archer C2 AC750 filter  : Model=Archer C2 AC750
 filter  : Versions~v1 filter  : Versions~v1
 ---- ----
 +</tabbox>
 +</WRAP>
  
 +===== Installation =====
 -> [[docs:guide-user:installation:generic.flashing|Install OpenWrt (generic explanation)]] -> [[docs:guide-user:installation:generic.flashing|Install OpenWrt (generic explanation)]]
  
 +<WRAP center round important 60%>
 +The following procedure is known to work only on the **<color #ed1c24>v1</color>** and **<color #ed1c24>v1.1</color>** models. Please, don't try this on any other revision. You can check which version your C2 is by looking at the bottom of it or, in the router's web interface, **Status** page, **Hardware Version** information, if you are using stock firmware.
 +</WRAP>
  
 +As per the instructions in the [[https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=8375623a064|git commit adding support for the Archer C2 AC750 v1]], you need an OpenWrt image with **integrated bootloader** when flashing through TFTP (TP-Link pretty much always has the bootloader integrated in their firmwares).
 +OpenWrt 19.07.1 can be flashed via TFTP using an unofficial recovery image provided [[https://github.com/orangepizza/openwrt/releases/download/19.07.1/ArcherC2V1_tp_recovery.bin|here]]; however, if you are familiar with the command line and have access to a Linux box, it's recommended you build such an image yourself, as you'll be able to use the latest OpenWrt stable release. See instructions below.
 +
 +==== Creating an OpenWrt TFTP recovery image ====
 <WRAP center round important 60%> <WRAP center round important 60%>
-The following procedure works only on the **<color #ed1c24>V1</color>** model. Please, don'try this on any other revisionYou can check which version your C2 is by looking at the bottom of it or, in the router's web interface, **Status** page, **Hardware Version** information, if you are using stock firmware.+The following instructions might break your router. 
 +Use only the provided recovery image if you don'understand what is going on
 + 
 +Avoid renaming any arbitrary image to ArcherC2V1_tp_recovery.bin.  
 +Providing an image without proper bootloader to TFTP recovery bricks your router and needs flashing with a SPI programmer.
 </WRAP> </WRAP>
  
-OpenWrt can be flashed via TFTP using an unofficial recovery image provided by the OpenWrt's forum member **yoq** (more information is provided [[https://forum.openwrt.org/viewtopic.php?pid=347582#p347582|here]]). Download the recovery image **c2_recovery.zip** [[http://beinder.at/pub/c2_recovery.zip|here]].+If you feel uncomfortable doing this, grab the prepped 19.07.image linked to above and skip this section.
  
-To flash the recovery imagestart TFTP server from IP address 192.168.0.66 and serve the recovery image named ''ArcherC2V1_tp_recovery.bin'' that you have extracted. Connect your device to the LAN port, then press the WPS/Reset button and power it up. Keep pressing the WPS/Reset button for 10 secondsIt will try to download the recovery image and flash it. You must set your machine's IP to static 192.168.0.66, Subnet Mask to 255.255.255.0 and Default Gateway to 192.168.0.1.+The C2v1 TFTP recovery overwrites the uboot partitionhence it must be included in a recovery.bin 
 +An official stock TPLink firmware file has a 512 byte header, which needs to be stripped for TFTP. 
 +You need access to a Linux box for this procedure (Windows Subsystem for Linux ('WSL') might work as well). 
 +Instructions below are taken from the git commit that added support into OpenWrt.
  
-It can take up to 20-25 minutes to finishWhen it reaches 100%, the router will reboot itself.+1. Download a stock TP-Link Firmware file [[https://www.tp-link.com/en/download/Archer-C2_V1.html#Firmware|from the TP-Link homepage]].
  
-OpenWrt can be accessed at 192.168.1.1.+2Extract u-boot from the binary file:
  
-<WRAP center round info 60%> +<code>$ dd if=c2v1_stock_firmware.bin of=c2v1_uboot.bin bs=1 skip=512 count=131072</code> 
-A few users reported that flashing via TFTP server was only possible when the option "Use anticipation window of" with 1000 bytes was enabled in TFTPD32 for Windows. Soif your flashing process hang at some point, restart the process with this option enabled.+ 
 +3. Now merge the OpenWrt **sysupgrade** image and the u-boot into one binary: 
 + 
 +<code>$ cat c2v1_uboot.bin openwrt-squashfs-sysupgrade.bin > ArcherC2V1_tp_recovery.bin</code> 
 + 
 +==== Flashing OpenWRT ==== 
 + 
 +  * Set your computer's IP to a static 192.168.0.66 address (subnet mask 255.255.255.0 and default gateway to 192.168.0.1). 
 +  * To flash the recovery image, start a TFTP server from IP address 192.168.0.66 and serve the recovery image named 'ArcherC2V1_tp_recovery.bin'
 +  * Connect your device to the LAN port, then press the WPS/Reset button and power it up. Keep pressing the WPS/Reset button for 10 seconds 
 +  * The device will try to download the recovery image and flash it. This might take up to 20-25 minutes to finish. When done, the router will reboot itself. 
 +  * After reboot, you can access OpenWrt at 192.168.1.1. From here on out, you can simply use sysupgrade with the **vanilla** OpenWrt images to upgrade. 
 + 
 +<WRAP center round info 95%> 
 +Remember to allow access to your TFTP server program in firewall settings. (In case of Windows Firewall, it prompts you in first run.
 + 
 +If you encounter timeoutsyou might want to put a switch between your router and client to facilitate the flashing process. The tips below might not be needed after that.
  
 Also, you //might// have to lower your ethernet link to 10 Mbps Half Duplex in order to finish the process. Also, you //might// have to lower your ethernet link to 10 Mbps Half Duplex in order to finish the process.
 +
 </WRAP> </WRAP>
  
  
-===== Upgrade =====+<WRAP center round important 95%>
  
-After successfully flash OpenWrt firmware with the method above, you will be able to directly upgrade it via web interface to the latest release we have from, also forum member, **abnoeh**You can download **LEDE.for.ArcherC2V1.complied.tar.xz** [[https://github.com/orangepizza/openwrt-archer-c2-lede17.01/releases/download/archer-c2-v1.03/LEDE.for.ArcherC2V1.complied.tar.xz|here]]. Extract the .zip and flash the .bin file.+A few users reported that flashing via TFTP is not always possible on some devices. Apparently there was a slight hardware change in some produced devices that causes TFTP inside u-boot to expect [[https://datatracker.ietf.org/doc/html/rfc7440|RFC7440]] behavior without actually requesting RFC7440 behavior. 
 +There is a [[https://forum.openwrt.org/t/tftp-download-from-tp-link-archer-c2-does-not-work-properly/65531/|forum thread]] with a detailed analysis of the issue and possible solutions.
  
-If you didn't preserved setting when you upgrade it, you will need to enter ''%%http://192.168.1.1/cgi-bin/luci/admin/network/network/lan%%'', and press save and apply at the bottom of page without change anything to make 5G Wi-Fi work. +**TLDR:**
  
 +If you want to stick to flashing via TFTP:
 +  * on Windows use [[https://pjo2.github.io/tftpd64/|TFTPD32/64]] with the option ''Use anticipation window of 1000 bytes''
 +  * on every other platform you could use [[https://github.com/apardyl/PyTFTPd|apardyl/PyTFTPd]] with the patch provided by ''pbasista'' in the forum thread
  
-===== creating TFTP recovery image =====+Otherwise your best option is to establish a serial connection to the device and then load the image via ''kermit'' (either directly copying it into the flash or booting an ''initramfs'' variant from memory and then flashing via ''OpenWrt'').
  
-    The C2v1 TFTP recovery overwrites the uboot partition, hence it must be included in a recovery.bin +Other variants and more information is provided in the aforementioned forum thread
-    An official stock TPLink firmware file has a 512 byte header, which needs to be stripped for TFTP: + 
-    dd if=c2v1_stock_firmware.bin of=ArcherC2V1_tp_recovery.bin bs=1 skip=512 +</WRAP> 
-    To create a recovery for openwrt, simply stick the stock uboot in front of the squashfs+ 
-    dd if=c2v1_stock_firmware.bin of=c2v1_uboot.bin bs=1 skip=512 count=131072 +Similar instructions can be found as posted by OpenWrt forum member **yoq** [[https://forum.openwrt.org/viewtopic.php?pid=347582#p347582|here]]. Old recovery image **c2_recovery.zip** can be downloaded [[http://beinder.at/pub/c2_recovery.zip|here]]. 
-    cat c2v1_uboot.bin openwrt-squashfs-sysupgrade.bin ArcherC2V1_tp_conf.bin+ 
 +==== Flash Layout ===
 + 
 +^   TP-Link Archer C2 AC750 v1 flash layout           ^^^^^^^^^ 
 +^ Layer0  |                raw NOR flash memory chip (Spansion S25Fl064K [[wp>Serial Peripheral Interface Bus|spi]]0.0: s25fl064k) 8192 KiB                |||||||| 
 +^ Layer1  |  mtd0 **//u-boot//**  |  mtd1 **//firmware//** 7808 KiB                                   |||  mtd5 **//config//**  |  mtd6 **//rom//**  |  mtd7 **//romfile//**  |  mtd8 **//radio//** 
 +^ Layer2  |                        mtd2 **//kernel//** 1690 KiB*  |  mtd3 **//rootfs//** 6117 KiB*   || 
 +^ <color magenta>mountpoint</color>      |                        |  <color magenta>''/''</color>    ||          | 
 +^ filesystem                                |     [[docs:techref:filesystems#overlayfs|OverlayFS]]  ||          | 
 +^ Layer3                                    |    |  mtd4 **//rootfs_data//** 1448 KiB*                |          | 
 +^ Size in KiB  |  128 KiB              1690 KiB  |  4669 KiB*  |  1448 KiB*  |  64 KiB  |  64 KiB  |  64 KiB  |  64 KiB  | 
 +^ Name          **//u-boot//**      |  **//kernel//**  |            **//rootfs_data//**    |  | 
 +^ <color magenta>mountpoint</color>    //none//    //none//  |  <color magenta>''/rom''</color>  |  <color magenta>''/overlay''</color>    //none//  |  //none//  |  //none//  |  //none// 
 +^ filesystem    //none//  |  //none//  |  [[docs:techref:filesystems#SquashFS]]  |  [[docs:techref:filesystems#JFFS2]]  |  //none//  |  //none//  |  //none//  |  //none// 
 +* These seemingly irregular values are the result of the dynamic mtd splitter resizing the OpenWrt kernel and rootfs 'partitions' as needed. Sizes are extracted from a personalised build, so //kernel//, //rootfs// and //rootfs_data// values may slightly differ on stock OpenWrt builds (and also between 19.07, 21.02 and master e.g.). Other partition sizes should be identical.
  
 ===== Hardware ===== ===== Hardware =====
-==== Info ==== +See the [[/toh/tp-link/archer_c2_ac750#tab__hardware_details|hardware details tab]] at the top of the page.
-[[wp>Instruction set]]          | [[wp>MIPS architecture|MIPS]]            | +
-^ Vendor                          | [[wp>MediaTek]] | +
-^ [[docs:techref:bootloader]]     | [[docs:techref:bootloader:uboot|U-Boot]] | +
-^ [[docs:techref:hardware:soc|System-On-Chip]]  | MT7620A | +
-^ [[docs:techref:hardware:cpu|CPU]]/Speed       | 580 MHz | +
-^ Flash-Chip      | Winbond 25Q64BVSIG [[http://www.winbond.com/hq/enu/ProductAndSales/ProductLines/FlashMemory/SerialFlash/W25Q64BV.htm|docs]] | +
-^ Flash size      | 8192 KiB | +
-^ RAM             | 64 MiB   | +
-^ Wireless No1    | SoC-integrated: MT7620A 2.4GHz 802.11bgn | +
-^ Wireless No2    | On-board chip: MT7610EN 5GHz 802.11ac | +
-^ [[docs:techref:hardware:switch]]  | RTL8367RB Gigabit Switch | +
-^ USB             | Yes 1 x 2.0 | +
-^ [[docs:techref:hardware:port.serial|Serial]]  | [[#Serial|Yes]] |+
  
-==== Pictures of the Ver. 1.0 board ==== +==== Pictures of the board ====
-{{:media:tplink:archerc2_ac750_t.jpg?400|}}  {{:media:tplink:archerc2_ac750_b.jpg?400|}}+
  
 The case is a bit hard to open, start with the two screws. Then start prying the lid from the bottom of the case, starting at the side with the ethernet connectors, There are 11 notches all around keeping the lid in place. They come loose by pushing the bottom part of the case outward. The case is a bit hard to open, start with the two screws. Then start prying the lid from the bottom of the case, starting at the side with the ethernet connectors, There are 11 notches all around keeping the lid in place. They come loose by pushing the bottom part of the case outward.
  
 +**v1**
  
-==== Serial =====+{{media:tplink:archer_c2_ac750_t.jpg?400|}} {{media:tplink:archer_c2_ac750_b.jpg?400|}}
  
-Serial port TTL voltage, 115200 bps, 8N1+**v1.1** 
 + 
 +{{:media:tplink:archer-c2-v1:archer_c2_v1.1_front.jpg?400|}} {{:media:tplink:archer-c2-v1:archer_c2_v1.1_back.jpg?400|}} 
 + 
 +==== Serial =====
  
 <WRAP center round alert 60%> <WRAP center round alert 60%>
Line 104: Line 156:
 </WRAP> </WRAP>
  
-The Serial connector is labeled 'J2'and is wired as follows:+Serial connection parameters for Archer C2 AC750 v1 | 1152008N1 |
  
-    ethernet <-  VCC GND TxD RxD  -> Leds+The Serial connector is labeled 'J2', and is wired as follows. See picture below for the location on the board.
  
-Where 'TxD' connects to the output of your serial adapter, and RxD, connects to the input of your serial adapter. +    Ethernet side of PCB 
-The GND pin may be a bit hard to solder, i needed to scratch away some paint from the PCB to make a large enough connection. +     
-On some versions you need to solder 2 bridges to get serial port working. You need good soldering experiences for that!+       VCC  ... not used. 
 +       GND  -------------- GND of Serial adapter 
 +       RX   <-- input  <-- Tx of Serial adapter 
 +       TX   --> output --> Rx of Serial adapter 
 +        
 +    Led side of PCB
  
-The bootloader of the stock firmware can be interrupted by pressing a digit from 1 .. 7, press '4' for the u-boot prompt.+Where 'RX' connects to the output of your serial adapter, and TX, connects to the input of your serial adapter. You can verify this, by using a volt meter to check that 'TX' pin is at Vcc level, and the RX pin is at GND level. The bootloader of the stock firmware can be interrupted by pressing a digit from 1 .. 7, press '4' for the u-boot prompt. From the serial console, you can login to the running Linux based stock firmware with: username 'admin' and password '1234'.
  
-You can login to the running unix of a stock firmware with: username 'admin' and password '1234'.+**Soldering**
  
 +The GND pin may be a bit hard to solder, i needed to scratch away some paint from the PCB to make a large enough connection. On some versions you need to solder 2 bridges to get serial port working. You need good soldering experiences for that!
 +
 +**Board picture (v1)**
 +
 +UART isn't populated, it's indicated by a red rectangle on the picture below (click for bigger size).
 +
 +{{:media:tplink:archer-c2-v1:archer_c2_v1_-_board_serial_red_rectangle.jpg?300.jpg}}
  
 ===== Switch ====== ===== Switch ======
 +
 The C2 uses a external GBit switch, connected by MDIO bus. Network traffic to the CPU is passed through the internal switch of the MT7620A SoC: The C2 uses a external GBit switch, connected by MDIO bus. Network traffic to the CPU is passed through the internal switch of the MT7620A SoC:
 +
 <code>             +---------------+ <code>             +---------------+
               MT7620A CPU  |               MT7620A CPU  |
Line 141: Line 207:
  
  
 +
 +<WRAP center round info 60%>
 +Earlier versions of this article suggested “the driver for OpenWrt” (for the RTL8367R(B) switch chip) would have limited the range of usable 802.1q VLAN IDs to 1 – 31.
 +
 +While this may have been true for some earlier builds (could not confirm immediately), OpenWrt 21.02.3 (at least) no longer seems to suffer from such //hard// limit. There is still a //soft// limit which, for some reason, makes VLAN IDs above 31 unusable and non-working by default, but you can override this limit and use the full range of VLAN IDs by setting the ''enable_vlan4k'' option to ''1'' in the ''switch1'' section of the ''/etc/config/network'' configuration file, as follows:
 +
 +<code>
 +config switch
 +        option name 'switch1'
 +        option reset '1'
 +        option enable_vlan '1'
 +        option enable_vlan4k '1'
 +</code>
 +
 +If you edit the switch VLAN configuration in LuCI, it may add the ''enable_vlan4k'' configuration directive automatically for you. But for manual edits, you need to do it yourself to be able to get the higher-numbered VLAN IDs work.
 +</WRAP>
 +
 +<WRAP center round important 60%>
 +OpenWrt releases 21.02.0 — 21.02.3 (the latest official release as of this writing) appear to have a regression in their default network configuration which makes the inner (MT7620A) switch visible in LuCI as ''switch0'' for no real purpose, with a pseudo VLAN configuration that makes no sense.
 +
 +The router works as it should but configuring VLANs through LuCI may not work as expected and only the outer switch (''switch1'', RTL8367B) configuration is relevant. A bug report has been filed on this by the ID [[https://github.com/openwrt/openwrt/issues/8871|FS#3879 - Incorrect switch config for TP-Link Archer C2 AC750 #8871]].
 +
 +Until fixed in later releases, you can work around the issue by removing the extraneous ''switch0'' configuration from the file ''/etc/config/network''. This is best accomplished by issuing the following commands in the command line:
 +
 +<code>
 +uci delete network.@switch[0]
 +uci commit
 +reboot
 +</code>
 +</WRAP>
 ===== UBoot ====== ===== UBoot ======
  
Line 165: Line 261:
 | Green   | LAN    | 1      | Active low   | | Green   | LAN    | 1      | Active low   |
 | Green   | USB    | 11     | Active low   | | Green   | USB    | 11     | Active low   |
- 
  
 ===== Forum Threads ===== ===== Forum Threads =====
Line 174: Line 269:
  
 Thanks to everyone that contribute to make this possible. Thanks to everyone that contribute to make this possible.
- 
  
 ===== Tags ===== ===== Tags =====
 [[meta:tags|How to add tags]] [[meta:tags|How to add tags]]
 {{tag>ramips mt7620a usb 64ram 8flash mips32 mips MT7620A mt7620 mediatek mt7610e usb2.0 1usb gigabitethernet 2ant NonDetachableAntenna 5Port serial U-boot 24k 24kec 2x2 12v_powered wlan 2button 2wnic 802.11ac 802.11n 802.11g 802.11b 802.11a simultan 802.11abgn_simultan}} {{tag>ramips mt7620a usb 64ram 8flash mips32 mips MT7620A mt7620 mediatek mt7610e usb2.0 1usb gigabitethernet 2ant NonDetachableAntenna 5Port serial U-boot 24k 24kec 2x2 12v_powered wlan 2button 2wnic 802.11ac 802.11n 802.11g 802.11b 802.11a simultan 802.11abgn_simultan}}
  • Last modified: 2024/02/13 16:08
  • by jow