JayEn84
Posts: 3
Joined: Mon Nov 19, 2012 10:40 am

Loading correct kernel modules

Mon Nov 19, 2012 11:09 am

Hi all,

I am trying to make a wifi USB dongle work, which is currently not listed in the list of working sticks, on an RPi 512MB. The hardware is a "Hama Wireless LAN USB 2.0 Stick 300 Mbps", and it appears it has a Ralink rt2870 chipset built-in (although I am not 100% sure about that).

When I plug it into the Pi, "lsmod" tells me that the "rt2800usb" kernel module was loaded for the stick. The hardware finds all WLAN networks nearby, but I cannot connect to any, therefore I would like to blacklist the rt2800usb kernel module and load the "rt2870usb" module instead. So far, I tried the following:

I disconnected the stick from the Pi and created the file "/etc/modprobe.d/blacklist-wifi.conf" with the following content:

Code: Select all

blacklist rt2x00usb
blacklist rt2x00lib
blacklist rt2800usb
blacklist rt2800lib
(I am not sure if it is necessary to have the "2x00" lines as well as the "2800" lines.)

When I connect the stick again, it appears the 2800 module was correctly blacklisted, as "lsmod" does not list it anymore. My problem is, that NO module is loaded for the usb dongle anymore, and I am wondering what I have to do to make the stick use the 2870usb kernel module instead.

Any help is gladly appreciated, thank you very much in advance!

User avatar
joan
Posts: 14681
Joined: Thu Jul 05, 2012 5:09 pm
Location: UK

Re: Loading correct kernel modules

Mon Nov 19, 2012 11:22 am

To see if the module works or not you could use

sudo modprobe rt2870usb

JayEn84
Posts: 3
Joined: Mon Nov 19, 2012 10:40 am

Re: Loading correct kernel modules

Mon Nov 19, 2012 6:19 pm

Mhh, looks like I misunderstood something concerning this kernel module...

sudo modprobe rt2870 returns

Code: Select all

FATAL: Module rt2870 not found.
lsusb returns

Code: Select all

Bus 001 Device 005: ID 148f:2870 Ralink Technology, Corp. RT2870 Wireless Adapter
Like I said before: I thought the rt2800usb module, which is automatically being loaded with the stick (if this module is not blacklisted), is the wrong one. I found this page, and now I am unsure if the rt2800usb module is correct or not. It says "The rt2800usb kernel module is automatically loaded for supported devices. Configure your wireless interface as appropriate." With the rt2800usb module loaded, I can scan for networks, so do you think I rather messed up setting the WLAN network data like SSID and PSK?

sluminatrain
Posts: 3
Joined: Mon Sep 24, 2012 10:40 pm

Re: Loading correct kernel modules

Wed Nov 21, 2012 1:43 am

Hello rt2800usb is the correct module for all 2800 series usb devices, of which your device is a member of. So the module is correct there should be no need to blacklist it.

I do not have a similar device to test, so I would double check your wireless settings and see if you are able to connect to anything e.g. an unsecured network.

Also it should be noted that specific chip requires firmware, if you are using Raspbian it should be included, but if you are using another distro you may have to enable non-free repositories and install "firmware-ralink".

JayEn84
Posts: 3
Joined: Mon Nov 19, 2012 10:40 am

Re: Loading correct kernel modules

Thu Nov 22, 2012 8:54 pm

Although this is pretty strange, the stick is now working! :-)

As exptected by sluminatrain, no other module than the default rt2800usb had to be loaded. I deactivated ANY security in my router (no firewall, no encryption, no MAC filters, made the SSID visible), and I could connect without a problem. After that, I switched all the security stuff on again one by one and tried to reconnect. In the end, the router had the very same configuration like before, and it's still working.

I will try to connect again with a clean Raspbian image and with Raspbmc to check what happens, will let you know if I experience any difficulties.

BTW, sluminatrain: I tried with the current Raspbian distribution, and as far as I understand, the rt2800usb is part of all kernels > 3.0.0

Thanks for your support!

Return to “Beginners”