Installing OpenWrt fork firmware

to @daniel and @psherman, I do apologize as I'm not really active on the OpenWrt forum and didn't find this post until just now it appeared in my email...

1 Like

That is understandable.
But since we have your attention right now, what do you think is the most reasonable support approach for your fork? This forum would like to be friendly to community forks, but it can be hard to keep track of any material changes that may be relevant to user issues. Should we tag you into the conversations? Should we point people to the GitHub discussions?

2 Likes

To avoid confusion, I think it would be better to track those issues on our own GitHub discussions.
So the latter one sounds great! Thank you so much!


Back to the topic, I think the main issue is to figure out why the MAC setup doesn't work as expected, rather than try luck on other forks.

1 Like

Thanks for responding.

Right off the bat, I am not a Linux engineer nor developer, so the link given on Github, makes no sense to me. :smile:

Yes, the MAC address is still a problem, I have 3 units, and they all have the SAME MAC address. I installed ImmortWrt firmware on 1 unit to try it out, and the problem still remained. Not sure why though.

Someone who has access to the wiki and note this issue and inform the potential victim?

Ok just briefly, I saw some differences.
I need some time to test it out.

Note Please ignore the 2nd picture, it is a known problem.

Questions:

  1. MU-MIMO option - I thought this was enabled by default? There is no such settings in OpenWrt.
  2. Enable 256-QAM = 802.11n 2.4GHz Only --> This setting is shown in WLAN1 (5GHz Radio) --> bug??



Following issue might be related. Seems to have (hopefully?) been fixed two weeks ago, so if you are running a current master snapshot of OpenWrt, it could work already?

Ok thanks.

Sorry, where can I download the current master snapshot?
Here?

and the select the link: Firmware OpenWrt snapshot Upgrade URL

Yes. You can also use the firmware selector: https://firmware-selector.openwrt.org/?version=SNAPSHOT&target=ramips%2Fmt7621&id=totolink_x5000r

1 Like

GitHub is open for everyone :wink:

Nah, it's actually - disabled by default.

It's a known issue, it will be ignored if doesn't apply. Anyway I don't wanna waste more time on 2.4 GHz, so just left it as-is.

OpenWrt 21.02 is based on kernel 5.4, that's correct.

snapshots build doesn't come with LuCI interface, so you can use 22.03-SNAPSHOT which contains the fix too:
https://downloads.openwrt.org/releases/22.03-SNAPSHOT/targets/ramips/mt7621/openwrt-22.03-snapshot-r20119-50d707e344-ramips-mt7621-totolink_x5000r-squashfs-sysupgrade.bin

2 Likes

Yes, I can confirmed, the latest snapshot has finally fixed the issue of all X5000R devices which are having the same MAC addresses in their 5GHz radios.


Yup finally fixed. :slightly_smiling_face:

1 Like

So congratulations.
And https://xyproblem.info ...

3 Likes

Would you care to shed some light into this matter, please? :slightly_smiling_face:

I am just curious to know more about MediaTek Mu-MIMO.
Apparently, this feature is activated by default IF your router hardware supports it. This information is based on a forum user.

I am trying to find out more information about this feature, on the internet.
I even consulted ChatGPT, regarding this matter, and the reply was astounding.

Yes, the OpenWrt MT76 drivers support 
Multi-User Multiple Input Multiple Output (MU-MIMO) technology. 

MU-MIMO allows multiple devices to simultaneously
communicate with a wireless access point, improving
network performance and reducing latency. 

The MT76 drivers are a set of open-source drivers 
that support a variety of wireless chipsets, 
including those manufactured by MediaTek. 
These drivers are included in the OpenWrt operating system, 
which is a popular open-source firmware for routers 
and other network devices.

The support for MU-MIMO in the MT76 drivers 
depends on the specific chipset being used. 
For example, the MT7615 chipset supports MU-MIMO, 
while some older chipsets do not. 

If you're unsure whether your specific hardware 
supports MU-MIMO, you should consult the
documentation or specifications provided by the manufacturer.

I asked ChatGPT to share the link on which the information is based. It has shared 2 links, all links returning back: This topic does not exisit:
https://openwrt.org/docs/techref/hardware/soc/soc.mediatek.mt76
https://openwrt.org/docs/techref/driver/mac80211/mt76

