RAL(4)

πŸ“¦ version 15.1, in freebsd 14.5, freebsd 15.1

okay so bestie, buckle up, because ral is the Ralink Technology IEEE 802.11a/g/n wireless network driver and she has lore. this whole page is her origin story. πŸ¦‹


✨ SYNOPSIS ✨

so if you wanna get this driver into the kernel, you're gonna drop these lines in your kernel configuration file. no cap, all of them:

device ral
device ralfw
device wlan
device wlan_amrr
device firmware

OR β€” and honestly this is the lazy-girl route, which we respect β€” you can load it as a module at boot time by putting this line in loader.conf(5):

if_ral_load="YES"

slay. that's it. that's the whole vibe check. πŸ’…


🌸 DESCRIPTION 🌸

the ral driver supports PCI/PCIe/CardBus wireless adapters based on the Ralink RT2500, RT2501, RT2600, RT2700, RT2800, RT3090 and RT3900E chipsets. that's a lot of chipsets, and each one has its own little personality, so let's go on a tour πŸŽ€

RT2500 β€” the first generation of 802.11b/g adapters from Ralink. baby's first wifi. she's made of two integrated chips: an RT2560 MAC/BBP and an RT2525 radio transceiver. iconic duo, honestly.

RT2501 β€” second generation, 802.11a/b/g this time. two integrated chips again: 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 it allows scatter/gather for efficient DMA operations. she's organized. we stan an efficient queen. ✨

RT2600 β€” 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. BUT β€” and this is the plot twist β€” the RT2600 chipset does not support any of the 802.11n features. tragic, i know. πŸ’€

RT2700 β€” the low-cost version of the RT2800 chipset. supports a single transmit path and two receiver paths (1T2R). consists of two integrated chips: an RT2760 or RT2790 (PCIe) MAC/BBP, and an RT2720 (2.4GHz) or RT2750 (2.4GHz/5GHz) radio transceiver. budget baddie πŸ’Έ

RT2800 β€” first generation of 802.11n adapters from Ralink, and honestly she ate. two integrated chips: an RT2860 or RT2890 (PCIe) MAC/BBP, and an RT2820 (2.4GHz) or RT2850 (2.4GHz/5GHz) radio transceiver. supports two transmit paths and up to three receiver paths (2T2R/2T3R). she can achieve speeds up to 144Mbps (20MHz bandwidth) and 300Mbps (40MHz bandwidth.) yes bestie, 300Mbps. πŸ”₯

RT3090 β€” first generation of single-chip 802.11n adapters from Ralink. and here's where the modes come in, so pay attention: ral supports station, adhoc, hostap, mesh, wds, and monitor mode operation. only one hostap or mesh virtual interface may be configured at a time. any number of wds virtual interfaces may be configured together with a hostap interface. multiple station interfaces may be operated together with a hostap interface to construct a wireless repeater device. yes, you can build a repeater. main character energy fr fr πŸ‘‘

RT3900E β€” a single-chip 802.11n adapter from Ralink. the MAC/Baseband Processor can be an RT5390 or RT5392. the RT5390 chip operates in the 2GHz spectrum and supports 1 transmit path and 1 receiver path (1T1R). the RT5392 chip operates in the 2GHz spectrum and supports up to 2 transmit paths and 2 receiver paths (2T2R). 🌈

and the transmit speed? user-selectable, OR it can be adapted automatically by the driver depending on the number of hardware transmission retries. she's adaptive. she reads the room. for more info on configuring this device, see ifconfig(8). 🫢


πŸŽ€ HARDWARE πŸŽ€

