RT-AX53U: only 300Mbps but router can do 574Mbps in 2,4Ghz

Hi, I am running OpenWRT v23.05.2 on an Asus RT-AX53U. I just noticed that my AP on 2,4Ghz only seems to support a maximum speed of 300Mbps but the router can actually do 574Mbps according to the manufacturers website.

Any ideas how to get 574Mbps maximum speed in OpenWRT?

This is the relevant info on my access point, from "Wifi Info View" running on my Windows PC (Win10 with a Wi-Fi6E AC211 network card). Also, in the OpenWRT GUI all clients connect at speeds below 300Mbps.

PHY Type: 802.11g/n/ax
RSSI: -39
Signal Quality: 94
Average Signal Quality: 94.3
Frequency: 2,422
Channel: 3
Security: WPA2-PSK
Cipher: CCMP
Maximum Speed: 300 Mbps
Channel Width: 40 MHz
802.11 Standards: 802.11d/e/i/p/r/y
Stations Count: 8
Country Code: DE

Here are the relevant logs and configs:

# cat /etc/config/wireless 

config wifi-device 'radio0'
	option type 'mac80211'
	option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0'
	option channel '3'
	option band '2g'
	option htmode 'HE40'
	option country 'DE'
	option cell_density '0'
	option txpower '20'
	option noscan '1'

config wifi-device 'radio1'
	option type 'mac80211'
	option path '1e140000.pcie/pci0000:00/0000:00:01.0/0000:02:00.0+1'
	option channel 'auto'
	option band '5g'
	option htmode 'HE80'
	option cell_density '0'
	option country 'DE'

config wifi-iface 'default_radio1'
	option device 'radio1'
	option network 'wwan'
	option mode 'sta'
	option ssid 'EXTERNAL-AP-I-CONNECT-TO'
	option encryption 'none'
	option disassoc_low_ack '0'
	option key 'PASSWORD'
	option time_advertisement '2'
	option time_zone 'CET-1CEST,M3.5.0,M10.5.0/3'
	option wnm_sleep_mode '1'
	option wnm_sleep_mode_no_keys '1'
	option bss_transition '1'
	option proxy_arp '1'
	option bssid 'xx:xx:xx:xx:xx:xx'
	option macaddr 'random'

config wifi-iface 'wifinet2'
	option device 'radio0'
	option mode 'ap'
	option network 'lan'
	option ssid 'MY-AP-SSID'
	option encryption 'psk2'
	option disassoc_low_ack '0'
	option time_advertisement '2'
	option time_zone 'CET-1CEST,M3.5.0,M10.5.0/3'
	option wnm_sleep_mode '1'
	option wnm_sleep_mode_no_keys '1'
	option bss_transition '1'
	option proxy_arp '1'
	option wds '1'
	option key 'PASSWORD'
	option ieee80211r '1'
	option nasid 'openwrt1'
	option reassociation_deadline '20000'
	option ft_over_ds '0'
	option ft_psk_generate_local '1'
	option pmk_r1_push '1'
	option ieee80211k '1'
# iw phy0 info