The Ath10K driver does support Mu-MIMO: https://wireless.wiki.kernel.org/en/users/drivers/ath10k/configuration#ath10k_driver

However, on the MT76 driver, I cannot find Mu-MIMO: https://wireless.wiki.kernel.org/en/users/drivers/mediatek?s[]=mediatek

After futher digging, I managed to find out that under the build log of OpenWrt v21.02.0 Changelog: https://openwrt.org/releases/21.02/changelog-21.02.0?s[]=mt76&s[]=mu&s[]=mimo#openwrt_v21020_changelog

This Mu-Mimo feature was disabled by developer: Felix Fietkau @nbd

So what about the latest build OpenWrt stable release v22.03.3, it is still disabled?
If so, can the command: iw list show this Mu-MIMO is turned off?

I consulted my professor, Mr ChatGPT, again, :smile: and he told me find out whether my router is using Mu-MIMO is to type this command: iw dev <interface> station dump.

Then look for the result: SU BEAMFORMEE & MU BEAMFORMEE flags

Here is my result, I performed the command on my AX X5000R while working as an AP.

2 Wifi 6 mobile phones are connected on wlan0 (2.4GHz) wireless interface.

However, no flags were found. :thinking:

Can I conclude that my X5000R does not have Mu-MIMO activated?

root@OpenWrtX5000RAP:~# iw dev wlan0 station dump
Station 26:c2:9b:12:44:f9 (on wlan0)
        inactive time:  100 ms
        rx bytes:       93127720
        rx packets:     364857
        tx bytes:       2021735575
        tx packets:     1702061
        tx retries:     0
        tx failed:      2
        rx drop misc:   2
        signal:         -43 [-48, -44] dBm
        signal avg:     -43 [-48, -44] dBm
        tx bitrate:     270.8 MBit/s HE-MCS 11 HE-NSS 2 HE-GI 1 HE-DCM 0
        tx duration:    891806113 us
        rx bitrate:     11.0 MBit/s
        rx duration:    94766020 us
        airtime weight: 256
        authorized:     yes
        authenticated:  yes
        associated:     yes
        preamble:       short
        WMM/WME:        yes
        MFP:            no
        TDLS peer:      no
        DTIM period:    2
        beacon interval:100
        short preamble: yes
        short slot time:yes
        connected time: 51974 seconds
        associated at [boottime]:       63.687s
        associated at:  1680964681765 ms
        current time:   1681016655136 ms
Station 80:35:c1:3d:c1:2e (on wlan0)
        inactive time:  20 ms
        rx bytes:       8972364
        rx packets:     57641
        tx bytes:       100936466
        tx packets:     81296
        tx retries:     0
        tx failed:      0
        rx drop misc:   3
        signal:         -71 [-73, -74] dBm
        signal avg:     -68 [-69, -72] dBm
        tx bitrate:     72.2 MBit/s MCS 7 short GI
        tx duration:    94779401 us
        rx bitrate:     72.2 MBit/s MCS 7 short GI
        rx duration:    16496743 us
        airtime weight: 256
        authorized:     yes
        authenticated:  yes
        associated:     yes
        preamble:       short
        WMM/WME:        yes
        MFP:            no
        TDLS peer:      no
        DTIM period:    2
        beacon interval:100
        short preamble: yes
        short slot time:yes
        connected time: 51936 seconds
        associated at [boottime]:       101.543s
        associated at:  1680964719621 ms
        current time:   1681016655138 ms
Station 52:fb:f0:92:0c:3c (on wlan0)
        inactive time:  22190 ms
        rx bytes:       2710148
        rx packets:     8468
        tx bytes:       7288985
        tx packets:     8831
        tx retries:     0
        tx failed:      5
        rx drop misc:   0
        signal:         -62 [-63, -66] dBm
        signal avg:     -61 [-63, -66] dBm
        tx bitrate:     216.6 MBit/s HE-MCS 9 HE-NSS 2 HE-GI 1 HE-DCM 0
        tx duration:    17523244 us
        rx bitrate:     6.0 MBit/s
        rx duration:    2752377 us
        airtime weight: 256
        authorized:     yes
        authenticated:  yes
        associated:     yes
        preamble:       short
        WMM/WME:        yes
        MFP:            no
        TDLS peer:      no
        DTIM period:    2
        beacon interval:100
        short preamble: yes
        short slot time:yes
        connected time: 11925 seconds
        associated at [boottime]:       40112.593s
        associated at:  1681004730672 ms
        current time:   1681016655140 ms
