For Linux users there’s still a problem with newer WiFi chipset working in 5 GHz 802.11ac. Years ago we had the same kind of problems with 2.4 GHz frequency, now 2.4 GHz works out of the box but we suffer the same issues about 5 GHz. However, there’s one simple solution to avoid them all using different device than WiFi card - the WiFi extender. In this article I’ll show what results I’ve achieved on TP-Link RE200 and why such devices can be better solution than buying 802.11ac WiFi USB/PCI-E cards.
I remember times when after installing new Linux system all possible devices were working but never a WiFi card. You had to be prepared to compile different versions of different kernel modules, taken from different places on internet. Now 2.4 GHz works out of the box but the same is now about 5 GHz. Despite having even some drivers built in current kernel versions, people experience a lot of problems like: having no connection, constant disconnections, slow transfers etc. On the other hand the current status of Linux-compatible external 5 GHz WiFi cards working without problems is very short.
I was experiencing these problems last year, but then suddenly my rtl8812au
USB WiFi card stopped working (it was probably just after my daughter used it as a cake decoration). Then I started to look for better solution, and then it turned out that after a year or so there’s still no better solutions. But then I found it. Better solution devoid of problems with chipset/driver compatibility is to buy a wireless device called “wifi repeater+extender”. This is a device you can connect with a LAN cable to, and which should support 802.11ac itself without taking care of the chipset type, driver version, the weather or your wife’s mood. Either it just works or you can return it to the shop.
The one I bought is TP-Link RE200 but there’s of course a lot more of this kind of devices on the market. However, I can only show how this one works. Note, that this device is equipped with 100 MBit LAN port only (which is enough for me, because I have only 60 MBit Internet here) but you can buy a little more expensive devices with 1 GBit LAN ports.
The flat I currently live in is very crowded. I have more or less 20 WiFis around in 2.4 GHz bandwidth. I have a dual band router located about 12 meters from my desktop computer and behind two walls. I also have a different Linux device connected through LAN cable to this router, so I can run iperf -s
on it to check the exact transfer rates in my local network. This distance plus congested area results in following poor performance of 2.4 GHz card connected directly to my Linux desktop (rt2800usb
):
lukasz@lukaszf ~ $ iperf -c 192.168.0.15
------------------------------------------------------------
Client connecting to 192.168.0.15, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.122 port 41359 connected with 192.168.0.15 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.6 sec 7.50 MBytes 5.92 Mbits/sec
Now, to get something better using 5 GHz bandwidth I’ve put TP-Link RE200 about 5 meters from the computer (still behing two walls) where it is about in a 7 meters distance from the router. I connected Linux desktop computer to RE200 with LAN cable and configured 5 GHz extender. Here are the results:
lukasz@lukaszf ~ $ iperf -c 192.168.0.15
------------------------------------------------------------
Client connecting to 192.168.0.15, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.178 port 58296 connected with 192.168.0.15 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 95.5 MBytes 79.8 Mbits/sec
It looks much better, plus please notice I don’t care about RE200 chipset or if the current kernel module supports it well or in usual way :)
There’s also an interesting option to give up cables. RE200 can work in the high speed mode. This means it can connect to the router in 5 GHz (or 2.4 GHz) while it extends signal only in 2.4 GHz (or 5 GHz). Using this option you can just use this device as a repeater, however it can connect to the original router using the fastest channel. I tested it with 5 GHz connection to the router while it exposes only 2.4 GHz WiFi (still crowded here - still about 20 WiFis around). The 2.4 GHz WiFi device is now connected to my desktop Linux computer and located about 5 meters from RE200, while RE200 is connected with the router using 5 GHz frequency and is located about 7 meters away (both two walls are still here). The results in 2.4 GHz waveband with high speed forwarding are following:
lukasz@lukaszf ~ $ iperf -c 192.168.0.15
------------------------------------------------------------
Client connecting to 192.168.0.15, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.24 port 34363 connected with 192.168.0.15 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.6 sec 43.5 MBytes 34.3 Mbits/sec
It’s just suprising how much time I’ve spent to verify 802.11ac chipsets compatibility with current kernel drivers on multiple Linux forums, while such a beautiful solution was just on hand.