RUM(4)

RUM(4) | Device Drivers Manual | RUM(4)

# NAME

`rum` —
Ralink Technology USB IEEE 802.11a/b/g wireless network device

# SYNOPSIS

`rum* at uhub? port ?`

# DESCRIPTION

The `rum` driver supports USB 2.0 wireless adapters based on the Ralink RT2501USB and RT2601USB chipsets.

The RT2501USB chipset is the second generation of 802.11a/b/g adapters from Ralink. It consists of two integrated chips, an RT2571W MAC/BBP and an RT2528 or RT5226 radio transceiver.

The RT2601USB chipset consists of two integrated chips, an RT2671 MAC/BBP and an RT2527 or RT5225 radio transceiver. This chipset uses the MIMO (multiple-input multiple-output) technology with multiple antennas to extend the operating range of the adapter and to achieve higher throughput. MIMO is the basis of the forthcoming IEEE 802.11n standard.

These are the modes the `rum` driver can operate in:

BSS mode
  Also known as infrastructure mode, this is used when associating with an access point, through which all traffic passes. This mode is the default.
IBSS mode
  Also known as IEEE ad-hoc mode or 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.
Host AP
  In this mode the driver acts as an access point (base station) for other cards.
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.

The `rum` driver can be configured to use Wired Equivalent Privacy (WEP) or Wi-Fi Protected Access (WPA-PSK and WPA2-PSK). WPA is the de facto encryption standard for wireless networks. It is strongly recommended that WEP not be used as the sole mechanism to secure wireless communication, due to serious weaknesses in it.

# CONFIGURATION

The `rum` driver can be configured at runtime with ifconfig(8) or on boot with ifconfig.if(5) using the following parameters:

`bssid` bssid
  Set the desired BSSID.
`-bssid`
  Unset the desired BSSID. The interface will automatically select a BSSID in this mode, which is the default.
`chan` n
  Set the channel (radio frequency) to be used by the driver based on the given channel ID n.
`-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.
`media` media
  The `rum` driver supports the following media types:

  `autoselect`
    Enable autoselection of the media type and options.
  `DS1`
    Set 802.11b DS 1Mbps operation.
  `DS2`
    Set 802.11b DS 2Mbps operation.
  `DS5`
    Set 802.11b DS 5.5Mbps operation.
  `DS11`
    Set 802.11b DS 11Mbps operation.
  `OFDM6`
    Set 802.11a/g OFDM 6Mbps operation.
  `OFDM9`
    Set 802.11a/g OFDM 9Mbps operation.
  `OFDM12`
    Set 802.11a/g OFDM 12Mbps operation.
  `OFDM18`
    Set 802.11a/g OFDM 18Mbps operation.
  `OFDM24`
    Set 802.11a/g OFDM 24Mbps operation.
  `OFDM36`
    Set 802.11a/g OFDM 36Mbps operation.
  `OFDM48`
    Set 802.11a/g OFDM 48Mbps operation.
  `OFDM54`
    Set 802.11a/g OFDM 54Mbps operation.
`mediaopt` opts
  The `rum` driver supports the following media options:

  `hostap`
    Select Host AP operation.
  `ibss`
    Select IBSS operation.
  `monitor`
    Select monitor mode.
`-mediaopt` opts
  Disable the specified media options on the driver and return it to the default mode of operation (BSS).
`mode` mode
  The `rum` driver supports the following modes:

  `11a`
    Force 802.11a operation.
  `11b`
    Force 802.11b operation.
  `11g`
    Force 802.11g operation.
`nwid` id
  Set the network ID. The 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 id string allows the interface to connect to any available access points. By default the `rum` driver uses an empty string. Note that network ID is synonymous with Extended Service Set ID (ESSID).
`nwkey` key
  Enable WEP encryption using the specified key. The key can either be a string, a series of hexadecimal digits (preceded by ‘0x’), or a set of keys of the form “n:k1,k2,k3,k4”, where ‘n’ specifies which of the keys will be used for transmitted packets, and the four keys, “k1” through “k4”, are configured as WEP keys. If a set of keys is specified, a comma (‘,’) 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. `rum` is capable of using both 40-bit (5 characters or 10 hexadecimal digits) or 104-bit (13 characters or 26 hexadecimal digits) keys.
`-nwkey`
  Disable WEP encryption. This is the default mode of operation.

# FILES

The following firmware file is loaded when an interface is brought up:

/libdata/firmware/rum/rum-rt2573

See firmload(9) for how to change this.

# HARDWARE

The following adapters should work:

Airlink101 AWLL5025
ASUS WL-167g ver 2
Belkin F5D7050 ver 3
Belkin F5D9050 ver 3
CNet CWD-854 ver F
Conceptronic C54RU ver 2
D-Link DWL-G122 rev C1
D-Link WUA-1340
Edimax EW-7318USG
Gigabyte GN-WB01GS
Hawking HWUG1
LevelOne WNC-0301USB
Linksys WUSB54G rev C
Planex GW-USMM
Senao NUB-3701
Sitecom WL-113 ver 2
Sitecom WL-172
Synet MW-P54SS
TP-LINK TL-WN321G

# EXAMPLES

The following ifconfig.if(5) example configures rum0 to join whatever network is available on boot, using WEP key “0x1deadbeef1”, channel 11:

    inet 192.168.1.1 netmask 255.255.255.0 nwkey 0x1deadbeef1 chan 11

The following ifconfig.if(5) example creates a host-based access point on boot:

    inet 192.168.1.1 netmask 255.255.255.0 media autoselect \
    	mediaopt hostap nwid my_net chan 11

Configure rum0 for WEP, using hex key “0x1deadbeef1”:

    # ifconfig rum0 nwkey 0x1deadbeef1

Return rum0 to its default settings:

    # ifconfig rum0 -bssid -chan media autoselect \
    	nwid "" -nwkey

Join an existing BSS network, “my_net”:

    # ifconfig rum0 192.168.1.1 netmask 0xffffff00 nwid my_net

# DIAGNOSTICS

rum%d: failed loadfirmware of file %s
  For some reason, the driver was unable to read the microcode file from the filesystem. The file might be missing or corrupted.
rum%d: could not load 8051 microcode
  An error occurred while attempting to upload the microcode to the onboard 8051 microcontroller unit.
rum%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.

# SEE ALSO

arp(4), ifmedia(4), netintro(4), usb(4), ifconfig.if(5), hostapd(8), ifconfig(8), firmload(9)

Ralink Technology

# HISTORY

The `rum` driver first appeared in NetBSD 4.0 and OpenBSD 4.0.

# AUTHORS

The `rum` driver was written by Niall O'Higgins <niallo@openbsd.org> and
Damien Bergamini <damien@openbsd.org>.

# CAVEATS

The `rum` driver supports automatic control of the transmit speed in BSS mode only. Therefore the use of a `rum` adapter in Host AP mode is discouraged.

The Synet MW-P54SS USB Wireless Broadband Router first attaches as a virtual cd(4) device on the umass(4) mass storage bus. It will re-attach with this driver after using eject(1) on the corresponding device.

September 21, 2020 | NetBSD 10.1