Main Page | Recent changes | Edit this page | Page history

Printable version | Disclaimers | Privacy policy

Not logged in
Log in | Help

Slackware9 rt61 Howto

From Rt2x00Wiki


RT61PCI Install on Slackware 9

By Zach Vickery, 2007

Yes, yes, I know it's an old distribution. But the details here should apply pretty well to newer Slackware versions and possibly other distributions too. So in a way this is a guide to installing a wireless card in an older distribution, or perhaps Slackware in general. At the least, I think my experiences documented below will be helpful to others..

Kernel Configuration

Your kernel will need to support wireless networking and all subsystems appropriate for your card. For the RT61PCI, this included CONFIG_NET_WIRELESS, CONFIG_NET_RADIO, and CONFIG_PCI. The default Slackware kernel should have all of this but if you build your own kernels you may want to double check that nothing has been disabled.

PCI Configuration

Obviously, you will want to install the card in the box before diving in. Another key point is to have an updated PCI database (located in /usr/share/pci.ids). With older distributions, an outdated pci.ids database can cause the PCI subsystem to detect an "unknown network controller" rather than the specific model that is installed. If in doubt, grab the latest version from [1]. With that said, after booting up, run the command lspci. You should see something similar to the below output:

01:0a.0 Network controller: RaLink RT2561/RT61 802.11g PCI

If you don't see this, it means the kernel is not seeing your hardware and it will be impossible to load the driver. If you do see this, you're ready to go. This output also has the side effect of confirming which driver will be needed (in this case, the RT61). I happened to have a Linksys WMP54G card but didn't know which driver I needed until the above line from lspci told me.

Helper Packages

The wireless-tools package must be installed. This is included with Slackware and probably most any other distribution. It includes commands like iwconfig and iwlist which are essential to using your wireless network card.

A recent version of the DHCP tools must also be installed (3.0.4 or later will surely work with a wireless card, I'm not sure about earlier versions). For my Slackware 9 system, this was a manual build and update. This meant getting the source from [2], building and installing. It should be an easy update, should it be necessary. To determine which version you have, running the command dhclient -v will work.

You will also need kernel source installed in /usr/src/linux in order to build the module. Of course, the source must match the kernel you are running. The Slackware stock kernel has corresponding source packages that can be installed if you didn't install them on setup.

Building the Driver

With everything above in place, building and installing the driver should be easy. Unpack the source in your favorite location and build and install per the included directions. The end result is that a kernel module rt61.o will be installed in your kernel modules area. Typically this is the directory /lib/modules/<kernel version>/extra.

Loading the Driver

Once the driver is installed, the command /sbin/modprobe rt61 will load the driver into your running kernel. If you would like the module to automatically be loaded on boot, add the above modprobe command to the end of /etc/rc.d/rc.modules.

Configuring the Wireless Card

With the driver loaded, the command /usr/sbin/iwconfig should reveal an interface ra0 representing your RT61 card. If ra0 exists, the command /sbin/ifconfig ra0 up will activate the wireless interface.

To verify that you can see wireless networks, the command iwlist ra0 scan will display all wireless networks in range that are broadcasting their ESSIDs.

Once you know which network to which you would like to connect, use the following commands to do just that:

/usr/sbin/iwconfig ra0 essid "My Network"
/usr/sbin/iwconfig ra0 channel 9
/usr/sbin/iwconfig ra0 key s:pword  (for WEP networks)
/sbin/dhclient ra0

Basically, this is setting the network name, channel, and WEP key for your chosen network and then running dhclient to obtain a DHCP lease and perform the actual connection. The network name and channel can be obtained from the iwlist ra0 scan output. Note that the network does not have to be broadcasting its ESSID in order to connect in this manner.

The final dhclient command will result in an IP address assigned to ra0, routing tables configured, and DNS set up. After dhclient finishes, the command /sbin/ifconfig ra0 should reveal that ra0 has an IP address associated with it. At this point everything should be working!

If you would like your system to associate with the network on boot, you must be put the below commands in one of your system's startup scripts (I used /etc/rc.d/rc.local but /etc/rc.d/rc.inet1 is also a good candidate):

/sbin/ifconfig ra0 up
/usr/sbin/iwconfig ra0 essid "My Network"
/usr/sbin/iwconfig ra0 channel 9
/usr/sbin/iwconfig ra0 key s:pword  (for WEP networks)
/sbin/dhclient ra0

Other Configuration

To get the wireless card to send a host name to the access point, the below line must be added to /etc/dhclient.conf:

send host-name "HOSTNAME";

dhclient.conf accepts many other parameters; for full details check out the man page (man dhclient.conf).


Hopefully this was helpful - it includes a few things I had to learn the hard way. Thank you also to the rt2x00 team for providing such an excellent driver collection and website to help people like myself get their cards running on Linux!

Retrieved from ""

This page has been accessed 20,383 times. This page was last modified 02:00, 12 February 2007 by zvickery. Content is available under GNU Free Documentation License 1.2.

[Main Page]
Main Page
Community portal
Current events
Recent changes
Random page

Edit this page
Discuss this page
Page history
What links here
Related changes

Special pages
Bug reports