The point is that the wlan driver when connected to a 2.4 GHz network cannot even nearly max out my external internet connection whereas when connected to a 5 GHz network it can (nominal 50MBit/s). There is no need for iperf to see this.
With 2.4G youâll probably only ever hit 40Mbps max.
From your speeds it looks like the 2.4Ghz channels you are using are significantly congested.
As an aside: are you using Bluetooth?
Sam
I had bluetooth on in connman (though without connected devices). So I switched off bluetooth and repeated my tests. The wireless performance is still bad at 2.4GHz (no improvement visible).
To exclude that the bad performance has something to do with 2.4GHz band congestion I connected my laptop to the access point at 2.4GHz and measured around 3.6 MB/s. So considerably more than on the vero 4k+.
I would strongly suggest you test with iperf and not Speedtest.
In case you keep running into the blocked WLAN issue I described above: connman is blocking it when starting up since it is disabled in its settings. This can then make the wpa_supplicant@wlan0 service fail to start. Thus I modified the underlying /lib/systemd/system/wpa_supplicant@.service
to include connman.service
in the After=
line and added another ExecStartPre=/bin/bash -c 'sleep 5; /usr/sbin/rfkill unblock wifi'
right in front of the ExecStart=
line.
You shouldnât need to change any of this if WiFi is enabled.
Ok I rechecked the situation after having upgraded to 2020.11-1 (November 2020). The wpa_supplicant version is reported as v2.8-devel. The apt update && apt dist-upgrade
mostly undo the changes I suggested above and thus it was a good opportunity to retry without modifications. The wlan connected via a 2.4GHz link (which is the bad performing one) as reported by iw wlan0 link
. wget downloads only reach download speeds of well below 0.1 MB/s. The wireless ssh connection feels sluggish. Downloads via the UI are very slow and fail repeatedly. So in summary the situation is the same as before. Let me also update my instructions from above to include the wifi unblocking I wrote about in one of the subsequent posts and to work with OSMC November 2020:
In order to make things persist (up to a dist-upgrade) I had to perform the following steps (please do that at your own risk and with wired access):
- Disable WiFi and P2P in
/var/lib/connman/settings
. - Write the wpa_supplicant config from my last post to
/etc/wpa_supplicant/wpa_supplicant-wlan0.conf
. - Make sure it is owned by root and cannot be accessed by others:
sudo chown root:root /etc/wpa_supplicant/wpa_supplicant-wlan0.conf && chmod o-rwx /etc/wpa_supplicant/wpa_supplicant-wlan0.conf
-
systemctl enable "wpa_supplicant@wlan0.service"
. systemctl disable wpa_supplicant.service
- Remove
wpa_supplicant.service
from theAfter=
line in/lib/systemd/system/connman.service
. - Backup and remove
fi.epitest.hostap.WPASupplicant.service
andfi.w1.wpa_supplicant1.service
from/usr/share/dbus-1/system-services/
(those are installed by the wpa_supplicant package in case you didnât do the backup). -
sudo apt install dhcpcd5 rfkill
. - Edit
/lib/systemd/system/wpa_supplicant@.service
to- include
connman.service
in theAfter=
line and - add another
ExecStartPre=/bin/bash -c 'sleep 5; /usr/sbin/rfkill unblock wifi'
right in front of theExecStart=
line.
- include
- Edit
/lib/systemd/system/connman-wait-for-network.service
and allow it to proceed even if wlan0 is not under itâs control to a network-online state by patching theExecStart=
line like so:ExecStart=/bin/bash -c "if grep -q nfsroot /proc/cmdline; then exit 0; fi; count=60; while [ $count -gt 0 ]; do if connmanctl state | grep -iq 'ready\\|online'; then break; fi; if wpa_cli -iwlan0 status &> /dev/null ; then break; fi; sleep 1; let count-=1; done; exit 0"
After rebooting iw wlan0 link
should report a 5 GHz frequency and ifconfig wlan0
an IP.
In case things go wrong check journalctl -u wpa_supplicant@wlan0
.
Please let me know if the steps above can be boiled down and whether they work for you.
Since the update of vero3-wifi-osmc from 1.4.0-2 to 1.5.0-1 I even have problems on the 5 GHz link. Anyone else?
What are the problems exactly?
Can you post some logs?
Sam
Video streaming applications like Netflix and others often report errors like âName or service not knownâ. They most often fail to play content. Pinging arbitrary internet hosts (e.g. www.google.de) results in communication dropouts every few seconds (gap in the sequence number, then intermittent high delays), dmesg looked unsuspicious. Iirc the wlan0 interface did not report packet loss. The connman logs reported something suspicous - repeatedly routes got added and deleted:
Oct 12 23:57:27 osmc connmand[2270]: wlan0 {add} route 82.165.8.211 gw 192.168.xyz.1 scope 0 <UNIVERSE>
Oct 12 23:57:27 osmc connmand[2270]: wlan0 {del} route 82.165.8.211 gw 192.168.xyz.1 scope 0 <UNIVERSE>
I have no clue what that is about. Ethernet connection was stable. Other devices had no problem with wireless access.
ConnMan will add a route to verify network connectivity status, so that doesnât seem too suspicious.
A full log might give some clues.