Been checking some more board-2 binaries and got another one that booted. However checking in a hex editor, there are some telling clues:
All BDFs that booted WiFi have this snippet: bus=ahb,qmi-chip-id=0,qmi-board-id=255
And from there the generic ones you shared even specify variant=Netgear-RAX120v2. I got one that does not specify variant, but does specify same qmi board id.
It seems that all BDFs that work must contain board id=255.
There definetly seems to be a parsing error with the NetGear BDF as no matter how high you set the power, it doesn't change quantitavely above 7dbm even if it's saying it applies more. Also its callibration is so incompatible with OpenWRT to the extent that this generic BDF @ 3dbm has ~10 db higher power at isodistance (measured from a phone) than on the NetGear's at 10dbm.
Also it seems the file contains checksums as changing a few bytes results in a non booting WiFi.
lytr
347
Link is OK. But this BDF is for testing only.
zerojj
348
Thank you for check!
Yesterday I tried both of these files, in general I didn’t notice much difference between them. Radio 3 does not work, but this is not critical. I think that on the stock firmware, Radio 3 also did not work, since the guest network on the stock firmware was always created on the same channel and the same channel width as the main one.
Regarding testing, now I am using the file from this firmware (WLAN.HK.2.9.0.1-01890-QCAHKSWPL_SILICONZ-1). I connected the router to my mesh network and connected it to the NAS via 5Gbe. Can I enable log collection in advance to help with future development? I think nothing else can give a larger real load than a connected NAS)
Also, there used to be a bug with the router rebooting when the WAN port was actively used (which is 1GB), I’m not sure if this bug is still there.
lytr
349
I have prepared a test version: https://github.com/testuser7/openwrt/releases/tag/qualcommax-d832eae
Can you check if you have the correct MAC addresses on it?
zerojj
350
Hi! If I correctly understand the ifconfig -a results, there is a same MAC for lan1-lan5 interfaces and the same for radios and wan.
BDF in this firmware is ok, with worked radio3, but maybe better to stay at BDF with only radio 1 and 2, but with maximum transmit power? With radio3 BDF the transmit power at 5Ghz lower than at cheap Xiaomi Mi Router 4A Gigabit Edition (-48dBm at 5 meters against -60dBm at 1 meter)
root@OpenWrt:~# ifconfig -a
br-lan Link encap:Ethernet HWaddr 80:CC:9C:88:C0:06
inet addr:10.0.0.3 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fdd3:bdaf:1aff::1/60 Scope:Global
inet6 addr: fe80::82cc:9cff:fe88:c006/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5704 errors:0 dropped:0 overruns:0 frame:0
TX packets:2133 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2244884 (2.1 MiB) TX bytes:373896 (365.1 KiB)
lan1 Link encap:Ethernet HWaddr 80:CC:9C:88:C0:06
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:3181 errors:0 dropped:0 overruns:0 frame:0
TX packets:1045 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:374757 (365.9 KiB) TX bytes:199999 (195.3 KiB)
Base address:0x1600
lan2 Link encap:Ethernet HWaddr 80:CC:9C:88:C0:06
UP BROADCAST 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)
Base address:0x1400
lan3 Link encap:Ethernet HWaddr 80:CC:9C:88:C0:06
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:65169 errors:0 dropped:0 overruns:0 frame:0
TX packets:28214 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:88502664 (84.4 MiB) TX bytes:21209648 (20.2 MiB)
Base address:0x1200
lan4 Link encap:Ethernet HWaddr 80:CC:9C:88:C0:06
UP BROADCAST 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)
Base address:0x1000
lan5 Link encap:Ethernet HWaddr 80:CC:9C:88:C0:06
UP BROADCAST 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)
Base address:0x7000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:969 errors:0 dropped:0 overruns:0 frame:0
TX packets:969 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:110933 (108.3 KiB) TX bytes:110933 (108.3 KiB)
miireg Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
[NO FLAGS] MTU:0 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)
phy0-ap0 Link encap:Ethernet HWaddr 80:CC:9C:88:C0:07
inet6 addr: fe80::82cc:9cff:fe88:c007/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1185 errors:0 dropped:0 overruns:0 frame:0
TX packets:2626 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:272892 (266.4 KiB) TX bytes:668697 (653.0 KiB)
phy0-mesh0 Link encap:Ethernet HWaddr 82:CC:9C:88:C0:07
inet6 addr: fe80::80cc:9cff:fe88:c007/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:29780 errors:0 dropped:0 overruns:0 frame:0
TX packets:68692 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:22949540 (21.8 MiB) TX bytes:91964371 (87.7 MiB)
wan Link encap:Ethernet HWaddr 80:CC:9C:88:C0:07
BROADCAST 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)
Base address:0x1800
lytr
351
I guess this is the case with the OEM firmware.
Which MAC address is shown on the sticker? lan or wan?
I am unable to solve the low power problem. Which BDF you use depends only on you. But the generic file will probably never be included in the official release.
zerojj
352
I think in my case its do not applicable, because router previously be repaired and serial, passwords for wifi, serial and MAC from the sticker does not correspond to actual state. Mac at sticker 94:A6:7E:53:5E:05
I just tested this firmware. Still low BDF with the included board-2, however using the generic BDF it does have the proper MAC addresses for the WiFi phys.
lytr
354
Is your wan MAC address same as on sticker?
Yep, WAN MAC is 1:1 to the sticker.
Please explain why I get different speeds to/from router for iperf3?
(SNAPSHOT r25436-330316f056 )
# iperf3 -c 192.168.0.1
Connecting to host 192.168.0.1, port 5201
[ 5] local 192.168.0.246 port 43012 connected to 192.168.0.1 port 5201
[ ID] Interval Transfer Bitrate Retr Cwnd
[ 5] 0.00-1.00 sec 61.6 MBytes 517 Mbits/sec 0 2.98 MBytes
[ 5] 1.00-2.00 sec 60.0 MBytes 503 Mbits/sec 108 2.33 MBytes
[ 5] 2.00-3.00 sec 57.5 MBytes 482 Mbits/sec 0 2.51 MBytes
[ 5] 3.00-4.00 sec 57.5 MBytes 482 Mbits/sec 0 2.65 MBytes
[ 5] 4.00-5.00 sec 55.0 MBytes 461 Mbits/sec 0 2.77 MBytes
[ 5] 5.00-6.00 sec 53.8 MBytes 451 Mbits/sec 10 2.01 MBytes
[ 5] 6.00-7.00 sec 58.8 MBytes 493 Mbits/sec 0 2.13 MBytes
[ 5] 7.00-8.00 sec 57.5 MBytes 482 Mbits/sec 0 2.22 MBytes
[ 5] 8.00-9.00 sec 58.8 MBytes 493 Mbits/sec 0 2.30 MBytes
[ 5] 9.00-10.00 sec 56.2 MBytes 472 Mbits/sec 0 2.35 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 577 MBytes 484 Mbits/sec 118 sender
[ 5] 0.00-10.00 sec 573 MBytes 481 Mbits/sec receiver
iperf Done.
# iperf3 -c 192.168.0.1 -R
Connecting to host 192.168.0.1, port 5201
Reverse mode, remote host 192.168.0.1 is sending
[ 5] local 192.168.0.246 port 50340 connected to 192.168.0.1 port 5201
[ ID] Interval Transfer Bitrate
[ 5] 0.00-1.00 sec 110 MBytes 919 Mbits/sec
[ 5] 1.00-2.00 sec 109 MBytes 918 Mbits/sec
[ 5] 2.00-3.00 sec 109 MBytes 912 Mbits/sec
[ 5] 3.00-4.00 sec 109 MBytes 915 Mbits/sec
[ 5] 4.00-5.00 sec 98.7 MBytes 828 Mbits/sec
[ 5] 5.00-6.00 sec 103 MBytes 862 Mbits/sec
[ 5] 6.00-7.00 sec 108 MBytes 910 Mbits/sec
[ 5] 7.00-8.00 sec 110 MBytes 924 Mbits/sec
[ 5] 8.00-9.00 sec 110 MBytes 922 Mbits/sec
[ 5] 9.00-10.00 sec 104 MBytes 874 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bitrate Retr
[ 5] 0.00-10.00 sec 1.05 GBytes 901 Mbits/sec 53 sender
[ 5] 0.00-10.00 sec 1.05 GBytes 898 Mbits/sec receiver
iperf Done.
I don’t have similar problems with other OpenWrt routers, for example with Linksys EA8300.
I see that kernel 6.6 is being introduced into main, curious if anyone knows rough ETA when qualcommax targets will be switched over?
wangyu
358
There is something not openwrt, but some of you might be interested.
Somebody have ported the ASUS AX89X's firmware to RAX120:
https://www.swrt.site/Firmware_Download
or if you can read Chinese, try https://blog.paldier.com/categories/firmware/ (the Chinese page has a better instruction)
I have tried with v2 HW, it works for me and seems to be pretty stable.
However, the souce code is not fully opensource. I have no relation with the development person/team, I cannot say if the firmware is safe or backdoor free.
A majority of the code is opensourced at https://github.com/SWRT-dev/rtax89x, but it seems like the author has purposely not uploaded a few source files necessary for compiling the RAX120 target.
By the way, the wifi drivers are based on qca-wifi drivers (not ath11k).
3 Likes
This looks somewhat interesting. What does the wifi peformance look like so far, does it support 160mhz mode?
Doesn't seem to work. The initial SWRT image loads but when trying to upload the "proper" SWRT update it bricks and doesn't boot anymore. TFTP is then required to restore the device.
wangyu
361
Performance and cover are good. At least noticeable better than the openwrt snapshot. I cannot say how it compares with the official firmware, since I didn't do a thorough test.
160mhz doesn't seem to work: there is a 160mhz option, it can be enabled and it runs. But from my laptop it only shows 80mhz. (the official firmware indeed shows 160mhz on same laptop)
After you flashed the RAX120_SWRT.img. For the first time, before you flash the .trx, you have to wait for the UBIFS partition to be created. While the partition is being created it will show red letter 建立中 on the route web page, after it is done it will turn to 已建立. Otherwise, it might brick as you mentioned.
However, there is a bug that the router might stuck at 建立中 forever. In this case, I have found a workaround:
- Flash openwrt's
squashfs-web-ui-factory.img with tftp and run mtd erase rootfs
- Then flash back to
RAX120_SWRT.img with tftp and retry.
After you get through this, the rest will be easy.
By the way, I only have v2 HW. I tested and confirm it works. I tried it for 1 week and I didn't find any major problem except the 160mhz mentioned above.
(The author claims it works for v1, but I cannot test or confirm)
1 Like
I can confirm that performing erase rootfs did solve the problem. Going to test this FW for features and performance (especially Wi-Fi).
Edit 1: Initial tests seem very good. It has the 160Mhz bug, but Wi-Fi range is excellent. It reports as 30dbm on both bands, using US as the region setting. (This is with Ubnt's WiFiMan).

This is what appears on the firmware directory on SWRT.
kat1337
364
Decided to give it a try, installation instructions were relatively easy to follow even after tranlsating from Chinese, Testing it so far it has been working well.
160Mhz mode does not work but range and power seem on pair with Netgear firmware at 80mhz, PPPoE is failing to receive PADO packets, not sure if it could be an issue with their implementation of VLAN or an issue with pppd (might check the PPP packets later with wireshark but that's kind of offtopic and it's probably a problem with ASUS firmware)
The interesting part is that Wifi seems to be working seemingly well, I'll take a closer look at the WLAN drivers later