Is Open Source Wifi Perfomance Bad?

September 2022:

I quote:

athXX and mt7xxx and others
Firmware regularly regresses stable kernels
Firmware regularly just crashes for things like
WPA3, 5Ghz, if you look at them the wrong way

Yes, Linux support could be better. Yes it depends on the device. There are some good ones out there and there are some that could be better. I guess you were unlucky. I would suggest to check the forum for real world experiences with supported devices and look at measurements, before procuring them, unless you feel like taking a bet.

If you look at the toh for ax devices, which (at least for now) depicts many of the devices, which receive lots of support by manufacturers, you can see all their wifi radios are from two chipset vendors: Mediatek and Qualcomm. Naturally i would expect older devices, which were supported by these two to have received decent support, but I also hear that vendors often use specific proprietary measures in their OEM software to make their devices more efficient.

Many other manufacturers also upstream support to the Linux kernel (with limited features, as you should come to understand if you have had a look at the presentation), instead of also directly to OpenWrt (Upstreaming into the kernel is the right thing to do, because everything that is in the kernel can be backported to multiple downstream distributions. OpenWrt is such a downstream distribution), so there is a timewindow until some of these devices become available here, and since this can take a little while (months/years), OpenWrt developers and users that open pull-requests may instead decide to work on, support and improve devices that are compatible with OpenWrt's current linux kernel.

Take the chipset vendor Realtek for example: For 802.11ac usb devices, they publish out of kernel drivers. Those are not completely compatible with the Linux kernel. The community has started to fix, adapt and upstream some of these drivers to the Linux kernel (rtw88, rtw89) and once OpenWrt will move to kernel 6.1 or something, there is the option for them to become supported here in OpenWrt. Most architectures in the OpenWrt snapshots are currently using kernel 5.15. Here, currently, the community singlehandedly drives the effort to support devices in a future OpenWrt version.

As far as I can see, Mediatek is doing it differently: Their employees upstream lots of their code into the Linux kernel, while at the same time, if you follow mt76 driver development, you will notice that some of their employees support OpenWrt directly by following community issues. Many of their patches are backported and changes are committed to various OpenWrt related repositories directly. Here, both the community and company employees support OpenWrt.

Theoretically, open source does not make wifi bad. If the code works, it works. Open sourced or closed source, the code may be the same. What makes wifi bad is lacking support. If there is no support by chipset vendors and manufacturers, there is only so much the community can do. The community will be able to do LESS, if the code is closed source. If Manufacturers decide to only publish old code, parts of their code, then open source code may not outperform their OEM software.

Your devices were supported by Qualcomm. I personally do not have any experience with their devices, but hear that they have some binary blobs as firmware, so naturally, the community is limited in what it can do.

Anyway. My personal experience is quite good with my mt7915 device (D-Link dap-x1860).

I tend to look at it this way:

  • OEM software provides a specific feature set.
  • Open Source software (OpenWrt) provides a specific feature set.
  • Some/Many of these feature sets overlapp with each other, whereas some do not.

This is, because many OEMs are actually based on OpenWrt (albeit often an older stable versions of it), but they put their own code on top of it or adapt the code. Some features of OpenWrt and fixes will never make it into the OEM (because vendors refrain from updating their drivers/firmware), whereas some features from the OEM will make it into OpenWrt eventually and unfortunately (or fortunately?!), some features may never make it into OpenWrt.

Choose your poison :smiley:

4 Likes