Asus TUF AX4200 support

It took a week but I lost the wifi again on kernel 6.1.

Only symptom in the logread -f was dawn failed to connect. This time 2.4 and 5ghz were both down. There seemed to be a lot of dhcp activity while it was down.

Is anyone having issues where the 5G becomes unstable when using HE160 (160MHz)? It slows down and caps the speed at like 200mbps where it was working at 1gbps+ fine for a bit. Also the ping times go up massively from 1ms to 100ms. Seems to be fine on HE80.

Update: Spoke too soon. Appears to be happening on HE80 as well. Stuck trying to figure out what maybe causing this. Goes from 1gbps+ to 200mbps hard cap randomly and is stuck there until I restart the wifi interface on the router. It happens on all channels including non-DFS.

Stock firmware was fine and no issues.

I'm 5 days from last reboot of the secondary mesh node with other SSIDs disabled. When I was actually using those SSIDs the mesh would sometimes fail within hours so it might be related to the amount of traffic over time, or some specific combination of "peak" traffic at a certain point. For me mesh fails on iw scan immediately, but I'm still waiting for the mesh to fail by itself so I can compare if the symptoms are the same in both cases (mesh link up and no L2 traffic received by secondary while primary receives L2 packages from secondary and sends out replies)

@remittor Hello my bufferbloat deteriorates significantly after 2 or even 3 weeks it's random on this router does anyone have this problem? thanks in advance

