Difference between revisions of "Rt2x00 beta driver"

From ArchWiki
Jump to: navigation, search
(Using wpa_supplicant)
(25 intermediate revisions by 17 users not shown)
Line 1: Line 1:
[[Category:Wireless]]
+
[[Category:Wireless Networking]]
This page describes how you can make the new '''rt2x00''' Beta drivers work. This page '''does not''' describe the legacy '''rt2500''', '''rt2400''' and '''rt2570''' drivers derived from the original Ralink drivers.
+
  
At the time of this writing, only the '''rt2560''' PCI and PcCard chipsets ('''rt2500pci''' driver) are known to work in Open, WEP or WPA (PSK and EAP) mode. So far, there are no success stories with '''rt2400pci''', '''rt2500usb''' and '''rt61pci''' drivers. If you succeed in using these drivers, please add a comment here.
+
This page describes how you can make the new '''rt2x00''' drivers work. This page '''does not''' describe the legacy '''rt2500''', '''rt2400''', '''rt2570''', '''rt61''' and '''rt73''' drivers derived from the original Ralink drivers. The '''rt2x00''' driver has a few advantages over the legacy drivers: It works with all the standard tools, it is in active development as part of the kernel, and it is SMP-safe.
  
The '''rt2x00''' drivers are supposed to work with SMP kernels, but I did not test this myself. Please add comments here if you were able to use the driver with an SMP kernel.
+
A lot has changed since these drivers were out-of-tree, so it's worth trying the modules (now in the main kernel package) even if the drivers have not worked for you in the past.
  
