.\" $OpenBSD: ral.4,v 1.79 2008/03/06 09:14:22 deraadt Exp $ .\" .\" Copyright (c) 2005-2007 .\" Damien Bergamini .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above .\" copyright notice and this permission notice appear in all copies. .\" .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .Dd $Mdocdate: March 6 2008 $ .Os .Dt RAL 4 .Sh NAME .Nm ral .Nd Ralink Technology IEEE 802.11a/b/g/Draft-N wireless network device .Sh SYNOPSIS .Cd "ral* at cardbus?" .Cd "ral* at pci?" .Sh DESCRIPTION The .Nm driver supports PCI/PCIe/CardBus wireless adapters based on the Ralink RT2500, RT2501, RT2600 and RT2800 chipsets. .Pp The RT2500 chipset is the first generation of 802.11b/g adapters from Ralink. It consists of two integrated chips, an RT2560 MAC/BBP and an RT2525 radio transceiver. .Pp The RT2501 chipset is the second generation of 802.11a/b/g adapters from Ralink. It consists of two integrated chips, an RT2561 MAC/BBP and an RT2527 radio transceiver. This chipset provides support for the IEEE 802.11e standard with multiple hardware transmission queues and allows scatter/gather for efficient DMA operations. .Pp The RT2600 chipset consists of two integrated chips, an RT2661 MAC/BBP and an RT2529 radio transceiver. This chipset uses the MIMO (multiple-input multiple-output) technology with multiple radio transceivers to extend the operating range of the adapter and to achieve higher throughput. However, the RT2600 chipset does not support any of the 802.11n features. .Pp The RT2800 chipset is the first generation of 802.11n-Draft 2.0 adapters from Ralink. It consists of two integrated chips, an RT2860 or RT2890 MAC/BBP and an RT2820 (2.4GHz) or RT2850 (2.4GHz/5GHz) radio transceiver. The RT2800 chipset supports up to two transmit paths and three receiver paths (aka 2T3R). It can achieve speeds up to 144Mbps (20MHz bandwidth) and 300Mbps (40MHz bandwidth.) .Pp These are the modes the .Nm driver can operate in: .Bl -tag -width "IBSS-masterXX" .It BSS mode Also known as .Em infrastructure mode, this is used when associating with an access point, through which all traffic passes. This mode is the default. .It IBSS mode Also known as .Em IEEE ad-hoc mode or .Em peer-to-peer mode. This is the standardized method of operating without an access point. Stations associate with a service set. However, actual connections between stations are peer-to-peer. .It Host AP In this mode the driver acts as an access point (base station) for other cards. .It monitor mode In this mode the driver is able to receive packets without associating with an access point. This disables the internal receive filter and enables the card to capture packets from networks which it wouldn't normally have access to, or to scan for access points. .El .Pp .Nm supports software WEP. Wired Equivalent Privacy (WEP) is the de facto encryption standard for wireless networks. It can be typically configured in one of three modes: no encryption; 40-bit encryption; or 104-bit encryption. Unfortunately, due to serious weaknesses in WEP protocol it is strongly recommended that it not be used as the sole mechanism to secure wireless communication. WEP is not enabled by default. .Pp The transmit speed is user-selectable or can be adapted automatically by the driver depending on the number of hardware transmission retries. .Sh CONFIGURATION The .Nm driver can be configured at runtime with .Xr ifconfig 8 or on boot with .Xr hostname.if 5 using the following parameters: .Bl -tag -width Ds .It Cm bssid Ar bssid Set the desired BSSID. .It Fl bssid Unset the desired BSSID. The interface will automatically select a BSSID in this mode, which is the default. .It Cm chan Ar n Set the channel (radio frequency) to be used by the driver based on the given channel ID .Ar n . .It Fl chan Unset the desired channel to be used by the driver. The driver will automatically select a channel in this mode, which is the default. .It Cm media Ar media The .Nm driver supports the following .Ar media types: .Pp .Bl -tag -width autoselect -compact .It Cm autoselect Enable autoselection of the media type and options. .It Cm DS1 Set 802.11b DS 1Mbps operation. .It Cm DS2 Set 802.11b DS 2Mbps operation. .It Cm DS5 Set 802.11b DS 5.5Mbps operation. .It Cm DS11 Set 802.11b DS 11Mbps operation. .It Cm OFDM6 Set 802.11a/g OFDM 6Mbps operation. .It Cm OFDM9 Set 802.11a/g OFDM 9Mbps operation. .It Cm OFDM12 Set 802.11a/g OFDM 12Mbps operation. .It Cm OFDM18 Set 802.11a/g OFDM 18Mbps operation. .It Cm OFDM24 Set 802.11a/g OFDM 24Mbps operation. .It Cm OFDM36 Set 802.11a/g OFDM 36Mbps operation. .It Cm OFDM48 Set 802.11a/g OFDM 48Mbps operation. .It Cm OFDM54 Set 802.11a/g OFDM 54Mbps operation. .El .It Cm mediaopt Ar opts The .Nm driver supports the following media options: .Pp .Bl -tag -width monitor -compact .It Cm hostap Select Host AP operation. .It Cm ibss Select IBSS operation. .It Cm monitor Select monitor mode. .El .It Fl mediaopt Ar opts Disable the specified media options on the driver and return it to the default mode of operation (BSS). .It Cm mode Ar mode The .Nm driver supports the following modes: .Pp .Bl -tag -width 11b -compact .It Cm 11a Force 802.11a operation. .It Cm 11b Force 802.11b operation. .It Cm 11g Force 802.11g operation. .El .It Cm nwflag Ar flag Set a specified flag for the wireless network interface. The flag name can be either .Ql hidenwid or .Ql nobridge . The .Ql hidenwid flag will hide the network ID (ESSID) in beacon frames when operating in Host AP mode. It will also prevent responses to probe requests with an unspecified network ID. The .Ql nobridge flag will disable the direct bridging of frames between associated nodes when operating in Host AP mode. Setting this flag will block and filter direct inter-station communications. .Pp Note that the .Ql hidenwid and .Ql nobridge options do not provide any security. The hidden network ID will be sent in clear text by associating stations and can be easily discovered with tools like .Xr tcpdump 8 and .Xr hostapd 8 . .It Fl nwflag Ar flag Remove a specified flag for the wireless network interface. .It Cm nwid Ar id Set the network ID. The .Ar id can either be any text string up to 32 characters in length, or a series of hexadecimal digits up to 64 digits. An empty .Ar id string allows the interface to connect to any available access points. By default the .Nm driver uses an empty string. Note that network ID is synonymous with Extended Service Set ID (ESSID). .It Fl nwid Set the network ID to the empty string to allow the interface to connect to any available access point. .It Cm nwkey Ar key Enable WEP encryption using the specified .Ar key . The .Ar key can either be a string, a series of hexadecimal digits (preceded by .Sq 0x ) , or a set of keys of the form .Dq n:k1,k2,k3,k4 , where .Sq n specifies which of the keys will be used for transmitted packets, and the four keys, .Dq k1 through .Dq k4 , are configured as WEP keys. If a set of keys is specified, a comma .Pq Sq \&, within the key must be escaped with a backslash. Note that if multiple keys are used, their order must be the same within the network. .Nm is capable of using both 40-bit (5 characters or 10 hexadecimal digits) or 104-bit (13 characters or 26 hexadecimal digits) keys. .It Fl nwkey Disable WEP encryption. This is the default mode of operation. .El .Sh FILES The RT2501, RT2600 and RT2800 chipsets require the following firmware files to be loaded when an interface is brought up: .Pp .Bl -tag -width Ds -offset indent -compact .It /etc/firmware/ral-rt2561 .It /etc/firmware/ral-rt2561s .It /etc/firmware/ral-rt2661 .It /etc/firmware/ral-rt2860 .El .Pp The RT2500 chipset does not require a firmware to operate. .Sh HARDWARE The following PCI adapters should work: .Bd -filled A-Link WL54H. AirLive WN-5000PCI. Amigo AWI-926W. AMIT WL531P. AOpen AOI-831. ASUS WL-130G. ASUS WL-130N. ASUS WIFI-G-AAY. Atlantis Land A02-PCI-W54. Belkin F5D7000 v3. Canyon CN-WF511. CNet CWP-854. Compex WLP54G. Conceptronic C54Ri. Corega CG-WLPCI54GL. Digitus DN-7006G-RA. Dynalink WLG25PCI. E-Tech WGPI02. Edimax EW-7128g. Edimax EW-7628Ig. Edimax EW-7728In. Eminent EM3037. Encore ENLWI-G-RLAM. Eusso UGL2454-VPR. Fiberline WL-400P. Foxconn WLL-3350. Gigabyte GN-WPKG. Gigabyte GN-WP01GS. Gigabyte GN-WI02GM. Gigabyte GN-WP01GM. Hawking HWP54GR. Hercules HWGPCI-54. iNexQ CR054g-009 (R03). JAHT WN-4054PCI. KCORP LifeStyle KLS-660. LevelOne WNC-0301 v2. Linksys WMP54G v4. Micronet SP906GK. Minitar MN54GPC-R. MSI MS-6834. MSI PC54G2. OvisLink EVO-W54PCI. PheeNet HWL-PCIG/RA. Planex PCI-GW-DS300N. Pro-Nets PC80211G. Repotec RP-WP0854. SATech SN-54P. Signamax 065-1798. Sitecom WL-115. SparkLAN WL-660R. Surecom EP-9321-g. Surecom EP-9321-g1. Sweex LC700030. TekComm NE-9321-g. Tonze PC-6200C. Unex CR054g-R02. Zinwell ZWX-G361. Zonet ZEW1600. .Ed .Pp The following CardBus adapters should work: .Bd -filled A-Link WL54PC. Alfa AWPC036. Amigo AWI-914W. AMIT WL531C. ASUS WL-107G. Atlantis Land A02-PCM-W54. Belkin F5D7010 v2. Canyon CN-WF513. CC&C WL-2102. CNet CWC-854. Compex WL54. Conceptronic C54RC. Corega CG-WLCB54GL. Digiconnect WL591C. Digitus DN-7001G-RA. Dynalink WLG25CARDBUS. E-Tech WGPC02. E-Tech WGPC03. Edimax EW-7108PCg. Edimax EW-7708PN. Eminent EM3036. Encore ENPWI-G-RLAM. Eusso UGL2454-01R. Fiberline WL-400X. Gigabyte GN-WMKG. Gigabyte GN-WM01GS. Gigabyte GN-WM01GM. Hawking HWC54GR. Hercules HWGPCMCIA-54. JAHT WN-4054P(E). KCORP LifeStyle KLS-611. LevelOne WPC-0301 v2. Micronet SP908GK V3. Minitar MN54GCB-R. MSI CB54G2. MSI MS-6835. Pro-Nets CB80211G. Repotec RP-WB7108. SATech SN-54C. Sitecom WL-112. SparkLAN WL-611R. Surecom EP-9428-g. Sweex LC500050. TekComm NE-9428-g. Tonze PW-6200C. Unex MR054g-R02. Zinwell ZWX-G160. Zonet ZEW1500. .Ed .Pp The following Mini PCI adapters should work: .Bd -filled Amigo AWI-922W. Billionton MIWLGRL. Gigabyte GN-WIKG. Gigabyte GN-WI01GS. Gigabyte GN-WI02GM. MSI MP54G2. MSI MS-6833. SparkLAN WMIR-215GN. Tonze PC-620C. Zinwell ZWX-G360. .Ed .Sh EXAMPLES The following .Xr hostname.if 5 example configures ral0 to join whatever network is available on boot, using WEP key .Dq 0x1deadbeef1 , channel 11, obtaining an IP address using DHCP: .Bd -literal -offset indent dhcp NONE NONE NONE nwkey 0x1deadbeef1 chan 11 .Ed .Pp The following .Xr hostname.if 5 example creates a host-based access point on boot: .Bd -literal -offset indent inet 192.168.1.1 255.255.255.0 NONE media autoselect \e mediaopt hostap nwid my_net chan 11 .Ed .Pp Configure ral0 for WEP, using hex key .Dq 0x1deadbeef1 : .Bd -literal -offset indent # ifconfig ral0 nwkey 0x1deadbeef1 .Ed .Pp Return ral0 to its default settings: .Bd -literal -offset indent # ifconfig ral0 -bssid -chan media autoselect \e nwid "" -nwkey .Ed .Pp Join an existing BSS network, .Dq my_net : .Bd -literal -offset indent # ifconfig ral0 192.168.1.1 netmask 0xffffff00 nwid my_net .Ed .Sh DIAGNOSTICS .Bl -diag .It "ral%d: error %d, could not read firmware %s" For some reason, the driver was unable to read the firmware image from the filesystem. The file might be missing or corrupted. .It "ral%d: could not load 8051 microcode" An error occurred while attempting to upload the microcode to the onboard 8051 microcontroller unit. .It "ral%d: timeout waiting for MCU to initialize" The onboard 8051 microcontroller unit failed to initialize in time. .It "ral%d: device timeout" A frame dispatched to the hardware for transmission did not complete in time. The driver will reset the hardware. This should not happen. .El .Sh SEE ALSO .Xr arp 4 , .Xr cardbus 4 , .Xr ifmedia 4 , .Xr intro 4 , .Xr netintro 4 , .Xr pci 4 , .Xr hostname.if 5 , .Xr hostapd 8 , .Xr ifconfig 8 .Pp Ralink Technology: .Pa http://www.ralinktech.com/ .Sh HISTORY The .Nm driver first appeared in .Ox 3.7 . Support for the RT2501 and RT2600 chipsets was added in .Ox 3.9 . Support for the RT2800 chipset was added in .Ox 4.3 . .Sh AUTHORS The .Nm driver was written by .An Damien Bergamini Aq damien@openbsd.org . .Sh CAVEATS The .Nm driver does not support any of the 802.11n-Draft 2.0 capabilities offered by the RT2800 chipset. Additional work is required in .Xr ieee80211 9 before those features can be supported. .Pp Some PCI .Nm adapters seem to strictly require a system supporting PCI 2.2 or greater and will likely not work in systems based on older revisions of the PCI specification. Check the board's PCI version before purchasing the card.