Wiphy phy0
        wiphy index: 0
        max # scan SSIDs: 4
        max scan IEs length: 2200 bytes
        max # sched scan SSIDs: 0
        max # match sets: 0
        Retry short limit: 7
        Retry long limit: 4
        Coverage class: 0 (up to 0m)
        Device supports AP-side u-APSD.
        Device supports T-DLS.
        Available Antennas: TX 0x3 RX 0x3
        Configured Antennas: TX 0x3 RX 0x3
        Supported interface modes:
                 * IBSS
                 * managed
                 * AP
                 * AP/VLAN
                 * monitor
                 * mesh point
                 * P2P-client
                 * P2P-GO
        Band 1:
                Capabilities: 0x9ff
                        RX LDPC
                        HT20/HT40
                        SM Power Save disabled
                        RX Greenfield
                        RX HT20 SGI
                        RX HT40 SGI
                        TX STBC
                        RX STBC 1-stream
                        Max AMSDU length: 7935 bytes
                        No DSSS/CCK HT40
                Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
                Minimum RX AMPDU time spacing: 4 usec (0x05)
                HT TX/RX MCS rate indexes supported: 0-15
                HE Iftypes: managed
                        HE MAC Capabilities (0x08011a000040):
                                +HTC HE Supported
                                Trigger Frame MAC Padding Duration: 2
                                OM Control
                                Maximum A-MPDU Length Exponent: 3
                                A-MSDU in A-MPDU
                        HE PHY Capabilities: (0x22700e120d00f30e423f00):
                                HE40/2.4GHz
                                242 tone RUs/2.4GHz
                                Device Class: 1
                                LDPC Coding in Payload
                                HE SU PPDU with 1x HE-LTF and 0.8us GI
                                NDP with 4x HE-LTF and 3.2us GI
                                STBC Tx <= 80MHz
                                STBC Rx <= 80MHz
                                DCM Max Constellation: 2
                                DCM Max Constellation Rx: 2
                                SU Beamformee
                                Beamformee STS <= 80Mhz: 3
                                Codebook Size SU Feedback
                                Codebook Size MU Feedback
                                Triggered CQI Feedback
                                Partial Bandwidth Extended Range
                                Partial Bandwidth DL MU-MIMO
                                PPE Threshold Present
                                Power Boost Factor ar
                                HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
                                Max NC: 1
                                20MHz in 40MHz HE PPDU 2.4GHz
                                DCM Max BW: 1
                                Longer Than 16HE SIG-B OFDM Symbols
                                Non-Triggered CQI Feedback
                                TX 1024-QAM
                                RX 1024-QAM
                                RX Full BW SU Using HE MU PPDU with Compression SIGB
                                RX Full BW SU Using HE MU PPDU with Non-Compression SIGB
                        HE RX MCS and NSS set <= 80 MHz
                                1 streams: MCS 0-11
                                2 streams: MCS 0-11
                                3 streams: not supported
                                4 streams: not supported
                                5 streams: not supported
                                6 streams: not supported
                                7 streams: not supported
                                8 streams: not supported
                        HE TX MCS and NSS set <= 80 MHz
                                1 streams: MCS 0-11
                                2 streams: MCS 0-11
                                3 streams: not supported
                                4 streams: not supported
                                5 streams: not supported
                                6 streams: not supported
                                7 streams: not supported
                                8 streams: not supported
                        PPE Threshold 0x39 0x1c 0xc7 0x71 0x1c 0x07
                EHT Iftypes: managed
                        EHT MAC Capabilities (0x0000):
                        EHT PHY Capabilities: (0x0000000000000000):
                        EHT MCS/NSS: (0x):
                        EHT bw=20 MHz, max NSS for MCS 0-7: Rx=0, Tx=0
                        EHT bw=20 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
                        EHT bw=20 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
                        EHT bw=20 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
                HE Iftypes: AP
                        HE MAC Capabilities (0x00051a081044):
                                +HTC HE Supported
                                TWT Responder
                                BSR
                                OM Control
                                Maximum A-MPDU Length Exponent: 3
                                BQR
                                A-MSDU in A-MPDU
                                OM Control UL MU Data Disable RX
                        HE PHY Capabilities: (0x02200e920f01af08000c00):
                                HE40/2.4GHz
                                LDPC Coding in Payload
                                NDP with 4x HE-LTF and 3.2us GI
                                STBC Tx <= 80MHz
                                STBC Rx <= 80MHz
                                DCM Max Constellation: 2
                                DCM Max Constellation Rx: 2
                                SU Beamformer
                                SU Beamformee
                                MU Beamformer
                                Beamformee STS <= 80Mhz: 3
                                Sounding Dimensions <= 80Mhz: 1
                                Codebook Size SU Feedback
                                Codebook Size MU Feedback
                                Triggered SU Beamforming Feedback
                                Triggered MU Beamforming Feedback
                                Partial Bandwidth Extended Range
                                PPE Threshold Present
                                Max NC: 1
                                TX 1024-QAM
                                RX 1024-QAM
                        HE RX MCS and NSS set <= 80 MHz
                                1 streams: MCS 0-11
                                2 streams: MCS 0-11
                                3 streams: not supported
                                4 streams: not supported
                                5 streams: not supported
                                6 streams: not supported
                                7 streams: not supported
                                8 streams: not supported
                        HE TX MCS and NSS set <= 80 MHz
                                1 streams: MCS 0-11
                                2 streams: MCS 0-11
                                3 streams: not supported
                                4 streams: not supported
                                5 streams: not supported
                                6 streams: not supported
                                7 streams: not supported
                                8 streams: not supported
                        PPE Threshold 0x39 0x1c 0xc7 0x71 0x1c 0x07
                EHT Iftypes: AP
                        EHT MAC Capabilities (0x0000):
                        EHT PHY Capabilities: (0x0000000000000000):
                        EHT MCS/NSS: (0x):
                        EHT bw=20 MHz, max NSS for MCS 0-7: Rx=0, Tx=0
                        EHT bw=20 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
                        EHT bw=20 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
                        EHT bw=20 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
                HE Iftypes: mesh point
                        HE MAC Capabilities (0x00011a000040):
                                +HTC HE Supported
                                OM Control
                                Maximum A-MPDU Length Exponent: 3
                                A-MSDU in A-MPDU
                        HE PHY Capabilities: (0x02200c0000000000008000):
                                HE40/2.4GHz
                                LDPC Coding in Payload
                                STBC Tx <= 80MHz
                                STBC Rx <= 80MHz
                        HE RX MCS and NSS set <= 80 MHz
                                1 streams: MCS 0-11
                                2 streams: MCS 0-11
                                3 streams: not supported
                                4 streams: not supported
                                5 streams: not supported
                                6 streams: not supported
                                7 streams: not supported
                                8 streams: not supported
                        HE TX MCS and NSS set <= 80 MHz
                                1 streams: MCS 0-11
                                2 streams: MCS 0-11
                                3 streams: not supported
                                4 streams: not supported
                                5 streams: not supported
                                6 streams: not supported
                                7 streams: not supported
                                8 streams: not supported
                EHT Iftypes: mesh point
                        EHT MAC Capabilities (0x0000):
                        EHT PHY Capabilities: (0x0000000000000000):
                        EHT MCS/NSS: (0x):
                        EHT bw=20 MHz, max NSS for MCS 0-7: Rx=0, Tx=0
                        EHT bw=20 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
                        EHT bw=20 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
                        EHT bw=20 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
                Frequencies:
                        * 2412 MHz [1] (20.0 dBm)
                        * 2417 MHz [2] (20.0 dBm)
                        * 2422 MHz [3] (20.0 dBm)
                        * 2427 MHz [4] (20.0 dBm)
                        * 2432 MHz [5] (20.0 dBm)
                        * 2437 MHz [6] (20.0 dBm)
                        * 2442 MHz [7] (20.0 dBm)
                        * 2447 MHz [8] (20.0 dBm)
                        * 2452 MHz [9] (20.0 dBm)
                        * 2457 MHz [10] (20.0 dBm)
                        * 2462 MHz [11] (20.0 dBm)
                        * 2467 MHz [12] (20.0 dBm)
                        * 2472 MHz [13] (20.0 dBm)
                        * 2484 MHz [14] (disabled)
        valid interface combinations:
                 * #{ IBSS } <= 1, #{ AP, mesh point } <= 16, #{ managed } <= 19,
                   total <= 19, #channels <= 1, STA/AP BI must match, radar detect widths: { 20 MHz (no HT), 20 MHz, 40 MHz, 80 MHz, 160 MHz }

        HT Capability overrides:
                 * MCS: ff ff ff ff ff ff ff ff ff ff
                 * maximum A-MSDU length
                 * supported channel width
                 * short GI for 40 MHz
                 * max A-MPDU length exponent
                 * min MPDU start spacing
        max # scan plans: 1
        max scan plan interval: -1
        max scan plan iterations: 0
        Supported extended features:
                * [ VHT_IBSS ]: VHT-IBSS
                * [ RRM ]: RRM
                * [ BEACON_RATE_LEGACY ]: legacy beacon rate setting
                * [ BEACON_RATE_HT ]: HT beacon rate setting
                * [ BEACON_RATE_VHT ]: VHT beacon rate setting
                * [ FILS_STA ]: STA FILS (Fast Initial Link Setup)
                * [ CQM_RSSI_LIST ]: multiple CQM_RSSI_THOLD records
                * [ CONTROL_PORT_OVER_NL80211 ]: control port over nl80211
                * [ ACK_SIGNAL_SUPPORT ]: ack signal level support
                * [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
                * [ SCAN_RANDOM_SN ]: use random sequence numbers in scans
                * [ SCAN_MIN_PREQ_CONTENT ]: use probe request with only rate IEs in scans
                * [ CAN_REPLACE_PTK0 ]: can safely replace PTK 0 when rekeying
                * [ AIRTIME_FAIRNESS ]: airtime fairness scheduling
                * [ AQL ]: Airtime Queue Limits (AQL)
                * [ CONTROL_PORT_NO_PREAUTH ]: disable pre-auth over nl80211 control port support
                * [ DEL_IBSS_STA ]: deletion of IBSS station support
                * [ SCAN_FREQ_KHZ ]: scan on kHz frequency support
                * [ CONTROL_PORT_OVER_NL80211_TX_STATUS ]: tx status for nl80211 control port support
                * [ FILS_DISCOVERY ]: FILS discovery frame transmission support
                * [ UNSOL_BCAST_PROBE_RESP ]: unsolicated broadcast probe response transmission support
                * [ BEACON_RATE_HE ]: HE beacon rate support (AP/mesh)
                * [ BSS_COLOR ]: BSS coloring support

I don't see anything suspicious in dmesg (here are the lines with phy0 and radio0):

Wed Feb  7 22:54:34 2024 daemon.notice netifd: radio0 (2242): WARNING: Variable 'data' does not exist or is not an array/object
Wed Feb  7 22:54:34 2024 daemon.notice hostapd: Set new config for phy phy0:
Wed Feb  7 22:54:34 2024 daemon.notice wpa_supplicant[1553]: Set new config for phy phy0
Wed Feb  7 22:54:36 2024 daemon.notice wpa_supplicant[1553]: Set new config for phy phy0
Wed Feb  7 22:54:36 2024 daemon.notice hostapd: Set new config for phy phy0: /var/run/hostapd-phy0.conf
Wed Feb  7 22:54:36 2024 daemon.notice hostapd: Restart interface for phy phy0
Wed Feb  7 22:54:36 2024 kern.info kernel: [   31.811601] br-lan: port 4(phy0-ap0) entered blocking state
Wed Feb  7 22:54:36 2024 kern.info kernel: [   31.817232] br-lan: port 4(phy0-ap0) entered disabled state
Wed Feb  7 22:54:36 2024 kern.info kernel: [   31.823587] device phy0-ap0 entered promiscuous mode
Wed Feb  7 22:54:36 2024 kern.info kernel: [   31.829009] br-lan: port 4(phy0-ap0) entered blocking state
Wed Feb  7 22:54:36 2024 kern.info kernel: [   31.834766] br-lan: port 4(phy0-ap0) entered forwarding state
Wed Feb  7 22:54:36 2024 daemon.notice hostapd: phy0-ap0: interface state UNINITIALIZED->COUNTRY_UPDATE
Wed Feb  7 22:54:36 2024 kern.info kernel: [   31.841715] br-lan: port 4(phy0-ap0) entered disabled state
Wed Feb  7 22:54:37 2024 kern.info kernel: [   32.279442] IPv6: ADDRCONF(NETDEV_CHANGE): phy0-ap0: link becomes ready
Wed Feb  7 22:54:37 2024 kern.info kernel: [   32.286597] br-lan: port 4(phy0-ap0) entered blocking state
Wed Feb  7 22:54:37 2024 kern.info kernel: [   32.292301] br-lan: port 4(phy0-ap0) entered forwarding state
Wed Feb  7 22:54:37 2024 daemon.notice netifd: Network device 'phy0-ap0' link is up
Wed Feb  7 22:54:37 2024 user.info usteer: Creating local node hostapd.phy0-ap0
Wed Feb  7 22:54:37 2024 daemon.notice hostapd: phy0-ap0: interface state COUNTRY_UPDATE->ENABLED
Wed Feb  7 22:54:37 2024 daemon.notice hostapd: phy0-ap0: AP-ENABLED
Wed Feb  7 22:54:37 2024 user.info usteer: Found nl80211 phy on wdev hostapd.phy0-ap0, ssid=MY-AP-SSID
Wed Feb  7 22:54:37 2024 user.info usteer: Connecting to local node hostapd.phy0-ap0
Wed Feb  7 22:54:37 2024 daemon.notice netifd: Wireless device 'radio0' is now up

Wed Feb  7 22:54:38 2024 daemon.info hostapd: phy0-ap0: STA aa:aa:aa:aa:aa:aa IEEE 802.11: authenticated
Wed Feb  7 22:54:38 2024 daemon.info hostapd: phy0-ap0: STA aa:aa:aa:aa:aa:aa IEEE 802.11: associated (aid 1)
Wed Feb  7 22:54:38 2024 daemon.notice hostapd: phy0-ap0: WDS-STA-INTERFACE-ADDED ifname=phy0-ap0.sta1 sta_addr=aa:aa:aa:aa:aa:aa

Wed Feb  7 22:54:38 2024 daemon.notice netifd: Network device 'phy0-ap0.sta1' link is up
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.705223] br-lan: port 5(phy0-ap0.sta1) entered blocking state
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.711399] br-lan: port 5(phy0-ap0.sta1) entered disabled state
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.718168] device phy0-ap0.sta1 entered promiscuous mode
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.724140] br-lan: port 5(phy0-ap0.sta1) entered blocking state
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.730220] br-lan: port 5(phy0-ap0.sta1) entered forwarding state
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.739879] device phy0-ap0.sta1 left promiscuous mode
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.745558] br-lan: port 5(phy0-ap0.sta1) entered disabled state
Wed Feb  7 22:54:38 2024 daemon.notice netifd: Network device 'phy0-ap0.sta1' link is down
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.816015] br-lan: port 5(phy0-ap0.sta1) entered blocking state
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.822112] br-lan: port 5(phy0-ap0.sta1) entered disabled state
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.828905] device phy0-ap0.sta1 entered promiscuous mode
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.834980] br-lan: port 5(phy0-ap0.sta1) entered blocking state
Wed Feb  7 22:54:38 2024 kern.info kernel: [   33.841066] br-lan: port 5(phy0-ap0.sta1) entered forwarding state
Wed Feb  7 22:54:38 2024 daemon.notice netifd: Network device 'phy0-ap0.sta1' link is up

