Difference between revisions of "Rt2870"

From ArchWiki
Jump to: navigation, search
m (Kernel 2.6.31 module conflicts: rm obsolete section - according to https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=fefecc6989b4b24276797270c0e229c07be02ad3 the conflicting driver was deleted)
(As of linux kernel 3.0, the rt2800usb driver automatically works with devices using the rt2870 chipset.)
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Category:Wireless Networking]]
+
#REDIRECT [[Wireless Setup#rt2x00]]
{{Merge|Wireless Setup|This page contains general information that duplicate [[Wireless Setup]]. This page should be merged there.}}
+
{{out of date}}
+
{{note|As of {{pkg|linux}} kernel 3.0, the rt2800usb driver automatically works with devices using the rt2870 chipset.}}
+
 
+
This entry is to aid you in configuring wireless settings for use with devices built with Ralink's rt2870 chipset. I hope that this entry will encourage further contribution regarding the configuration of Ralink drivers.
+
 
+
{{note|This entry has been (so far) written with Infrastructure mode and WPA authentication in mind. Please contribute any other configurations.}}
+
 
+
== Installation (kernels from 2.6.29 to 2.6.39) ==
+
Since version 2.6.29 this driver has been included in the kernel
+
 
+
== Configuration ==
+
This driver is best configured using tools that utilize the standard wireless extensions, such as {{Pkg|wpa_supplicant}}, {{Ic|iwconfig}}, and their front-ends.
+
 
+
Various driver specific options can be configured using iwpriv.
+
 
+
== Configuration - File (maybe obsolete) ==
+
This section is to help you with the configuration file used to set the parameters of the device when it is brought up (e.g. {{ic|ip link set ra0 up}}).
+
* First, go into the {{ic|src/}} directory where you built the package and into the source code's directory. For example
+
cd ~/AUR/rt2870/src/2008_0925_RT2870_Linux_STA_v1.4.0.0
+
* Copy the {{ic|RT2870STA.dat}} file to {{ic|/etc/Wireless/RT2870STA}}. If the directory does not exist, create it.
+
cp RT2870STA.dat /etc/Wireless/RT2870STA
+
 
+
=== Initial Configuration ===
+
* In this file, the first line must always contain the word Default, so it should be on the first line.
+
Default
+
* Change the country/region channel number to the one that corresponds to your network:
+
**0: channels 1 through 11
+
**1: channels 1 through 12
+
**2: channels 10 and 11 (according to ralink)
+
**3: channels 10 through 13
+
**4: channel 14
+
**5: channels 1 through 14
+
**6: channels 3 through 9
+
**7: channels 5 through 13
+
My configuration
+
CountryRegion=0
+
* Add your country code. Valid country codes include the following
+
AG, AR, AW, AU, AT, BS, BB, BM, BR, BE, BG, CA, KY, CL, CN, CO, CR, CY, CZ, DK, DO, EC, SV, FI, FR, DE, GR,
+
GU, GT, HT, HN, HK, HU, IS, IN, ID, E, IL, IT, JP, JO, LV, LI, LT, LU, MY, MT, MA, MX, NL, NZ, NO, PE, PT,
+
PL, RO, RU, SA, CS, SG, SK, SI, ZA, KR, ES, SE, CH, TW, TR, GB, UA, AE, US, VE
+
My configuration
+
ConuntryCode=US
+
* Edit the ssid to your network's SSID using either characters 0-z or 1~32 ASCII characters
+
For example
+
SSID=mywirelessnetwork
+
* Change the network type to whatever type of network you are using:
+
**Infra (for Infrastructure)
+
**Adhoc (for Ad-hoc)
+
My configuration
+
NetworkType=Infra
+
* Edit the wireless mode using numbers 0 through 10:
+
**0: legacy 11b/g mixed
+
**1: legacy 11b only
+
**2: legacy 11a only
+
**3: legacy 11a/b/g mixed
+
**4: legacy 11g only
+
**5: 11a/b/g/n mixed
+
**6: 11n only
+
**7: 11g/n mixed
+
**8: 11a/n mixed
+
**9: 11b/g/n mixed
+
**10: 11a/g/n mixed
+
I use 0
+
WirelessMode=0
+
* Edit the channel number. This must correspond to the {{ic|CountryRegion}} setting.
+
My configuration
+
Channel=10
+
 
+
=== Authentication ===
+
{{Note|Because I use WPA and have not tested WEP configuration, the WEP configuration type explained is just a guess. If you use a rt2870 device with a WEP-protected network, then please correct the wiki.}}
+
 
