Wifi dongle on Raspberry PI 2 (rt2870 driver is missing - BUG?)

Hello,

I am new to OSMC and have Pi2 running a fresh install (VERSION_ID=“2023.01-1”).

With ethernet the network appears to work just fine.
I would like to use a Wifi dongle with chipset Ralink 5370 instead. lsusb result:
Bus 001 Device 006: ID 148f:5370 Ralink Technology, Corp. RT5370 Wireless Adapter

I already was told that the ralink drivers are included in the osmc distribution.

In the Network menu of OSMC the wireless section shows no networks and as I poke around and try to do anything a message briefly appears every time: “Unhandled exception caught - see logs for details”.

So I tried to look here:

osmc@Ulysses:~$ tail -F /home/osmc/.kodi/temp/kodi.log
2023-01-23 22:59:10.272 T:363      INFO <general>: Loading skin file: /usr/share/kodi/addons/script.module.osmcsetting.networking/resources/skins/Default/1080i/network_gui.xml, load type: LOAD_ON_GUI_INIT
2023-01-23 23:00:04.810 T:2473    ERROR <general>: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                                    - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                                   Error Type: <class 'KeyError'>
                                                   Error Contents: 'IPV4'
                                                   Traceback (most recent call last):
                                                     File "/usr/share/kodi/addons/script.module.osmcsetting.networking/resources/lib/osmcnetworking/networking_gui.py", line 535, in onAction
                                                       self.update_current_ip_settings(WIRELESS_IP_VALUES)
                                                     File "/usr/share/kodi/addons/script.module.osmcsetting.networking/resources/lib/osmcnetworking/networking_gui.py", line 995, in update_current_ip_settings
                                                       self.current_network_config[self.internet_protocol]['Address'] = ip_address
                                                   KeyError: 'IPV4'
                                                   -->End of Python script error report<--

The same error seems to occur when the wired adapter is disabled.

dmesg:

[   13.124962] usb 1-1.4: reset high-speed USB device number 4 using dwc_otg
[   13.278402] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 5390, rev 0502 detected
[   13.311215] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 5370 detected
[   13.311582] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   13.317256] ieee80211 phy0: rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'
[   13.317433] rt2800usb 1-1.4:1.0: Direct firmware load for rt2870.bin failed with error -2
[   13.317464] ieee80211 phy0: rt2x00lib_request_firmware: Error - Failed to request Firmware

So the firmware failed to load… but it also does not seem to be in the filesystem
osmc@Ulysses:/$ sudo find . -name "rt*.bin" -print
does not return anything.

I followed a tip found here and extracted rt2870.bin from the module in my PC, used sftp to copy it to the PI and as root copied it to /lib/firmware/. The driver now loads and OSMC connects wirelessly :smiley:.

This could be regarded as a bug if the driver was supposed to be there by default?

Thank you

1 Like

(Replied so this can be marked as solved.)

P.S

@pb_osmc thanks for posting the solution.

If the driver isn’t present – can you confirm which kernel module you needed to build?

Anything in /lib/firmware will be firmware (not driver) related.

Unfortunately I don’t have any hardware using this chipset to test with

Sam

Hi @sam_nazarko, I think this was the module:

rt2870.bin

OP extracted from this deb file:
http://ftp.us.debian.org/debian/pool/non-free/f/firmware-nonfree/firmware-ralink_0.43_all.deb

This was a workaround due to a conflicting firmware path when trying to install firmware-misc-nonfree

The ralink 5370 is commonly the canakit branded usb wifi dongle.

So things work now after updating that file?

If so – I can update the firmware we’re providing by default

Cheers

Sam

1 Like

Yes I can confirm that firmware file allows the ralink 5370 to function

Yes, that is indeed what I did. Thanks.
Working well!

ps. apologies for mixing the firmware/driver nomenclature.

1 Like

Thanks for confirming. If it was driver related it would be a bit more complex to support. If we’re just missing a firmware file I can certainly take care of this.

Sam

1 Like