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

Hi,

Sorry for the necromancy, but I have this issue today.

Was the rt2870.bin ever included?

JEff

If you’re still experiencing this issue / I’m guessing no.

As Pi integrated WiFi it has become easier for me to just support the integrated hardware. In the older days with the poor support of Realtek and other vendors on Linux it was like the Wild West.

I’d suggest you just download the firmware manually if comfortable with that. I will rethink the WiFi strategy

Cheers

Sam