Wed Feb  7 22:54:38 2024 daemon.notice hostapd: phy0-ap0: AP-STA-CONNECTED aa:aa:aa:aa:aa:aa auth_alg=open
Wed Feb  7 22:54:38 2024 daemon.info hostapd: phy0-ap0: STA aa:aa:aa:aa:aa:aa RADIUS: starting accounting session EDACXXXXXXXXXXXX
Wed Feb  7 22:54:38 2024 daemon.info hostapd: phy0-ap0: STA aa:aa:aa:aa:aa:aa WPA: pairwise key handshake completed (RSN)
Wed Feb  7 22:54:38 2024 daemon.notice hostapd: phy0-ap0: EAPOL-4WAY-HS-COMPLETED aa:aa:aa:aa:aa:aa

Wed Feb  7 22:54:46 2024 daemon.info hostapd: phy0-ap0: STA bb:bb:bb:bb:bb:bb IEEE 802.11: authenticated
Wed Feb  7 22:54:46 2024 daemon.info hostapd: phy0-ap0: STA bb:bb:bb:bb:bb:bb IEEE 802.11: associated (aid 2)
Wed Feb  7 22:54:46 2024 daemon.notice hostapd: phy0-ap0: STA-OPMODE-SMPS-MODE-CHANGED bb:bb:bb:bb:bb:bb off
Wed Feb  7 22:54:46 2024 daemon.notice hostapd: phy0-ap0: AP-STA-CONNECTED bb:bb:bb:bb:bb:bb auth_alg=open
Wed Feb  7 22:54:46 2024 daemon.info hostapd: phy0-ap0: STA bb:bb:bb:bb:bb:bb RADIUS: starting accounting session E395XXXXXXXXXXXX
Wed Feb  7 22:54:46 2024 daemon.info hostapd: phy0-ap0: STA bb:bb:bb:bb:bb:bb2 WPA: pairwise key handshake completed (RSN)
Wed Feb  7 22:54:46 2024 daemon.notice hostapd: phy0-ap0: EAPOL-4WAY-HS-COMPLETED bb:bb:bb:bb:bb:bb

those are marketing figures, nowhere near real life.

more info can be found in Understanding WiFi-Performance with OpenWRT compared to OEM firmware

Hi, thank you for the quick reply.

I am not complaining about the actual throughput, but about the maximum speed supported / reported by OpenWRT. The link you shared seems to discuss why the actual throughput is low.

this is in the thread.

it doesn't.

1 Like

Per 20 MHz channel width and per stream you get a PHY rate of 72 Mb for 2.4 GHz (N). (Some manufacturers have proprietary turbo modes which if supported give a little extra)

You have 40 MHz channel width so this give you per stream about 150 Mb/s.

Although your router can support more than two streams (a stream is in practice more or less equivalent to an Antenna) almost all clients cannot support more than two streams.
So almost all clients will show a PHY rate of 300 Mb/s (actual throughput is 2/3 of this under ideal circumstances)

If I connect my two R7800 routers (four streams) then that connections shows a PHY rate of 600 Mb/s.

So like @frollic already said it has nothing to do with OpenWRT but with false promises/marketing speak by the manufacturer.

1 Like

If you are satisfied and have a working solution for your use case please mark that solution as solved:

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.