LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (http://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   installing a usb wireless RaLink RT2870 (http://www.linuxquestions.org/questions/linux-newbie-8/installing-a-usb-wireless-ralink-rt2870-918706/)

Donovanf 12-14-2011 11:03 AM

installing a usb wireless RaLink RT2870
 
I have downloaded the linux driver from RaLink and extracted them. I could not find an .exe file so I dont know what to do next. I'm running Ubuntu 11.10.
The files are on my desktop SUDO modprobe 2870 returns nothing.
Will someone help me to install this driver, where to put them, permissions etc. ?

dwpbike 12-14-2011 03:53 PM

i have experienced your pain, although i think it was an older driver. my memory is that it was a pain to find, then you do the gcc source, make, etc. not the wrapper business. i see a discussion of 2870 on ubuntu forum.

orgelman 12-14-2011 05:23 PM

Hello,

Try the tip on http://sites.google.com/site/easylin...oject/internet

Good luck

purevw 12-14-2011 07:02 PM

I can give step by step instructions, but we first need to verify what adapter you have. Please give the make and model, plus the USBID of the device. To get that ID, unplug the adapter and then plug it back in after a couple of seconds. Open a terminal and type dmesg. In the last lines of the output, you should see info concerning your adapter. What you are looking for is a number like ????:???? with the question marks being replaced by numbers. It might be better to copy and paste the last several lines of the output, just to verify other possible messages.
The most recent Linux driver posted by Ralinktech for a 2870 is actually called RT3572USB. It actually covers both the 3572 and 2870 chipsets. I use Linksys AE1000 adapters using that driver and they work perfectly as far as general use goes. It works with Network Manager and can be run with WPA or WPA2 encryption. The one hiccup that I have found under Linux is that I haven't been able to use the 5GHZ frequencies yet. Under Windows XP on the same machine, 5GHz made no real difference in throughput that I could see, so I haven't been worrying much about that yet. I just use the 2.4GHz wireless N frequencies and all is well.
Before anything else, if you have followed other instructions and failed to make it work, open a terminal in the root of the driver package. Type "sudo make uninstall". Hit "enter". Enter admin password. Type "sudo make clean" and hit "enter" again. That wipes the slate clean and lets you start fresh. Unplug the adapter and leave it out for now.
In the root directory of your driver directory, there should be a file named README_STA. That file gives basic instructions, but may not cover everything that you need to do.
You will need to open "Makefile" from the root directory of your driver package with a text editor, to verify that it is set up as specified in README_STA. Save the file if you make changes.
You will need to open "/os/linux/config.mk", also with a text editor, and verify that it has the correct options that the README_STA specified also. Save it if you make changes.
Depending on your exact USBID, you may need to modify /common/rtusb_dev_id.c to include your specific adapter. I can help with that once I have the exact ID of the adapter. The driver will not work if this file needs to be modified and is not modified. So stop here until we make sure what needs to be done.
I had problems using the advice of others, and added this step. It may not be 100% necessary, but it does no harm and seemed to make network manager behave better for me. Rename the file "RT2870STA.dat" to "RT2870STA.old". Open that file with a text editor. Before making any changes, save the file as "RT2870STA.dat". Doing this, you are safe in case you mess up. You can always delete the "dat" file and you still have the original "old" file to work with.
Open the file "iwpriv_usage.txt" in a window right next to the "dat" file window. The "txt" file is instructions for editing the "dat" file. Go through, line by line, and edit what is necessary for your particular setup. You may need to look at your router setup to verify things such as channel, security protocols, and such. All this may not be necessary and Network Manager will change the file as you make changes in Network Manager, but I was not able to make the card work correctly until I edited the file by hand before I installed. Once edited and saved, you can copy the "dat" file to /etc/Wireless/RT2870STA/RT2870STA.dat If there is no "Wirelss" directory, you can create it. Just remember that Linux is case sensitive. Wireless and wireless and two different things. Same thing goes for the "RT2870STA" directory. Just a note: When you run "make", the Makefile should move the "dat" file for you. That is why I edit it before I copy it. That way, the edited file is always gets moved.
If everything is done and ready to go, open a terminal in the root of the driver package. Type "sudo make". If there are any errors, they will be at the end of the output. If there are no errors, you should be finished. Plug the device, then type dmesg again in a terminal. The device should be correctly recognized. Check Network Manager. Make sure that wireless is enabled and then see if you can see any wireless networks. If there are still issues, reboot. After a reboot, if the adapter is not working, unplug it and plug it back in. Occasionally the adapter isn't set up correctly during boot and the replug of the adapter usually fixes it.
Before attempting to do any of this, please post the output of dmesg so I can verify if you need to modify the "id.c" file.

purevw 12-14-2011 08:22 PM

Something I forgot. Copy /common/rt2870.bin and paste it into the directory for firmware. In OpenSuSE it is /lib/firmware but it may be a different location in Ubuntu. I copy it by hand so I can verify that the newest version is installed. The Makefile will install it, but may not overwrite the file if an older file of that name already exists.

The information given in the site listed by orgelman will only work for the specific USBID of 1737:0078 But it should be possible to modify the command in the blog to reflect the correct USBID if your is different. Simply replace 1737 0078 in the command with the specific ID of your unit that is shown in the dmesg output. Also, I had read in several blogs that the Linux kernel version 3 has dropped a lot of wifi support. If you are using kernel 3, the info in the article may not work at all because support for the adapter may no longer be in that kernel.

renehasekamp 12-15-2011 09:43 AM

Hi,

As far as I know, from kernel 3.0.0.0 (Ubuntu 11.10) the rt2870sta driver is included in the kernel. So all WiFi usb-sticks that need this driver work now "out of the box".
Mine (Linksys WUSB100) does. I could not get it working under former Ubuntu versions, but now it's plug-and-play.

keirey 12-15-2011 01:09 PM

I know you are trying to install RT2870, but the information on this web page, http://ubuntuforums.org/showthread.php?t=1289917, may be useful, especially the section on blacklisting kernel modules. Even though you may have installed the ralink module correctly, the kernel will still try to use the module included with the kernel, which I have not been able to get to work.

purevw 12-15-2011 01:37 PM

Quote:

Originally Posted by renehasekamp (Post 4550614)
Hi,

As far as I know, from kernel 3.0.0.0 (Ubuntu 11.10) the rt2870sta driver is included in the kernel. So all WiFi usb-sticks that need this driver work now "out of the box".
Mine (Linksys WUSB100) does. I could not get it working under former Ubuntu versions, but now it's plug-and-play.

Correct. 2870 sticks that use that driver do work out of the box. What the problem seems to be is that a fair number of 2870 devices do not use that driver, or better said, that driver won't control a fair number of 2870 devices because it does not recognize them as being a device that they can control.

What does "lsmod" show when your adapter is plugged in? That would show the exact name of the driver loaded to control your device. Also, what is the output of lsusb? Your WUSB100 should either show 1737:0070 (Version 1) or 1737:0078 (Version 2). The "WUSB" series is fairly old and may be better supported by the kernel. From what I have read, there is an in kernel driver called RT28**USB and another called RT37USB that work on a number of 2870 adapters. It will not work on the Linksys AE1000 and many other newer adapters. With the non-working adapters, those in kernel drivers have to be blacklisted for the installed Ralink driver to work. As I mentioned in the earlier post, RT3572STA is the most recent 2870 driver. Even that driver needs to be modified for my own adapter (AE1000 with USBID 13b1:002f).

The USBID is what truly identifies the device to the driver. "Ralink 2870" might encompass dozens of adapters made by dozens of manufacturers. If you want, go to http://www.linux-usb.org/usb.ids and take a look. Do a text search for 2870 and see what you find. The native driver will only control devices with the USBIDs that it is designed to control.

What seems to happen (very simplified) is that the system sees "Ralink 2870 device, ID 13b1:002f", and passes that device to the native 2870 driver. The native driver sees the same info "Ralink 2870 device, ID 13b1:002f" and says "13b1:002f" is not one of the devices I am designed to control" and then does nothing. In that scenario, lsmod will show the native module loaded, but it will simply not work with the plugged adapter. With the driver downloaded from Ralink, it is possible to modify the "id.c" file I mentioned in the earlier post to tell the driver that it is allowed to control device 13b1:002f. But again, the native drivers have to be blacklisted or the system will prefer them and still pass the device to them. Once blacklisted, the system will pass the device to the Ralink driver, which will usually show up as RT3572STA in the output of lsmod, and the device will be known as ra0 rather than wlan0.

As the original author has not responded to my request for more detailed information as to what 2870 adapter he is using, we can't go any farther.

purevw 12-15-2011 01:59 PM

Quote:

Originally Posted by keirey (Post 4550815)
I know you are trying to install RT2870, but the information on this web page, http://ubuntuforums.org/showthread.php?t=1289917, may be useful, especially the section on blacklisting kernel modules. Even though you may have installed the ralink module correctly, the kernel will still try to use the module included with the kernel, which I have not been able to get to work.

You are apparently somewhat familiar with trying to make this work or at least have been reading forums. Maybe I can help. Start with the basics. Is the system loading any native drivers? With the adapter plugged in, what is the output of lsmod? Exactly what adapter are you trying to use? What is the output of dmesg? The USBID shown in dmesg is very important.

In Ubuntu, the correct first step seems to be to disable native drivers (if they don't work for you) before doing anything else. The output of lsmod should tell you what drivers to blacklist (make sure you don't blacklist the Ralink driver that you are trying to make work. Even after you blacklist the drivers, plug the adapter in again and see if the system is trying to use alternate drivers. If so, balcklist them also.

If you have already been trying to install the Ralink drivers before blacklisting the native drivers, it may be best to back up and start from scratch. You can go to the root of the driver directory and do a "make uninstall" and "make clean".

As I wrote earlier, I can't give competent help until I have that USBID for your adapter. The steps I laid out earlier are correct, but if the "id.c" file is not set up for your exact adapter, then the driver simply won't work. Better to do nothing until we can pin down what has to be done for your particular unit.
I will have to go to work very soon, so I may not get back to you for many hours, assuming you want me to try and help.


All times are GMT -5. The time now is 05:26 AM.