Using the Belkin USB Wireless G key under Linux

La version fran├žaise de ce document est ici.

This is an attempt to summarize the content of the various web pages that describe the setting of a Belkin USB Wireless G key under Linux, plus the author's own experience. Since some of this content is second hand, it might be partially inaccurate. Do not hesitate to send comments and corrections to the author.

Belkin's USB Wireless G Network Adapter

The Belkin USB Wireless G Network adapter (ref. F5D7050) is a WiFi network interface which is relatively common due to its low price.

Internally, it can contain three different chipsets: Ralink RT2570, Ralink RT73, or Zydas 1211B. You can identify which one simply by looking at the contents of the CD-ROM which is supplied with the key.

Windows drivers Chipset
rt2500.sys
rt2500.inf
Ralink RT2570
rt73.sys
rt73.inf
Ralink RT73
BLKWGUXP.sys
BLKWGU.inf
Zydas 1211B
(after installation)
prismaxp.sys
bnkUSB.inf
Prism A02

New! It looks like some recent models have the Prism A02 chipset. So far, these models work with the ndiswrapper method (see below), but no linux drivers known. Any information welcome.

For each of the first three chipsets, there are two installation methods available:

The good method is to use the Linux drivers. The "ndiswrapper" method might give inferior technical results. It also implies that you read and accept the terms of the end user licence agreement of the Windows drivers (so far as they are compatible with your local legislation). Therefore, the "ndiswrapper" method should be used only as a last resort.

Tux looking at a butterfly

The Linux drivers method

Recent distributions come with precompiled drivers. In such a case, all that you have to do is to load the kernel module with "modprobe" (as the super-user "root"). You can then check that you have a WiFi network interface with "iwconfig" (from the wireless-tools package).

Chipset Commands
Ralink RT2570 # modprobe rt2570
# iwconfig rausb0
Ralink RT73 # modprobe rt73
# ifconfig rausb0 up
# iwconfig rausb0
Zydas 1211B # modprobe zd1211b
# ifconfig wlan0 up
# iwconfig wlan0

Tux looking at a butterfly

The Linux drivers method, do-it-yourself variant

If you are not lucky, your distribution does not already contain the driver. Then you need to recompile the driver by yourself. Here are the places where you can download the drivers:

Chipset Location
Ralink RT2570
Ralink RT73
http://rt2x00.serialmonkey.com/wiki/index.php?title=Downloads
Zydas 1211B http://zd1211.ath.cx/download

The first steps are to:

  1. download the archive
  2. expand it
  3. go into the archive's directory with "cd"

Then the commands (as a normal user) vary according to the driver you want to compile:

Chipset Commands
Ralink RT2570
Ralink RT73
  1. $ cd Module
  2. $ make
Zydas 1211B
  1. In the Makefile, set ZD1211REV_B=1.
    Set KERN_26=n if you are using a 2.4 kernel.
  2. $ make

Once you have successfully recompiled the driver, you can install it (as "root" user):

  1. # make install
Now test the driver: go to "modprobe" section as explained above.

Tux looking at a butterfly

The "ndiswrapper" method

This method consists in the following commands (replace "driver" below with the name of the Windows XP driver):

  1. # ndiswrapper -i driver.inf
  2. # ndiswrapper -l
    (to ensure that the driver is loaded and the hardware detected)
  3. # modprobe ndiswrapper
  4. # iwconfig wlan0
    (to ensure that the interface is available)

Once everything works, you can type "ndiswrapper -m" to let this interface be created automatically at computer reboot.

Tux looking at a butterfly

What next?

When the WiFi network interface ("rausb0" or "wlan0") is available, you can let graphical tools like KWifiManager configure it, or if you prefer the command line, you can:

All these settings are temporary. To make them permanent, use the tools provided with your distribution (YaST for SuSE, modifying /etc/network/interfaces for Debian, etc...).

Last updated: 2007-03-28. Maintained by webmaster@bureau-cornavin.com.