+
* Set authmode to one of the following options:
+
**Open
+
**AUTOWEP (for WEP)
+
**WPA (WPA with WPA Supplicant)
+
**WPA2 (WPA2 with WPA supplicant)
+
**WPAPSK
+
**WPA2PSK
+
 
+
The WPA and WPA2 options should work with [[netcfg]] and [[NetworkManager]].
+
For WPA,
+
AuthMode=WPA
+
* Set the encryption type to one of the following:
+
**WEP
+
**TKIP
+
**AES
+
**None
+
For TKIP,
+
EncrypType=TKIP
+
 
+
==== WPA ====
+
* If you are using WPA, set your pre-shared key (PSK):
+
WPAPSK=mysecretkey
+
 
+
==== WEP ====
+
* If you are using WEP, first set the key index using numbers 1 through 4
+
For example,
+
DefaultKeyID=1
+
* Now, set the key type (of your corresponding key index) so it knows what kind of key to look for:
+
**0: hex
+
**1: ASCII string
+
Key1Type=0
+
* Provide your WEP key according to type, for example
+
For a string key
+
Key1Str=mysecretwepkey
+
For a hex key
+
Key1=01234
+
 
+
=== Examples ===
+
Here are some example options for reference.
+
 
+
RT2870STA.dat
+
Default
+
CountryRegion=0
+
CountryRegionABand=7
+
CountryCode=US
+
ChannelGeography=1
+
SSID=mywirelessnetwork
+
NetworkType=Infra
+
WirelessMode=0
+
Channel=10
+
BeaconPeriod=100
+
TxPower=100
+
BGProtection=0
+
TxPreamble=1
+
RTSThreshold=2347
+
FragThreshold=2346
+
TxBurst=0
+
PktAggregate=0
+
WmmCapable=0
+
AckPolicy=0;0;0;0
+
AuthMode=WPA
+
EncrypType=TKIP
+
WPAPSK=mysecretkey
+
DefaultKeyID=1
+
Key1Type=0
+
Key1Str=
+
Key2Type=0
+
Key2Str=
+
Key3Type=0
+
Key3Str=
+
Key4Type=0
+
Key4Str=
+
PSMode=CAM
+
FastRoaming=0
+
RoamThreshold=70
+
APSDCapable=0
+
APSDAC=0;0;0;0
+
HT_RDG=1
+
HT_EXTCHA=0
+
HT_OpMode=1
+
HT_MpduDensity=4
+
HT_BW=1
+
HT_AutoBA=1
+
HT_BADecline=0
+
HT_AMSDU=0
+
HT_BAWinSize=64
+
HT_GI=1
+
HT_MCS=33
+
HT_MIMOPSMode=3
+
IEEE80211H=0
+
TGnWifiTest=0
+
WirelessEvent=0
+
CarrierDetect=0
+
 
+
 
+
And a [[netcfg]] profile:
+
CONNECTION="wireless"
+
INTERFACE=ra0
+
SCAN="no"
+
SECURITY="wpa"
+
ESSID=mywirelessnetwork
+
KEY="mysecretkey"
+
IP="dhcp"
+
TIMEOUT=20
+
DHCP_TIMEOUT=30
+
 
+
There is no need to set the channel in the [[netcfg]] profile since the {{ic|.dat}} file took care of it.
+
 
+
== Troubleshooting ==
+
 
+
===dmesg:Bulk In Failed, CMDTHREAD_RESET_BULK_IN, etc.===
+
Bulk In Failed messages are not so bad, but a problem arises when and if the failed data leads to CMDTHREAD_RESET_BULK_IN which results in the module removing itself (e.g. modprobe -r rt2870sta).
+
 
+
This probably happened because you created your own RT2870STA.dat file. Go into the rt2870 tarball directory, into the source code directory, and replace the RT2870STA.dat in {{ic|/etc/Wireless/RT2870STA/}} with the preconfigured .dat file in the {{ic|2008_0718_RT2870_Linux_STA_v1.3.1.0}} directory. From there, set the options that correspond to your network without removing any of the options.
+
 
+
===rt2870CmdThread is using a lot of CPU===
+
I do not specifically know why this occurs, but it is probably because you connected your device to a hub.
+
 
+
== What next? ==
+
 
+
Insert the device and try connecting. See the [[Wireless Setup#Part II: Wireless management|Wireless Management]] section of [[Wireless Setup]] for details on connection methods.
+

Revision as of 22:52, 3 August 2013