Interesting you note this since my GL-MT6000 (also Filogic 830) did a little worse in bufferbloat than I expected too (although I still got A's, the latency increased a bit). I'm hoping it improves with kernel 6.1 as this never happened on my WRT32X (mvebu).

1 Like

hello phinn, yes I see that I only have this problem with the asus ax4200 if I put back the belkin rt3200 or another I don't have the problem, it's really annoying I'm going to flash in snapshot and see if the problem persist, thank you for your comment

i will update to snapshot now

ModĂšle 
ASUS TUF-AX4200
Plate-forme
mediatek/filogic
Version 
SNAPSHOT (r25345-c6319de48b)
Date 
2024-02-28T08:59:43.000000Z

i have a fiber 1go 1go constant while the test internet

on my new test snapshot i has a same problem

Try lowering your speeds by 5 or 10% you might have ISP not supplying the rated speed at specific times.

1 Like

i have test same problem unfortunatly

my speed test no cake no sqm etc

@phinn the problem is a same on snapshot

Status
System
Hostname	OpenWrt
Model	ASUS TUF-AX4200
Architecture	ARMv8 Processor rev 4
Target Platform	mediatek/filogic
Firmware Version	OpenWrt SNAPSHOT r25345-c6319de48b / LuCI Master git-24.052.52717-06c0fbb
Kernel Version	6.1.79
Local Time	2024-02-29 14:49:18
Uptime	0h 24m 42s
Load Average	0.00, 0.01, 0.03

for information with this router now

@daniel

Mine is at 18 days of uptime and at the moment, I don't have this issue:

(openwrt 23.05.2, wired connection, fq_codel+simplest.qos)

are you on wifi?

1 Like

sorry for the confusion in the previous message, I realized that my old pc did not support sqm, I changed pc and the bufferbloat returned normal even in kernel and stable version 23.05.2, thank you very much

Hostname	OpenWrt
Model	ASUS TUF-AX4200
Architecture	ARMv8 Processor rev 4
Target Platform	mediatek/filogic
Firmware Version	OpenWrt 23.05.2 r23630-842932a63d / LuCI openwrt-23.05 branch git-24.006.68745-9128656
Kernel Version	5.15.137

What is the problem exactly ?
I am running OpenWrt 23.05.0 r23497-6637af95aa / LuCI openwrt-23.05 branch git-23.236.53405-fc638c8 , currently on 40 days of uptime, with sqm using fq_codel with simplest_tbf , all on a pppoe fiber connection, never had any problems.
My uses are more extreme as I have a homelab with jellyfin streaming 4k hdr content, and I also stream from my gaming pc to remote locations with parsec or sunshine, never missed a beat with this router.

please read full my message, my pc was the problem after change and test no problem :slight_smile:

This is probably more an Apple device issue, but worth sharing:

I had terrible WiFi speeds on my MBP M1 and iphone 14 with a lot of bufferblot (even thou I run the QOS part on my x86 router that my router is wired to as a dumb AP).

After changing the 5ghz (ax) to channel 149 (80 mhz) i suddenly got crazy low pings wits no bufferbloat with 700/500 speeds. Is this common knowledge?

1 Like

I just found some interesting functionality in the stock bootloader:

      if ( *(_DWORD *)g_img == '#IBU' )
      {
        printf("Check UBI magic\n");
        printf("Download of 0x%x bytes completed\n", (unsigned int)g_img_size);
        v32 = rescue_ubi_image();
        if ( !v32 )
        {
          printf("done. %d bytes written\n", (unsigned int)g_img_size);
          dword_41EAA4D0 = 6;
          word_41EAA4A8 = 1;
          v37 = sub_41E15188(1i64);
          v38 = sub_41E15188(v37);
          v39 = sub_41E15188(v38);
          v40 = sub_41E15188(v39);
          v41 = sub_41E15188(v40);
          sub_41E15188(v41);
          printf("SYSTEM RESET!!!\n\n");
LABEL_58:
          system_reset(0i64, 0i64, 0i64, 0i64);
        }
        printf("rescue UBI image failed! (r = %d)\n", v32);
        word_41EAA4A8 = 0;
        dword_41EB484C = 3;
        dword_41EAA4D0 = 6;
        goto LABEL_56;
      }

This code completely restores the contents of the UBI_DEV partition.
It turns out that if you save the contents of this partition, you can always restore the saved copy through the official Asus Rescue utility.

I haven't checked this.

2 Likes

When you try to return to stock firmware (and in other cases), there is a chance of getting a brick that even the official recovery utility from Asus will not help you fix.

This will happen if volumes rootfs and rootfs_data remain in partition UBI_DEV (this can happen for various reasons).

The stock bootloader will not attempt to delete volumes rootfs and rootfs_data during the process of restoring stock firmware.

Now, if such a situation arises, the user is required to solder the UART.

I have already seen user messages about this situation occurring a couple of times.

A couple of days ago I came up with a solution to this problem. It is enough to create a special mtk-loader, which at startup will delete all volumes (except the first three) in partition UBI_DEV.
And design the image of this mtk-loader as if it were official firmware from Asus.

Download such images for different routers: https://drive.google.com/drive/folders/19Q9mhO1dmX0t7u7OA35ykQs3f9FxTSiP?usp=sharing

You can use these images through the official utility Asus Rescue.

Source code:

  1. https://github.com/openwrt-xiaomi/openwrt/commit/14bcdd3d12a69f35e2e8cc27d54cb258f1a00df4
  2. https://github.com/openwrt-xiaomi/openwrt/commit/f10db8873eab15606ea5d5c03f9a616187df0a8e
logs after using Resue tool with this TRX-image
reset button pressed!

   3: Boot System code via Flash (default).

TUF-AX4200 bootloader version: 1.0.0.3
MAC Address: C8:7F:54:78:BB:3E
HwID A
reset button pressed!

## Enter Rescue Mode ##
switch prereq:0
tftpd start

Our IP address is:(192.168.1.1)
Wait for TFTP request...
tftpd open
D D D D D D D D D D D D D D D
 Get read request from:(192.168.1.10)
Firmware Restoration assigns IP address: 192.168.1.49
Got ARP REPLY, set eth addr (9c:6b:00:02:b5:42)
Got ARP REQUEST, return our IP
D #
 First block received
################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
##########################################################
done
RAMtoFLASH
Chk trx magic
Download of 0x281000 bytes completed
Check TRX and write it to FLASH
Solve TRX, ptr=0x46000000
## Booting kernel from Legacy Image at 46000000 ...
   Image Name:
   Image Type:   AArch64 Linux Kernel Image (uncompressed)
   Data Size:    333384 Bytes = 325.6 KiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK

 Erase kernel block !!
 From c060f000 To c0890000 (2625536/h:281000)
0x280fc0 bytes written to volume linux
Volume linux2 not found!
ra_flash_erase_write: write volume [linux2] fail. (r = 19)
Write 2nd firmware fail. (r = 19)
rescue failed! (19)
resetting ...

F0: 102B 0000
FA: 1040 0000
FA: 1040 0000 [0200]
F9: 0000 0000
V0: 0000 0000 [0001]
00: 0000 0000
BP: 2400 0041 [0000]
G0: 1190 0000
EC: 0000 0000 [1000]
T0: 0000 0209 [010F]
Jump to BL

NOTICE:  BL2: v2.6(release):
NOTICE:  BL2: Built : 14:46:08, Jul 22 2022
NOTICE:  WDT: disabled
NOTICE:  CPU: MT7986 (2000MHz)
NOTICE:  EMI: Using DDR3 settings
NOTICE:  EMI: Detected DRAM size: 512MB
NOTICE:  EMI: complex R/W mem test passed
NOTICE:  SPI_NAND parses attributes from parameter page.
NOTICE:  SPI_NAND Detected ID 0xef
NOTICE:  Page size 2048, Block size 131072, size 268435456
NOTICE:  BL2: Booting BL31
NOTICE:  BL31: v2.6(release):
NOTICE:  BL31: Built : 14:46:14, Jul 22 2022


U-Boot 2022.04-rc1 (Mar 29 2023 - 14:13:33 +0800)
TUF-AX4200 bootloader version: 1.0.0.3

CPU:   MediaTek MT7986
Model: mt7986-rfb
DRAM:  512 MiB
Core:  43 devices, 15 uclasses, devicetree: embed
MMC:   mmc@11230000: 0
Loading Environment from MTD...
SPINAND raw ID: 00 EF AA 22
spi-nand: spi_nand spi_nand@1: Winbond W25N02KV SPI NAND was found.
spi-nand: spi_nand spi_nand@1: 256 MiB, block size: 128 KiB, page size: 2048, OOB size: 128, ECC strength 8/512, custom ECC status.
*** Warning - bad CRC, using default environment

In:    serial@11002000
Out:   serial@11002000
Err:   serial@11002000
ASUS TUF-AX4200 gpio/led init
Net:
Warning: ethernet1@15100000 (eth0) using random MAC address - ea:9a:de:28:a1:11
eth0: ethernet1@15100000
Warning: ethernet0@15100000 (eth1) using random MAC address - de:9c:61:21:1f:ca
, eth1: ethernet0@15100000
ubi0: attaching mtd4
ubi0: scanning is finished
ubi0: attached mtd4 (name "UBI_DEV", size 252 MiB)
ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
ubi0: good PEBs: 2016, bad PEBs: 0, corrupted PEBs: 0
ubi0: user volume: 7, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 21/15, WL threshold: 4096, image sequence number: 1864024255
ubi0: available PEBs: 2, total reserved PEBs: 2014, PEBs reserved for bad PEB handling: 40
UBI:   vol_id  reserved_pebs  alignment  data_pad  vol_type  usable_leb_size  used_ebs  used_bytes  last_eb_bytes  corrupted  upd_marker  name_len  name
UBI:        0              1          1         0   dynamic            1f000         1       1f000         1f000          0           0         5  nvram
UBI:        1              8          1         0   dynamic            1f000         8       f8000         1f000          0           0         7  Factory
UBI:        2              8          1         0   dynamic            1f000         8       f8000         1f000          0           0         8  Factory2
UBI:        3              2          1         0   dynamic            1f000         2       3e000         1f000          0           0         5  jffs2
UBI:        4             21          1         0   dynamic            1f000        21      3ff000         1f000          0           0         5  linux
UBI:        5            105          1         0   dynamic            1f000       105     1f9b000         1f000          0           0         6  rootfs
UBI:        6            679          1         0   dynamic            1f000       679     c8a7000         1f000          0           0         b  rootfs_data
UBI: 7fffefff              2          1         0   dynamic            1f000         2       3e000             2          0           0         d  layout volume
UBI volume [linux] id 4 mismatch! (expect 3)
UBI volume [linux] size 3ff000 smaller than 45fe000!
Creating dynamic volume linux2 of size 0x45fe000
ubi0 error: ubi_create_volume: not enough PEBs, only 2 available
ubi0 error: ubi_create_volume: cannot create volume 7, error -28
Create volume linux2 fail. rcode 0xffffffe4
UBI volume [jffs2] id 3 mismatch! (expect 5)
Latest UBI volumes layout.
UBI:   vol_id  reserved_pebs  alignment  data_pad  vol_type  usable_leb_size  used_ebs  used_bytes  last_eb_bytes  corrupted  upd_marker  name_len  name
UBI:        0              1          1         0   dynamic            1f000         1       1f000         1f000          0           0         5  nvram
UBI:        1              8          1         0   dynamic            1f000         8       f8000         1f000          0           0         7  Factory
UBI:        2              8          1         0   dynamic            1f000         8       f8000         1f000          0           0         8  Factory2
UBI:        3              2          1         0   dynamic            1f000         2       3e000         1f000          0           0         5  jffs2
UBI:        4             21          1         0   dynamic            1f000        21      3ff000         1f000          0           0         5  linux
UBI:        5            105          1         0   dynamic            1f000       105     1f9b000         1f000          0           0         6  rootfs
UBI:        6            679          1         0   dynamic            1f000       679     c8a7000         1f000          0           0         b  rootfs_data
UBI: 7fffefff              2          1         0   dynamic            1f000         2       3e000             2          0           0         d  layout volume
Read 1015808 bytes from volume Factory to 000000005f707ac0
EEPROM set 0: OK (version 106)
Read 1015808 bytes from volume Factory2 to 000000005f707ac0
EEPROM set 1: OK (version 106)
Read 1015808 bytes from volume Factory to 000000005fb455d0
Select EEPROM set 0 at offset 0x0.

Please choose the operation:
   1: Load System code to SDRAM via TFTP.
   2: Load System code then write to Flash via TFTP.
   3: Boot System code via Flash (default).
   4: Entr boot command line interface.
   7: Load Boot Loader code then write to Flash via Serial.
   9: Load Boot Loader code then write to Flash via TFTP.                                                                                 0
   3: Boot System code via Flash (default).

TUF-AX4200 bootloader version: 1.0.0.3
MAC Address: C8:7F:54:78:BB:3E
HwID A
Read 40 bytes from volume linux to 0000000046000000
   FIT/FDT format image found at 0x46000000,size 0x51608
Read 333360 bytes from volume linux to 0000000046000000
## Loading kernel from FIT Image at 46000000 ...
   Using 'config-1' configuration
   Trying 'kernel-1' kernel subimage
     Description:  ARM64 OpenWrt Linux-u-boot
     Type:         Kernel Image
     Compression:  lzma compressed
     Data Start:   0x460000e8
     Data Size:    309449 Bytes = 302.2 KiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x41e00000
     Entry Point:  0x41e00000
     Hash algo:    crc32
     Hash value:   c4cfb488
     Hash algo:    sha1
     Hash value:   c86d83a59d9ed0315dcc9d0fa5a1716d8036e1c1
   Verifying Hash Integrity ... crc32+ sha1+ OK
## Loading fdt from FIT Image at 46000000 ...
   Using 'config-1' configuration
   Trying 'fdt-1' fdt subimage
     Description:  ARM64 OpenWrt asus_tuf-ax4200 device tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x4604baf4
     Data Size:    22008 Bytes = 21.5 KiB
     Architecture: AArch64
     Hash algo:    crc32
     Hash value:   1724de63
     Hash algo:    sha1
     Hash value:   4f573bff5708d8fb444732bdd23c49022c3b8ce5
   Verifying Hash Integrity ... crc32+ sha1+ OK
   Booting using the fdt blob at 0x4604baf4
Volume linux2 not found!
ubi0: detaching mtd4
ubi0: mtd4 is detached
Copy firmware from linux1(c060f000) to linux2(c4c0d000), length 51630
   Uncompressing Kernel Image
   Loading Device Tree to 000000005f7f3000, end 000000005f7fb5f7 ... OK
volume linux seq: 4

Starting kernel ...



U-Boot 2024.01-OpenWrt-r25402-012be0468c (Mar 02 2024 - 14:26:04 +0000)

CPU:   MediaTek MT7986
Model: ASUS TUF-AX4200
DRAM:  512 MiB
Core:  38 devices, 18 uclasses, devicetree: separate
MMC:
Loading Environment from nowhere... OK
In:    serial@11002000
Out:   serial@11002000
Err:   serial@11002000
Loading Environment from nowhere... OK
Net:
Warning: ethernet@15100000 (eth0) using random MAC address - 12:20:f4:c8:b0:a0
eth0: ethernet@15100000
Autoboot in 0 seconds
run ubi_CLEAN
LED 'white:system' not found (err=-19)
LED 'red:wan' not found (err=-19)
spi-nand: spi_nand spi_nand@1: Winbond SPI NAND was found.
spi-nand: spi_nand spi_nand@1: 256 MiB, block size: 128 KiB, page size: 2048, OOB size: 128
run ubi_clean
Remove UBI volume linux (id 4)
Volume linux2 not found!
Remove UBI volume rootfs (id 5)
Remove UBI volume rootfs_data (id 6)
Remove UBI volume jffs2 (id 3)

MT7986>
logs after cleaning UBI_DEV
MT7986> reset
resetting ...

F0: 102B 0000
FA: 1040 0000
FA: 1040 0000 [0200]
F9: 0000 0000
V0: 0000 0000 [0001]
00: 0000 0000
BP: 2400 0041 [0000]
G0: 1190 0000
EC: 0000 0000 [1000]
T0: 0000 0209 [010F]
Jump to BL

NOTICE:  BL2: v2.6(release):
NOTICE:  BL2: Built : 14:46:08, Jul 22 2022
NOTICE:  WDT: disabled
NOTICE:  CPU: MT7986 (2000MHz)
NOTICE:  EMI: Using DDR3 settings
NOTICE:  EMI: Detected DRAM size: 512MB
NOTICE:  EMI: complex R/W mem test passed
NOTICE:  SPI_NAND parses attributes from parameter page.
NOTICE:  SPI_NAND Detected ID 0xef
NOTICE:  Page size 2048, Block size 131072, size 268435456
NOTICE:  BL2: Booting BL31
NOTICE:  BL31: v2.6(release):
NOTICE:  BL31: Built : 14:46:14, Jul 22 2022


U-Boot 2022.04-rc1 (Mar 29 2023 - 14:13:33 +0800)
TUF-AX4200 bootloader version: 1.0.0.3

CPU:   MediaTek MT7986
Model: mt7986-rfb
DRAM:  512 MiB
Core:  43 devices, 15 uclasses, devicetree: embed
MMC:   mmc@11230000: 0
Loading Environment from MTD...
SPINAND raw ID: 00 EF AA 22
spi-nand: spi_nand spi_nand@1: Winbond W25N02KV SPI NAND was found.
spi-nand: spi_nand spi_nand@1: 256 MiB, block size: 128 KiB, page size: 2048, OOB size: 128, ECC strength 8/512, custom ECC status.
*** Warning - bad CRC, using default environment

In:    serial@11002000
Out:   serial@11002000
Err:   serial@11002000
ASUS TUF-AX4200 gpio/led init
Net:
Warning: ethernet1@15100000 (eth0) using random MAC address - 36:29:51:fb:e6:67
eth0: ethernet1@15100000
Warning: ethernet0@15100000 (eth1) using random MAC address - 0e:f9:84:af:68:fa
, eth1: ethernet0@15100000
ubi0: attaching mtd4
ubi0: scanning is finished
ubi0: attached mtd4 (name "UBI_DEV", size 252 MiB)
ubi0: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes
ubi0: min./max. I/O unit sizes: 2048/2048, sub-page size 2048
ubi0: VID header offset: 2048 (aligned 2048), data offset: 4096
ubi0: good PEBs: 2016, bad PEBs: 0, corrupted PEBs: 0
ubi0: user volume: 3, internal volumes: 1, max. volumes count: 128
ubi0: max/mean erase counter: 21/15, WL threshold: 4096, image sequence number: 1864024255
ubi0: available PEBs: 1955, total reserved PEBs: 61, PEBs reserved for bad PEB handling: 40
UBI:   vol_id  reserved_pebs  alignment  data_pad  vol_type  usable_leb_size  used_ebs  used_bytes  last_eb_bytes  corrupted  upd_marker  name_len  name
UBI:        0              1          1         0   dynamic            1f000         1       1f000         1f000          0           0         5  nvram
UBI:        1              8          1         0   dynamic            1f000         8       f8000         1f000          0           0         7  Factory
UBI:        2              8          1         0   dynamic            1f000         8       f8000         1f000          0           0         8  Factory2
UBI: 7fffefff              2          1         0   dynamic            1f000         2       3e000             2          0           0         d  layout volume
Creating dynamic volume linux of size 0x45fe000
Creating dynamic volume linux2 of size 0x45fe000
No size specified -> Using max size (0x60c1000)
Creating dynamic volume jffs2 of size 0x60c1000
Latest UBI volumes layout.
UBI:   vol_id  reserved_pebs  alignment  data_pad  vol_type  usable_leb_size  used_ebs  used_bytes  last_eb_bytes  corrupted  upd_marker  name_len  name
UBI:        0              1          1         0   dynamic            1f000         1       1f000         1f000          0           0         5  nvram
UBI:        1              8          1         0   dynamic            1f000         8       f8000         1f000          0           0         7  Factory
UBI:        2              8          1         0   dynamic            1f000         8       f8000         1f000          0           0         8  Factory2
UBI:        3            242          1         0   dynamic            1f000       242     45fe000         1f000          0           0         5  linux
UBI:        4            242          1         0   dynamic            1f000       242     45fe000         1f000          0           0         6  linux2
UBI:        5            31f          1         0   dynamic            1f000       31f     60c1000         1f000          0           0         5  jffs2
UBI: 7fffefff              2          1         0   dynamic            1f000         2       3e000             2          0           0         d  layout volume
7 Likes

Thanks for all i Will try now :ok_hand::+1:

i have return stock firmware in the past not bircking for me for information.. (i has use a minisoft facinstall ipk

my router is already under openwrt @remittor if I get a new ax4200 router I have to use your 2.5 MB file and then use the traditional method?

this

Installiation OpenWrt image:

  1. Download TRX-image openwrt-23_tuf-ax4200-initramfs.trx and install its via WEB-interface AsusWRT.
    Change computer IP-addr to 192.168.1.10 and wait 60...90 seconds.
  2. Download OpenWRT sysupgrade image openwrt-mediatek-filogic-asus_tuf-ax4200-squashfs-sysupgrade.bin (or download the sysupgrade image from another location ) and install its via WEB-interface OpenWRT.
    Wait for the system to restart for 60...120 seconds.

Revert to stock AsusWRT:

  1. Install package facinstall.
  2. Install Asus stock TRX-image via OpenWRT LuCI interface.
    Change computer IP-addr to 192.168.50.10 and wait 70...120 seconds.

Not.
Image asus_tuf-ax4200-ubi-cleaner.trx should be used as a last resort when the system boot cannot be restored.

1 Like

just a new update asus router you think if i update router or in the futur the soft is update automaticly your image to OpenWrt work again

Version de signature	
2.392  Updated : 2024/03/07 17:07
Vérification des mises à jour	
Je voudrais rĂ©cupĂ©rer le firmware en version bĂȘta.
Routeur AiMesh
TUF-AX4200	
Version actuelle : 3.0.0.4.388_30979-g8cf925d
Mise Ă  jour manuelle du firmware : Charger

Is anyone having issues where the 5G becomes unstable when using HE160 (160MHz)? It slows down and caps the speed at like 200mbps where it was working at 1gbps+ fine for a bit. Also the ping times go up massively from 1ms to 100ms. Seems to be fine on HE80.

Update: Spoke too soon. Appears to be happening on HE80 as well. Stuck trying to figure out what maybe causing this. Goes from 1gbps+ to 200mbps hard cap randomly and is stuck there until I restart the wifi interface on the router. It happens on all channels including non-DFS.

Stock firmware was fine and no issues.