the ral driver supports PCI/PCIe/CardBus wireless adapters based on Ralink Technology chipsets, including β€” okay, deep breath β€” all of these babes. card, then MAC/BBP, then bus:

  • A-Link WL54H β€” RT2560 β€” PCI
  • A-Link WL54PC β€” RT2560 β€” CardBus
  • AirLink101 AWLC5025 β€” RT2661 β€” CardBus
  • AirLink101 AWLH5025 β€” RT2661 β€” PCI
  • Amigo AWI-914W β€” RT2560 β€” CardBus
  • Amigo AWI-922W β€” RT2560 β€” mini-PCI
  • Amigo AWI-926W β€” RT2560 β€” PCI
  • AMIT WL531C β€” RT2560 β€” CardBus
  • AMIT WL531P β€” RT2560 β€” PCI
  • AOpen AOI-831 β€” RT2560 β€” PCI
  • ASUS WL-107G β€” RT2560 β€” CardBus
  • ASUS WL-130g β€” RT2560 β€” PCI
  • Atlantis Land A02-PCI-W54 β€” RT2560 β€” PCI
  • Atlantis Land A02-PCM-W54 β€” RT2560 β€” CardBus
  • Belkin F5D7000 v3 β€” RT2560 β€” PCI
  • Belkin F5D7010 v2 β€” RT2560 β€” CardBus
  • Billionton MIWLGRL β€” RT2560 β€” mini-PCI
  • Canyon CN-WF511 β€” RT2560 β€” PCI
  • Canyon CN-WF513 β€” RT2560 β€” CardBus
  • CC&C WL-2102 β€” RT2560 β€” CardBus
  • CNet CWC-854 β€” RT2560 β€” CardBus
  • CNet CWP-854 β€” RT2560 β€” PCI
  • Compex WL54G β€” RT2560 β€” CardBus
  • Compex WLP54G β€” RT2560 β€” PCI
  • Conceptronic C54RC β€” RT2560 β€” CardBus
  • Conceptronic C54Ri β€” RT2560 β€” PCI
  • D-Link DWA-525 rev A2 β€” RT5392 β€” PCI
  • Digitus DN-7001G-RA β€” RT2560 β€” CardBus
  • Digitus DN-7006G-RA β€” RT2560 β€” PCI
  • E-Tech WGPC02 β€” RT2560 β€” CardBus
  • E-Tech WGPI02 β€” RT2560 β€” PCI
  • Edimax EW-7108PCg β€” RT2560 β€” CardBus
  • Edimax EW-7128g β€” RT2560 β€” PCI
  • Eminent EM3036 β€” RT2560 β€” CardBus
  • Eminent EM3037 β€” RT2560 β€” PCI
  • Encore ENLWI-G-RLAM β€” RT2560 β€” PCI
  • Encore ENPWI-G-RLAM β€” RT2560 β€” CardBus
  • Fiberline WL-400P β€” RT2560 β€” PCI
  • Fibreline WL-400X β€” RT2560 β€” CardBus
  • Gigabyte GN-WI01GS β€” RT2561S β€” mini-PCI
  • Gigabyte GN-WIKG β€” RT2560 β€” mini-PCI
  • Gigabyte GN-WMKG β€” RT2560 β€” CardBus
  • Gigabyte GN-WP01GS β€” RT2561S β€” PCI
  • Gigabyte GN-WPKG β€” RT2560 β€” PCI
  • Hawking HWC54GR β€” RT2560 β€” CardBus
  • Hawking HWP54GR β€” RT2560 β€” PCI
  • iNexQ CR054g-009 (R03) β€” RT2560 β€” PCI
  • JAHT WN-4054P β€” RT2560 β€” CardBus
  • JAHT WN-4054PCI β€” RT2560 β€” PCI
  • LevelOne WNC-0301 v2 β€” RT2560 β€” PCI
  • LevelOne WPC-0301 v2 β€” RT2560 β€” CardBus
  • Linksys WMP54G v4 β€” RT2560 β€” PCI
  • Micronet SP906GK β€” RT2560 β€” PCI
  • Micronet SP908GK V3 β€” RT2560 β€” CardBus
  • Minitar MN54GCB-R β€” RT2560 β€” CardBus
  • Minitar MN54GPC-R β€” RT2560 β€” PCI
  • MSI CB54G2 β€” RT2560 β€” CardBus
  • MSI MP54G2 β€” RT2560 β€” mini-PCI
  • MSI PC54G2 β€” RT2560 β€” PCI
  • OvisLink EVO-W54PCI β€” RT2560 β€” PCI
  • PheeNet HWL-PCIG/RA β€” RT2560 β€” PCI
  • Planex GW-NS300N β€” RT2860 β€” CardBus
  • Pro-Nets CB80211G β€” RT2560 β€” CardBus
  • Pro-Nets PC80211G β€” RT2560 β€” PCI
  • Repotec RP-WB7108 β€” RT2560 β€” CardBus
  • Repotec RP-WP0854 β€” RT2560 β€” PCI
  • SATech SN-54C β€” RT2560 β€” CardBus
  • SATech SN-54P β€” RT2560 β€” PCI
  • Sitecom WL-112 β€” RT2560 β€” CardBus
  • Sitecom WL-115 β€” RT2560 β€” PCI
  • SMC SMCWCB-GM β€” RT2661 β€” CardBus
  • SMC SMCWPCI-GM β€” RT2661 β€” PCI
  • SparkLAN WL-685R β€” RT2560 β€” CardBus
  • Surecom EP-9321-g β€” RT2560 β€” PCI
  • Surecom EP-9321-g1 β€” RT2560 β€” PCI
  • Surecom EP-9428-g β€” RT2560 β€” CardBus
  • Sweex LC500050 β€” RT2560 β€” CardBus
  • Sweex LC700030 β€” RT2560 β€” PCI
  • TekComm NE-9321-g β€” RT2560 β€” PCI
  • TekComm NE-9428-g β€” RT2560 β€” CardBus
  • Unex CR054g-R02 β€” RT2560 β€” PCI
  • Unex MR054g-R02 β€” RT2560 β€” CardBus
  • Zinwell ZWX-G160 β€” RT2560 β€” CardBus
  • Zinwell ZWX-G360 β€” RT2560 β€” mini-PCI
  • Zinwell ZWX-G361 β€” RT2560 β€” PCI
  • Zonet ZEW1500 β€” RT2560 β€” CardBus
  • Zonet ZEW1600 β€” RT2560 β€” PCI