Station 3c:1e:04:00:42:96 (on wlan0)
        inactive time:  100 ms
        rx bytes:       8357918
        rx packets:     53448
        tx bytes:       238590051
        tx packets:     392500
        tx retries:     0
        tx failed:      2
        rx drop misc:   4
        signal:         -54 [-55, -58] dBm
        signal avg:     -53 [-54, -57] dBm
        tx bitrate:     144.4 MBit/s MCS 15 short GI
        tx duration:    548518071 us
        rx bitrate:     130.0 MBit/s MCS 15
        rx duration:    4044567 us
        airtime weight: 256
        authorized:     yes
        authenticated:  yes
        associated:     yes
        preamble:       short
        WMM/WME:        yes
        MFP:            no
        TDLS peer:      no
        DTIM period:    2
        beacon interval:100
        short preamble: yes
        short slot time:yes
        connected time: 2577 seconds
        associated at [boottime]:       49460.949s
        associated at:  1681014079027 ms
        current time:   1681016655141 m
type or paste code here
1 Like

Your TotoLink X5000R uses the mt7915 chipset for its wifi radio (and i think in dbdc mode, which makes it a 2t2r device)

Searching in mt76 repository for "MU-MIMO" yielded following results: https://github.com/openwrt/mt76/search?q=mu-mimo&type=commits

  • MU-MIMO support (Downlink and Uplink) was added for mt7915 in June 2020
  • Uplink Mu-MIMO (UL MU-MIMO) was disabled Septemer 2020
  • UL MU-MIMO was enabled for mt7915 in October 2021
  • UL MU-MIMO was again disabled for mt7915 in June 2022

Why was it disabled? - The commit message reads:

After initially establishing a connection, it can produce multi-second latency
spikes and tx hangs when pushing traffic.
It should work better for MT7916 and MT7986, so leave it enabled there

As you can see it indeed depends on your chipset, if MU-MIMO is enabled or not. Furthermore, MU-MIMO is not automatically the same as beamforming. According to Wikipedia, classical MU-MIMO does not make use of beamforming technology, whereas CO-MIMO does [source 1]. To me it is not clear if this is a difference in name only, or if there are actual technical differences between the two.

What we know for sure is that beamforming can and is enabled and disabled in OpenWrt for various chipsets separately, as we can see here: https://github.com/openwrt/mt76/search?q=beamforming&type=commits

Initial beamforming support was added for mt7915 with following commit: https://github.com/openwrt/mt76/commit/6377b7f330be4a633f6effa6a232f46ad1234647.

You can also check your config if beamformer and beamformee are enabled, like this: cat /etc/config/wireless

Look for

  • option he_su_beamformee '1'
  • option he_su_beamformer '1'
  • option he_mu_beamformee '1'

Source: source 2

PS: Source 2 recommends to set your devices BSS coloring to "8", which is only partly correct. As far as I understand it, BSS should be different for every active connection. So if you have two SSIDs, these two should have different numbers, so as to avoid interference. Do not set BSS coloring to 8 on all your devices. If you refrain from setting it, it will be automatically set to a random number between 1 and 64 (or is it 128?) or something. This info is mentioned in one of the comments down below in that thread.

5 Likes

Now I feel that I have just got scammed by ChatGPT. :open_mouth:

2 Likes

Just to want make sure my understanding here, UL MU-MIMO is the signal from the client to the wireless router? Correct?

Yes, i think so too (but who knows! Have not tested it)

1 Like

oh, my answer is wrong, and @ThiloteE is correct.
i didn't ever check mac80211.sh script these days.

these options are default on and no need to set them in wireless config manually.
sorry for misleading!

2 Likes

Is this kind of valuable information found in the OpenWrt Wiki?

For me, in my case, the X5000R's WLAN MT7915 radio chips beamforming is NOT enabled.