Update on 2/4/08: So far I’ve gotten the computer to recognize the wireless adapter in Ubuntu 6.06, Wolvix 1.1.0 and Puppy 3.00. The latter two I’ve tried in the presence of actual wireless networks, but I still can’t get a DHCP connection. I doubt it’ll work in Ubuntu, either. In Debian Lenny, I got stopped at modprobe ndiswrapper, which didn’t work.
(Original post begins here … proceed knowing that this so far hasn’t worked for me)
Only a few days ago I said I never had any luck with ndiswrapper — the program that enables you to use Windows drivers to configure networking devices in Linux and BSD.
A few months ago, when I heard that the Airlink 101 AWLL3026 USB Wi-Fi adapters, which go for $10 at Fry’s during periodic sales, worked out of the box in many Linux distributions, I decided to buy one.
Well, it turns out that I got the newer model, the AWLL3028, which has an entirely different chipset — it’s a Realtek 8187b. It didn’t work with anything. I couldn’t even get it to work in Windows XP without the driver.
Anyhow, I decided to Google my way into the problem today, and I found the following:
You need to use the Windows 98 driver to get the AWLL3028 to work with ndiswrapper
How to install and configure ndiswrapper in Ubuntu
How to troubleshoot your wireless connection, especially with the Realtek 8187, in Ubuntu
A modified Linux driver for the Realtek 8187b, with explanation
Hacking the RTL8187b
I knew it was only a matter of time before a wireless adapter sold for $10 at Fry’s became usable in Linux. Let’s hope it’s plug-and-play — and we won’t have to do any of this — very soon (perhaps in Ubuntu 8.04 LTS).
I decided to try ndiswrapper on my test box running Ubuntu 6.06 LTS. Instead of downloading and compiling my own ndiswrapper, I just searched for it in Synaptic and installed it from there.
Then I did the following:
Go to Places — Home Folder and make a new folder (or “directory” if you want to put it that way) — call it wireless — for the two Windows drivers. Then open the new wireless folder.
Then, put the Windows driver CD in the CD drive, open it with the file manager (double-click on the CD icon on the desktop).
In the CD window, navigate to the Windows 98 folder and drag the two drivers, with filenames rtl8187B.sys.sys and net8187b.inf, into the wireless folder.
Then open a Terminal window and do the following:
You should already be in your home directory, so chage to the new wireless directory you made:
$ cd wireless
Now start using ndiswrapper to make your new wireless driver:
$ sudo ndiswrapper -i net8187b.inf
Verify the installation:
$ ndiswrapper -l
Put the ndiswrapper module into the Linux kernel:
$ sudo depmod -a
$ sudo modprobe ndiswrapper
Then run dmesg and look for something like “ndiswrapper version version loaded” in the output:
$ dmesg
Create an alias for wlan0:
$ sudo ndiswrapper -m
Make sure ndiswrapper is loaded at boot:
$ echo “ndiswrapper” | sudo tee -a /etc/modules
Then reboot. At this point my wireless adapter began flashing, and wlan0 was among the choices System — Administration — Networking.
But since there’s no wireless in this room, I’ll have to try again tonight, except this time in Debian Lenny or Wolvix Hunter 1.1.0. (In those, instead of sudo, I’ll just open a root shell with su).
Thanks to Kevdog, from whom I got all of this information. I made some modifications to his instructions, substituting pointing and clicking for work in the terminal (and leaving off a few precautionary checks) where possible.
And I’ll tell you later whether or not this actually worked. I did this all in Ubuntu 6.06 LTS, but I don’t see why it wouldn’t work in Debian, a newer version of Ubuntu, or just about any other version of Linux (I plan to try in Puppy and Damn Small Linux at some point, too).