like. that's 87 cards. she's well-connected. iykyk πŸ’…


πŸ¦‹ EXAMPLES πŸ¦‹

join an existing BSS network (i.e., connect to an access point) β€” the classic, the starter pack:

ifconfig wlan create wlandev ral0 inet 192.0.2.20/24

join a specific BSS network with network name my_net β€” now we're being specific:

ifconfig wlan create wlandev ral0 inet 192.0.2.20/24 \
    ssid my_net

join a specific BSS network with 40-bit WEP encryption β€” retro era, nostalgic but pls know WEP is old old:

ifconfig wlan create wlandev ral0 inet 192.0.2.20/24 \
    ssid my_net wepmode on wepkey 0x1234567890 weptxkey 1

join a specific BSS network with 104-bit WEP encryption β€” the longer key era:

ifconfig wlan create wlandev ral0 inet 192.0.2.20/24 \
    ssid my_net \
    wepmode on wepkey 0x01020304050607080910111213 weptxkey 1

look at those backslashes, she's serving continuity πŸŽ€


πŸ’œ DIAGNOSTICS πŸ’œ

read these like your group chat read receipts, bestie:

  • ral%d: could not load 8051 microcode β€” an error occurred while attempting to upload the microcode to the onboard 8051 microcontroller unit. 😭
  • ral%d: timeout waiting for MCU to initialize β€” the onboard 8051 microcontroller unit failed to initialize in time. she was not ready.
  • 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. and when a manpage says "this should not happen," you feel it in your bones πŸ’€

⭐ SEE ALSO ⭐

cardbus(4), intro(4), wlan(4), wlan_ccmp(4), wlan_tkip(4), wlan_wep(4), wlan_xauth(4), networking(7), hostapd(8), ifconfig(8), wpa_supplicant(8) β€” the whole friend group, go say hi 🫢


🧚 HISTORY 🧚

the ral driver first appeared in OpenBSD 3.7. support for the RT2501 and RT2600 chipsets was added in OpenBSD 3.9. support for the RT2800 chipset was added in OpenBSD 4.3. support for the RT2700 chipset was added in OpenBSD 4.4. support for the RT3090 chipset was added in OpenBSD 4.9. she's been growing and glowing since day one ✨


πŸ‘‘ AUTHORS πŸ‘‘

the original ral driver was written by Damien Bergamini <damien@openbsd.org>. legend behavior, honestly. 🫑


πŸ™ˆ CAVEATS πŸ™ˆ

okay bestie, the fine print, and we do NOT skip the fine print:

  • the ral driver does not make use of the hardware cryptographic engine.
  • the ral driver does not support any of the 802.11n capabilities offered by the RT2700 and RT2800 chipsets. additional work is required in before those features can be supported. (yes, "required in before" β€” that's how it's written, we don't touch the sacred text πŸ’€)
  • Host AP mode does not support power saving. clients attempting to use power saving mode may experience significant packet loss (disabling power saving on the client will fix this). so if your packets are ghosting you, that's why.
  • some PCI ral adapters strictly require a system supporting PCI 2.2 or greater. check the board's PCI version before purchasing the card, as it is likely these adapters will not work in systems based on older revisions of the PCI specification. seriously, check first. don't be the girlie who buys the card and then finds out. πŸ“

ngl, that last caveat is the realest one on this whole page. read it twice.

and that's the whole page, bestie!! this was the ral(4) manual, from the Debian fam, dated November 10, 2024. go forth and wifi responsibly πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’…πŸ«Ά

πŸ“¦ where this page comes from