Recently I’ve been having problems streaming content into one of my 2 OSMC devices. It plays local files fine, but ones it streams over NFS (or through the BBC iPlayer kodi app) have been failing miserably - some fail to play at all and those which do play for only a few minutes before buffering.
The Pi concerned is an original model B+ with only 256MB RAM but was working surprisingly well until recently. Unfortunately due to it’s location in the house it has to be on wifi, but this has never caused it a problem before.
Using other devices in the same corner of the same room using wifi adapters with the same chipset I have ruled out NAS performance, NFS mount options and local wifi conditions as being the cause. This isn’t a kodi issue or an issue with the kodi NFS app as the NFS connection is managed by the kernel to a local mount point and kodi sees the files as if they were local.
The issue appears to be with the Pi’s network connection as exactly the same behaviour happens if I try cp /nfs/mount/point/myfile.avi /home/osmc/
- the maximum copy speed I achieve is 36kB/sec! Whereas with another machine in the same location I can get upwards of 600kB/sec and over a wired connection the NAS is capable of delivering upwards of 2MB/sec.
I’ve spend the best part of a week trying to fix this and followed various threads here and elsewhere and I keep coming back to one symptom as the most likely root cause, and this is the flooding of dmesg with the following (full dmesg here):
[ 315.635791] IW_SCAN_THIS_ESSID, ssid=Booflenet, len=9
[ 317.144056] survey done event(15) band:0 for wlan0
[ 617.308713] IW_SCAN_THIS_ESSID, ssid=Booflenet, len=9
[ 618.817542] survey done event(10) band:0 for wlan0
[ 633.544553] rtl8192c_dm_RF_Saving(): RF_Save
[ 653.547776] rtl8192c_dm_RF_Saving(): RF_Normal
[ 719.548494] rtl8192c_dm_RF_Saving(): RF_Save
[ 763.548835] rtl8192c_dm_RF_Saving(): RF_Normal
[ 811.552539] rtl8192c_dm_RF_Saving(): RF_Save
[ 887.555049] rtl8192c_dm_RF_Saving(): RF_Normal
[ 918.876546] IW_SCAN_THIS_ESSID, ssid=Booflenet, len=9
[ 920.360462] survey done event(17) band:0 for wlan0
[ 955.558802] rtl8192c_dm_RF_Saving(): RF_Save
[ 985.558795] rtl8192c_dm_RF_Saving(): RF_Normal
[ 1017.559979] rtl8192c_dm_RF_Saving(): RF_Save
[ 1220.411656] IW_SCAN_THIS_ESSID, ssid=Booflenet, len=9
[ 1221.920777] survey done event(18) band:0 for wlan0
It seems like the WiFi adapter is continually going to sleep and waking up, even when there is network traffic. I saw an answer here (and the same answer in several other threads) but this no longer works as iwconfig
no longer seems to be shipped in OSMC and I’m hesitant to install it in case it interferes with connman.
The blog post announcing the August update does mention a change in the way some Realtek WiFi chips are managed due to a 5GHz connection issue, and I’m wondering if that has affected this, even though this is a different chipset, as this was not happening prior to that update. That said, it could simply be a coincidence or a corrupt file somewhere perhaps. The card itself is sane, I’ve run sudo fsck -fpv -C0
on both partitions and all was clean.
Has anyone come across a similar problem with this chip and resolved it?