There are still many issues with this driver. Many people experienced crappy speed. To help solve these issues, everyone who is willing to test the new driver should look at the [http://rt2x00.serialmonkey.com/phpBB2/viewforum.php?f=5 rt2x00 BETA Testing] section of the rt2x00 forums.
+
For help with these drivers see the [http://rt2x00.serialmonkey.com/phpBB/viewforum.php?f=5 rt2x00 Driver Support] section of the rt2x00 forums.
  
  
 
= Installing the driver =
 
= Installing the driver =
  
The '''rt2x00 Beta 3''' (as posted in the AUR) and older version are known to '''NOT WORK'''. In order to have a working driver, you '''MUST''' use the new rewrite based on the DeviceScape stack. This new driver is (at the time of this writing) only available as a [http://rt2x00.serialmonkey.com/rt2x00-cvs-daily.tar.gz CVS snapshot]. To install the driver, unpack the driver, change to the '''rt2x00-cvs-2006XXXXXX''' directory and type
+
The rt2x00 drivers are now part of the mainline kernel. One need only load the relevant module:
 
+
<pre>modprobe rt2400pci</pre>
make
+
<pre>modprobe rt2500pci</pre>
make install
+
<pre>modprobe rt2500usb</pre>
 
+
<pre>modprobe rt61pci</pre>
There is a package for this in [unstable] that will be updated relatively frequently, however it is advised you use the latest snapshot. Grab the pkgbuild from CVS here: http://cvs.archlinux.org/cgi-bin/viewcvs.cgi/modules/rt2x00/?cvsroot=Unstable
+
<pre>modprobe rt73usb</pre>
 +
The last two require a firmware file, provided by the Linux firmwares package:
 +
<pre>pacman -S linux-firmware</pre>
  
 
= Using the driver =
 
= Using the driver =
Line 25: Line 26:
  
 
  modprobe 80211
 
  modprobe 80211
  modprobe rate_control
+
  modprobe rc80211_simple
 
  modprobe $driver
 
  modprobe $driver
  
 
where $driver is one of the following: '''rt2500pci''', '''rt2400pci''', '''rt2500usb''' or '''rt61pci'''.
 
where $driver is one of the following: '''rt2500pci''', '''rt2400pci''', '''rt2500usb''' or '''rt61pci'''.
  
When the driver is loaded, you will have two interfaces, wmaster0 and wlan0.  
+
When the driver is loaded, you will have two interfaces, wmaster0 and wlan0.
 
+
 
+
  
 
== Using the driver ==
 
== Using the driver ==
  
In the case of these drivers, the order in which you configure them is important.
+
In the case of these drivers, the order in which you configure them is important. This is the preferred, and most likely to work order of configuring the device.
  
 
  ifconfig wlan0 up
 
  ifconfig wlan0 up
Line 43: Line 42:
 
  iwconfig wlan0 ap mybssid  
 
  iwconfig wlan0 ap mybssid  
  
Is the preferred, and most likely to work order of configuring the device. From there you can use '''ifconfig''' or '''dhcpcd''' to get an IP, and wep or wpa if needed.
+
To obtain an ip address after setup use '''ifconfig''' or '''dhcpcd''' and wep or wpa if needed.
 +
 
 +
dhcpcd wlan0
  
 
= Extra utils for wep/wpa =
 
= Extra utils for wep/wpa =
Line 63: Line 64:
 
== Using WEP ==
 
== Using WEP ==
  
WEP should work with the Wireless Extensions used by iwconfig, if not:
+
WEP works with the wireless extensions used by iwconfig. See [[Wireless Setup#Wireless Quickstart]].
 +
<!-- confirmed works with rt73usb -->
  
To enable WEP, use the following command:
+
= Configuring the driver for automatic startup on booting =
  
dscape_crypt_conf -1tp "sta0" "ff:ff:ff:ff:ff:ff" WEP "$key"
+
== RT2400 (rt2400pci) ==
 +
The following is known to work for the cvs snapshot available [http://rt2x00.serialmonkey.com/wiki/index.php?title=Downloads here] with the date 23-Dec-2006.
  
where '''sta0''' is your wlan-interface and '''$key''' is the wep key. See
+
To set the driver up for automatically connecting while the computer is booting, type the following in /etc/rc.conf
  
  dscape_crypt_conf --help
+
  wlan0="wlan0 192.168.1.102 netmask 255.255.255.0 broadcast 192.168.1.255"
 +
INTERFACES=(lo !eth0 wlan0)
  
for further help.
+
And the following in /etc/rc.local
  
// TODO: Some please confirm that this works
+
iwconfig wlan0 channel 10
 +
iwconfig wlan0 essid linksys
 +
iwconfig wlan0 ap 00:0c:41:a8:87:8e <-- Put your access point's bssid here

Revision as of 09:40, 13 June 2012


This page describes how you can make the new rt2x00 drivers work. This page does not describe the legacy rt2500, rt2400, rt2570, rt61 and rt73 drivers derived from the original Ralink drivers. The rt2x00 driver has a few advantages over the legacy drivers: It works with all the standard tools, it is in active development as part of the kernel, and it is SMP-safe.

A lot has changed since these drivers were out-of-tree, so it's worth trying the modules (now in the main kernel package) even if the drivers have not worked for you in the past.

For help with these drivers see the rt2x00 Driver Support section of the rt2x00 forums.


Installing the driver

The rt2x00 drivers are now part of the mainline kernel. One need only load the relevant module:

modprobe rt2400pci
modprobe rt2500pci
modprobe rt2500usb
modprobe rt61pci
modprobe rt73usb

The last two require a firmware file, provided by the Linux firmwares package:

pacman -S linux-firmware

Using the driver

Setting the interface up

If you have module autoloading enabled, the drivers should be loaded automatically when you boot your machine or insert the device. If this doesn't work or autoloading is disabled, load the modules manually:

modprobe 80211
modprobe rc80211_simple
modprobe $driver

where $driver is one of the following: rt2500pci, rt2400pci, rt2500usb or rt61pci.

When the driver is loaded, you will have two interfaces, wmaster0 and wlan0.

Using the driver

In the case of these drivers, the order in which you configure them is important. This is the preferred, and most likely to work order of configuring the device.

ifconfig wlan0 up
iwlist wlan0 scan
iwconfig wlan0 essid myessid
iwconfig wlan0 ap mybssid 

To obtain an ip address after setup use ifconfig or dhcpcd and wep or wpa if needed.

dhcpcd wlan0

Extra utils for wep/wpa

wpa_supplicant

rt2x00 should work fine with the wpa_supplicant wext driver. It is not necessary to patch it any more.

Using wpa_supplicant

For example, to use wpa_supplicant, try

/usr/sbin/wpa_supplicant -wB -Dwext -iwlan0 -c/etc/wpa_supplicant.conf

Note that wpa_supplicant didn't work with hidden essid in my tests.

// TODO: someone please confirm that wpa_supplicant also successfully associates to open or wep-encrypted networks, I only tried WPA-PSK and read success reports about WPA-EAP

Using WEP

WEP works with the wireless extensions used by iwconfig. See Wireless Setup#Wireless Quickstart.

Configuring the driver for automatic startup on booting

RT2400 (rt2400pci)

The following is known to work for the cvs snapshot available here with the date 23-Dec-2006.

To set the driver up for automatically connecting while the computer is booting, type the following in /etc/rc.conf

wlan0="wlan0 192.168.1.102 netmask 255.255.255.0 broadcast 192.168.1.255"
INTERFACES=(lo !eth0 wlan0)

And the following in /etc/rc.local

iwconfig wlan0 channel 10
iwconfig wlan0 essid linksys
iwconfig wlan0 ap 00:0c:41:a8:87:8e <-- Put your access point's bssid here