Difference between revisions of "Rt2x00 beta driver"

From ArchWiki
Jump to: navigation, search
(wpa_supplicant)
m (Installing the driver)
(32 intermediate revisions by 18 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.
+
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.
  
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.
+
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.
  
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.
+
For help with these drivers see the [http://rt2x00.serialmonkey.com/phpBB/viewforum.php?f=5 rt2x00 Driver Support] section of the rt2x00 forums.
  
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.
+
== Installing the driver ==
  
 +
The rt2x00 drivers are now part of the mainline kernel. One need only load the relevant module:
 +
# modprobe rt2400pci
  
= Installing the driver =
+
# modprobe rt2500pci
  
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
+
# modprobe rt2500usb
  
  make
+
  # modprobe rt61pci
make install
+
  
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
+
# modprobe rt73usb
  
= Using the driver =
+
The last two require a firmware file, provided by the Linux firmwares package:
 +
pacman -S linux-firmware
  
 
== Setting the interface up ==
 
== Setting the interface up ==
Line 25: Line 27:
  
 
  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.
+
See [[Wireless Setup#Part II: Wireless management]]
 
+
ifconfig wlan0 up
+
iwlist wlan0 scan
+
iwconfig wlan0 essid myessid
+
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.
+
 
+
= 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 -Ddscape -ista0 -c/etc/wpa_supplicant.conf
+
 
+
Replace '''-Ddscape''' with '''-Dwext''' if you have chosen to use the stock arch wpa_supplicant package. 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 should work with the Wireless Extensions used by iwconfig, if not:
+
 
+
To enable WEP, use the following command:
+
 
+
dscape_crypt_conf -1tp "sta0" "ff:ff:ff:ff:ff:ff" WEP "$key"
+
  
where '''sta0''' is your wlan-interface and '''$key''' is the wep key. See
+
=== wpa_supplicant ===
  
dscape_crypt_conf --help
+
rt2x00 should work fine with the wpa_supplicant '''wext''' driver. It is not necessary to patch it any more. See [[WPA supplicant]]
  
for further help.
+
=== Using WEP ===
  
// TODO: Some please confirm that this works
+
WEP works with the wireless extensions used by iwconfig. See [[Wireless Setup#Wireless Quickstart]].

Revision as of 04:01, 6 March 2013

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

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

See Wireless Setup#Part II: Wireless management

wpa_supplicant

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

Using WEP

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