OpenWrt for Archer C55 v1

Hello,

Since there is no official support for Archer C55 v1 I would like to know if it is possible to flash the OpenWrt file for Archer C50 v1 (openwrt-19.07.4-ramips-mt7620-ArcherC50v1-squashfs-factory-eu.bin) into Archer C55 v1.
The hardware is pretty much the same (MediaTek MT76xx Device with W25Q64BV flash chip).
The differences are:

No USB port;
Gigabit WAN (yes only the WAN is Gigabit - dunno the LAN/WAN chipset);
3x External antennas (C50 has 2x).

So is it risky to flash the above C50 v1 firmware?
I think it will not brick my device but it might not work as expected.
The Ethernet ports might have a different order in C55 v1. Will OpenWrt detect the correct order?

Thanks!

Yes! It's risky to brick your device.

You can determine exactly how risky it is by testing an initramfs image (ramdisk) (nothing is written to flash)

you need to open the case and verify the UART pins or solder the pins if missing
you also need a UART to USB cable to connect to the serial console with those pins

then build an image for Archer C50, but select ramdisk image:
In make menuconfig you select Target Images --> Ramdisk
this generates a initramfs-kernel.bin along with the usual "factory" and "sysupgrade"

connect to the serial console and power the board
interrupt the boot process and run the tftpboot command and then bootm with the location where it was loaded in ram (printed by tftpboot)

I did some research and I found that hardware is pretty much the same as Archer C50 v1, but without USB port, with GBit WAN port and with 3x external antennas (versus 2x).

So, the extra chipset for the GBit support is probably the same as in Archer C2 v1 (Realtek RTL8367RB), but it is hosting only the WAN port.

"The C55 uses a external GBit switch for WAN only, connected by MDIO bus. Network traffic to the CPU is passed through the internal switch of the MT7620A SoC" (probable layout):

             +-------------------+
             |    MT7620A CPU    |
             +-------------------+
                          |
                          6 
+--------------------------------+
|             MT7620A            |
|         embedded switch        |
+--------------------------------+
  1     2     3     4     5 (RGMII)
  |     |     |     |     | 
 LAN1  LAN2  LAN3  LAN4   |
                          6 (RGMII)
+--------------------------------+
|           RTL8367RB            |
|      switch & 5x GBit PHY      |
+--------------------------------+
  0     unused
  |
 WAN

Ports number might not be accurate.
Will a picture of the board suffice to confirm the above layout?
Will it be hard to add support for Archer C55 v1 (since C2 v1 and C50 v1 are already supported)?
Thank you very much.

You can start with a copy of the C50 DTS which shares a common DTSI with all the other archer boards with an MT7620

you said it has a realtek switch and it looks like most of the other archer boards do not, so you have to get that node from another DTS like here (this is Archer C2 v1 which has it as well)

then you can edit the makefile using the lines for C50 as reference

you can look at commits for other devices to see in general what files need to be edited other than DTS and makefile, in your case most of them are in
target/linux/ramips/mt7620/base-files/etc/board.d

network script in there is important, for setting the default network interfaces
led script is only used when hardware or DTS cannot set the led's function

working on LEDs has to be done later, for now, delete the aliases and leds and keys nodes from the DTS

build an initramfs-kernel.bin (in make menuconfig, select Target Images --> ramdisk)

boot that image using tftpboot and bootm commands with UART serial console (NOT with the reset button)

then you figure out whats missing, whats not working, and adjust from there, you can post your kernel log here if you want

BTW you should open the case to verify whatever info you found, you have to do this anyway to get serial console access

also the RGMII interface is not between the internal switch and external swtich, it is between the SOC and switch

none of this is hard, just takes a lot of time :smiley:

It's too good to be the truth. I think that the board have only gigabit phy (something like realtek RTL8211E - the most cheap rgmii-only phy) connected to port 5 (or port 4).
So probable laytout:

             +-------------------+
             |    MT7620A CPU    |
             +-------------------+
                          |
                          6 
+--------------------------------+
|             MT7620A            |
|         embedded switch        |
+--------------------------------+
  0     1     2     3     5 (RGMII)
  |     |     |     |     | 
 LAN1  LAN2  LAN3  LAN4   |
                          | (RGMII)
                 +-------------+
                 |  RTL8211E   |
                 +-------------+
                        | 
                       WAN

Hello mpratt14,

Thank you very much for the directions.
Unfortunately I'm not a linux user so it would be very "hard" for me to learn everything necessary to start this project. I do have de router, the serial/usb adapter and some basic knowledge but I don't have the necessary time.

I will eventually share pictures of the board (front and rear) but it will take some time.

Only way to know is to open the board and see the chip models

It does take a lot of time but hopefully with our help is isn't as difficult as you think, it used to be very difficult, but with the state of the build tree today, you don't need to know any C language to add boards. It's ok if you need time, the first board I added took me 1 month to get openwrt to work and another 2 months of editing the commit so it was accepted

(but I think this board is easier than the one i did)