September 27, 2009

How To: Install Linksys WUSB54GC on RHEL5.x / CentOS5.x

I wrote this guide after I went through a pain of installing my Linksys wireless dongle on my RHEL5.2 desktop. It was more painful since I had no Ethernet connection to my DSL router due to the distance / cable length constraints. Having an Internet connection on your machine might make it simpler for you to make this dongle work but this guide is meant for those with fresh RHEL5/CentOS5 installation with no Internet connection.

Below are the packages you'd need to successfully follow this guide:

  • kernel-devel (for your particular kernel. check 'uname -a')
  • dkms
  • dkms-ndiswrapper
  • rt73usb-firmware
  • Windows driver from Linksys website
  • wicd or NetworkManager (wicd is my personal choice)

All the above mentioned RPMs are attached to this blog for your convenience. (I'm still trying to figure out how to make the whole installation package available on this blog. Meanwhile, if you need it, please mention it in comments underneath.)

Here is what you need to do:

Once you plug-in the Linsys WUSB54GC wireless USB dongle into the USB port of your machine, run the following command and make sure you are able to see the device:


The output should show you that 'ralink rt73' USB wireless is in the USB slot. Don't proceed with this guide unless you see your device in 'lsusb' output. If you see a different chipset than ralink rt73, this guide is not for you. The problem sometimes is that Linksys changes the chipset without changing the model number, so you might have a different chipset in your WUSB54GS than mine. Linksys website lists 2 revisions (1 and 3) for the same piece of hardware and I don't know which one is mine.

Anyhow, once you have the proper output for 'lsusb' command, you are set to proceed. At this time, if you have NetworkManager or wcid, you may or may not see the wireless networks around. Even if you do see them, you'll most probably not able to connect to them and your connection would just time out while trying to do authentication (or acquiring IP address). Don't worry, that is the reason I wrote this guide. Even if your access-point is configure for WPA, no problem. You should be able to use it without any problem once you successfully go through all the steps.

Now you need to install rt73usb-firmware. I was not able to figure out the significance of this RPM, but I suppose this is important and I found it on RHEL suplementary CD. Just install it, it won't hurt ;-).

If you have already followed some other guides on the Internet (before you got lucky to hit this guide :-)) while trying to make your WUSB54GC work, you might have installed the driver from ralink website Driver name: RT2501USB(RT73:RT2571W/RT2573/RT2671). If you have installed the module using the 'readme' file that comes with the driver, you have to remove the module from the kernel otherwise this driver won't work even after the installation. You might have started seeing your wireless network in action after installing the kernel module using the driver from ralink, but it won't work to the point where you could start using the Internet, which makes the whole effort pretty useless. Let me explain you how you can remove the already install rt73 module from your kernel.

$lsmod | grep rt73  //should get you 'rt73' output (some something similar)


$rmmod rt73  //may give you an error saying the module is already in use


$rmmod -w rt73  //will stop any new use of this module


$rmmod -f rt73  //may be too harsh for the kernel so I'd not recommend this

Simply unplug your dongle and execute 'rmmod rt73' and it should clear up your installed rt73 module. Alternatively, run 'rmmod -w rt73' and unplug / re-plug the usb dongle and it'll be cleared from the kernel.

Once you are done with this, I'd recommend rebooting your machine. I know rebooting is for Windows but this is just to make sure we are doing the stuff cleanly. After all, this is assumed to be the fresh install. If there is no way you could reboot your box, go ahead with the guide at your own risk (its your own anyway :-)).

I'd prefer that you keep the USB dongle unplugged till you are done following this guide.

Now install the following RPMs in the order listed:

  • dkms (requires kernel-devel package)
  • dkms-ndiswrapper

If you don't have kernel-devel package for the kernel you are running, you cannot continue. I assume you must've installed RHEL/CentOS from a CD/DVD and you should be able to fine the devel package for your kernel in the 'client' directory. Since I don't know which kernel you might be running, I haven't made the devel package available.

NOTE: If you running a kernel with XEN or PAE, make sure you install the devel package for the same.

Once you have installed these 2 packages, you are close to go wild and have fun surfing the Internet.

Now download file attached to this blog and extract it in some folder of your choice. Make sure you have the following files in your rt73 folder:

  • rt73.sys
  • rt73.inf

Once done, go into the folder where you have just extracted and run the below commands:

$ndiswrapper -i rt73.inf

$ndiswrapper -m

$ndiswrapper -mi

$ndiswrapper -ma

The output of the above command will be self explanatory and make you feel that you've just achieved something. Sorry, I could not capture the outputs from my machine. If you see any error running the above commands, please post in the comments and I'll try to figure that out.

Reboot your system now again. Once it comes up, plugin your Linksys WUSB54GC usb wireless dongle and fire up either NetworkManager or wicd to connect to the network of your choice (preferably your own ;-)). You can make either one of these network connection managers your default. There are plenty of places on the Internet to tell you how to do that.

Hope this guide helped you a bit. Have fun!