Wifi problem RT5572

First, i thank you all for osmc, I really like it :slightly_smiling:
Let me briefly introduce my setup before describing my issue.

-100down/10up Mbps internet connection, gigabit router with wifi n (only 2.4Ghz)
-rpi2 mounting minibian as torrent box, with a external drive formatted in ext4. it has a samba and nfs share. I get a constant 98Mbps throughput in samba over ethernet.
-rpi B+ in another room, connected via wifi mounting osmc.

Although iwconfig wlan0 shows ā€œLink Quality=100/100 Signal level=81/100 Noise level=0/100ā€, with an edimax adapter , i only get a 40Mbps throughput, probably because there are other wifi.

so i decided to buy a ā€œbetterā€ wifi dongle with external antennas and i went for this, which is based on the ralink/mediatek RT5572 chip.
But performance did not improve at all. Here are some iperf test that iā€™ve done in the past hour(s) between the minibian server and osmc. I tried every wifi channel with both adapters.
Long story short: edimax best result 43,2Mbps on ch10, ralink best result 9,1Mbps on ch1.

iper server: ā€œiperf -s -i2ā€
iperf client: ā€œiperf -c 192.168.1.101 -i2 -t60 -p5001ā€ one minute long test

Ralink results (Mbps):

  • Ch1: min5, max16, MEAN 9,1
  • Ch2: min6, max17, MEAN 8,6
  • Ch3: min5, max11, MEAN 7,2
  • Ch4: min0, max4, MEAN 2,0
  • Ch5: min0, max5, MEAN 2,1
  • Ch6: min3, max7, MEAN 4,3
  • Ch7: min2, max6, MEAN 3,0
  • Ch8: min2, max5, MEAN 3,6
  • Ch9: min3, max11, MEAN 5,7
  • Ch10: min6, max16, MEAN 8,3
  • Ch11: not performed
  • Ch12: not performed
  • Ch13: not performed

Edimax results (Mbps):

  • Ch1: min32, max41, MEAN 37,9
  • Ch2: min37, max42, MEAN 40,7
  • Ch3: min20, max39, MEAN 35,4
  • Ch4: min8, max35, MEAN 28,4
  • Ch5: min15, max35, MEAN 29,1
  • Ch6: min5, max31, MEAN 22,2
  • Ch7: min10, max27, MEAN 18,5
  • Ch8: min15, max34, MEAN 28,1
  • Ch9: min22, max39, MEAN 33,0
  • Ch10: min39, max45, MEAN 43,2
  • Ch11: min3, max43, MEAN 34,6
  • Ch12: min18, max40, MEAN 36,8
  • Ch13: min0, max5, MEAN 3,0

Itā€™s incredible how the ralink, with external antennas could perform such bad, iā€™m pretty disappointedā€¦ itā€™s not possible to stream even SD media.

Is it possible that is a software (driver) issue?
Is it possible to use the driver specified by the manufacturer?

thank you very much in advance.
Giulio

On a Pi 1, USB throughput might be capped by cpu speed. Does the speed improve if you overclock the pi?

Also you can try usb_max_current setting in config.txt to make sure that the adapter gets the power it needs.
Big external antennas scream for a bit more power.

Hi, good point.
I run again 3 one minute tests for each overclock setting, while watching the load average (and the cpu temp).
Iā€™m no linux expert, but I think we could rule that out, as I dont have an high cpu load (more or less 50% at every frequency) and the speed does not seem to be affected.

Here the results, with Edimax wifi dongle:
Normal overclock setting:
Test1 41,7 Mbps
Test2 43,1
Test3 43,1
(42,63 mean)
Cpu 50%, 41Ā°C

Medium overclock setting:
Test1 43,7 Mbps
Test2 43,0
Test3 44,4
(43,7 mean)
Cpu 51%, 42Ā°C

High overclock setting:
Test1 42,8 Mbps
Test2 42,5
Test3 39,0
(41,3 mean)
Cpu 40%, 43Ā°C

I also noticed that the ralink dongle came with a cd driver, which points at the same driver of the previous post.

PS: Every test I did, including the yesterday ones were with max usb current enabled.
Giulio

Is it possible to install that driver?
Can anyone point me in the right direction?

Best regards
Giulio

Hi, I found an help file in the driver tar supplied with the cd.
http://paste.osmc.io/juvihacabe.vhdl

Is there anyone able to suggest which setting is the right one?

3> In os/linux/config.mk
define the GCC and LD of the target machine
define the compiler flags CFLAGS
modify to meet your need.
** Build for being controlled by NetworkManager or wpa_supplicant wext functions
Please set ā€˜HAS_WPA_SUPPLICANT=yā€™ and ā€˜HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=yā€™.
=> #>cd wpa_supplicant-x.x
=> #>./wpa_supplicant -Dwext -ira0 -c wpa_supplicant.conf -d
** Build for being controlled by WpaSupplicant with Ralink Driver
Please set ā€˜HAS_WPA_SUPPLICANT=yā€™ and ā€˜HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=nā€™.
=> #>cd wpa_supplicant-0.5.7
=> #>./wpa_supplicant -Dralink -ira0 -c wpa_supplicant.conf -d

Thanks

If you are getting an actual measured (for example iperf benchmark) wireless throughput of 40Mbps on a Pi 1 you are doing extremely well. Best I have ever managed is about 20Mbps.

You wonā€™t get much more than this due to the slow CPU and limited USB implementation of the Pi. Even the Ethernet interface will not be able to manage much more than about 50Mbps when Kodi is busy playing video, due to CPU contention.

On a Pi 2 I have seen up to 110Mbps over wifi, which shows that it is CPU that is the main limiting factor, as the USB controller in the Pi 2 is the same as the Pi 1.

Thank you for sharing your experience, today i tried to move the raspberry in the same room as the modem, with the same result.
After reading your comment i was curios and I tried iperf over ethernet, hitting barely 60Mbps!

This still does not explain why the ralink wifi adapter performs so poorly.
Anyway, the little old raspberry pi1 works great with osmc, but sometimes (once every 10m) pauses for buffering when watching 13GB 1080p movies :smiley:
Iā€™ll try to work a little bit on the cache size of kodi, maybe it could help.

Probably I should upgrade to an ODROID C1+ which is faster and has hardware h265 decodingā€¦

Thanks for all the support, Iā€™m having great fun!

Giulio

Yes. ā€œUpgradeā€ to the c1 and enjoy the magnificent support :wink:

Better get a Vero 2 if x265 is a thing you want.