Hi, this is what I did on my Toshiba Satellite A205 Laptop. Dual 32 bit Pentium T2330 CPU's at 1.6 Ghz and 1014 MB Ram, realtek 8189b wireless lan 2.6.21.5-smp linux kernel.
Overview of process.
get the driver working
I used the
rtl8187b-modified-dist driver
from [URL="http://www.datanorth.net/~cuervo/rtl8187b]cuervo[/url]
From my reading, I gleaned that a native windows driver for the card, and ndiswrapper could be another option, but I did not go that route, since the linux "native" driver seems to work fine
2. get the datalink part working with..
the Linux Wireless Extensions
iwconfig
iwevent
iwgetid
iwlist
iwpriv
iwspy
wpa_supplicant tools
/etc/wpa_supplicant.conf
wpa_supplicant
wpa_gui
3. use dhcpcd (dhcp client daemon) to get an ip address attached to the card
Here is a bit of detail for each of the steps above....
[B]1. get the driver working.[/B]
[p]
Download the driver and compile it via the instructions.
The install script did not work for me, but on examining it,
I saw it just copied all the *.ko files to the /lib/modules/2.6.21.5-smp/ directory.
I forget where I read it, but I read somewhere that you "should" put the modules in the
/lib/modules/2.6.21.5-smp/kernel/drivers/net/wireless/ directory.
Well, examining that, I saw some sub-directories, so I created a realtek subdirectory and rebooted.
[/p]
[p]
Then I did a lsmod and saw my drivers--here are the relevant bits...
[/p]
root@howard:# lsmod
Module Size Used by
ieee80211_rtl 63748 1 r8187
ieee80211_crypt_rtl 8324 1 ieee80211_rtl
a lsusb shows...
Bus 6 Device 1: ID 0000:0000
Bus 7 Device 1: ID 0000:0000
Bus 1 Device 1: ID 0000:0000
Bus 2 Device 3: ID 0bda:8197 Realtek Semiconductor Corp.
Bus 2 Device 2: ID 0781:5406 SanDisk Corp.
Bus 2 Device 1: ID 0000:0000
Bus 5 Device 1: ID 0000:0000
Bus 4 Device 1: ID 0000:0000
Bus 3 Device 1: ID 0000:0000
so my device is seen by the kernel
[span style="font-weight:bold;"]2. get the datalink part working with...[/span]
the Linux Wireless Extensions
iwconfig
iwevent
iwgetid
iwlist
iwpriv
iwspy
The wirelesss tools are part of the Slackware 12.0 distribution. I believe they are what the wpa_supplicant uses to do its magic.
iwconfig is analagous to ifconfig. Just type iwconfig as root to see your wireless lan. If you can't see it with this, then you have a driver or module issue.
Here is my output from iwconfig
wlan0 802.11b/g linked ESSID:"903 Mills Market"
Mode:Managed Channel=6 Access Point: 00:12:17:3C:5A:E3
Bit Rate=11 Mb/s
Retry

n Fragment thr

ff
Encryption key

ff
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
I found iwlist usefull as well. It takes several options for doing various things. It's output kept me thinking I could get this thing working, and helped me develop my current ideas about how wireless works under linux.
Here is the output from iwlist wlan0 scanning
bash-3.1# iwlist wlan0 scanning
wlan0 Scan completed :
Cell 01 - Address: 00:18:F8:4E:86:C9
ESSID:"kk"
Protocol:IEEE 802.11bg
Mode:Master
Channel:6
Encryption key

n
Bit Rates:54 Mb/s
Extra: Rates (Mb/s): 1 2 5.5 6 9 11 12 18 24 36 48 54
Quality:13 Signal level:0 Noise level:102
Extra: Last beacon: 366ms ago
Cell 02 - Address: 00:12:17:3C:5A:E3
ESSID:"903 Mills Market"
Protocol:IEEE 802.11b
Mode:Master
Channel:6
Encryption key

ff
Bit Rates:11 Mb/s
Extra: Rates (Mb/s): 1 2 5.5 11
Quality:13 Signal level:0 Noise level:73
Extra: Last beacon: 351ms ago
Cell 03 - Address: 00:40:96:3A:6C:34
ESSID:"<hidden>"
Protocol:IEEE 802.11b
Mode:Master
Channel:6
Encryption key

n
Bit Rates:11 Mb/s
Extra: Rates (Mb/s): 1 2 5.5 11
Quality:13 Signal level:0 Noise level:27
Extra: Last beacon: 461ms ago
At this point, I could see that my card could see the network. What I couldn't figure out, was how to select a network. That's where the next tool comes in....
wpa_supplicant tools
/etc/wpa_supplicant.conf
wpa_supplicant
wpa_gui
wpa_supplicant seems to be a means of tying the card to the network. A VERY IMPORTANT DISTINCTION is that it does NOT tie the computer to the network--you need dhcpcd for that; rather, it sets up what I believe is called the data-link layer between the card and the network.
wpa_supplicant uses a config file :/etc/wpa_supplicant.conf (imagine that (

. I only have mine configured to talk to non-encrypted networks where I don't need to log in. (I will post on how to do that after I accomplish it).
The contents of my wpa_supplican.conf file are:
bash-3.1# cat /etc/wpa_supplicant.conf
# Plaintext (no encryption) network
ctrl_interface=/var/run/wpa_supplicant
network={
ssid="example open network"
key_mgmt=NONE
}
There are other examples in /usr/doc/wpa_supplicant-0.5.7/examples. My example is straight from there.
There are several ways to invoke wpa_supplicant, but I am currently using wpa_supplicant -Dwext -i wlan0 -dd -c /etc/wpa_supplicant.conf . This ties the wpa_supplicant to the wireless extensions listed above (there are othe tools available that can talk to wpa_supplican: ndiswrapper, for example) and to my wireless card on wlan0. It is running in double verbose debugging mode (I like to see output from programs in a shell, so I can learn from them) and uses the wpa_supplicant.conf file.
Running this, shows a lot of stuff running by the screen, and trying to run firefox or lynx, results in network not found errors. That lead to the next tool: wpa_gui.
wpa_gui enables you to select your network. As root, run wpa_gui then click the [scan] button. A separate window appears with a list of networks. Double click on the one you want. A new window appears showing the details of the network. Click the [add] button and the network appears in the first window as "connected".
But wait! Now you open firefox, and nothing happens! WTF!
That brings us to dhcpcd.
dhcpcd is a program that aquires an i.p address for an interface. To get this, just run dhcpcd wlan0.
I am happily composing this in Emacs at a very nice public market, sipping diet coke and digesting a lox and cream cheese bagle.
good stuff!
Hope it helps
prgrcmpny