So you’ve just installed PCLinuxOS 2007 TR4 on your laptop and your wireless card is detected! Finally, a distro gets it right! However, you’re not too sure how to proceed next…do you manage the device through the PCLinuxOS Control Center? Do you start another program and work that way? Do you use KDE’s built in applet to monitor things? What’s next?
This is something that is often expressed in the forums at pclinuxos.com and something anyone associated with this fine distribution is glad to see…that is working wireless. However, as noted above, people often wonder how to control their wireless device and how to move in and out of various different environments. I’d like to share how I do wireless on my Thinkpad a22m.
I have a US Robotics 5411 MaxG PCMCIA card for my laptop. PCLinuxOS 2007 detects it out of the box but doesn’t install it by default. The reason for this is that PCLinuxOS doesn’t assume to know how you want to install it…either using the built into the kernel support for the broadcom wireless chip or ndiswrapper…which is a program that allows Windows drivers for wireless to be used in Linux. I elected to go with Ndiswrapper since I had some problems with the broadcom driver in PCLinuxOS. Ndiswrapper is installed by default in PCLinuxOS which makes this process even easier…but the process still requires some forethought and I’ll share with you what I did to make this process go smoothly and easily.
Don’t Configure Wireless after Install!
I recommend that you allow first boot to happen without setting up networking at all. I like to do things with a clean slate so I removed my wireless device inside the PCLinuxOS Control Center after first boot. Then I did a full update via wired line and then restarted. Once back inside PCLinuxOS, I used the PCLinuxOS Control Center to remove my wired device (it’s simple enough to re-add it later) and install my wireless device. Please note that I downloaded and extracted the Windows ndiswrapper drivers BEFORE doing this…it’s imperative that you have the drivers in a place you can get to them (windows partition, flash drive, floppy, etc) before you try and configure the device. You can elect to skip over this tip…I just like to simplify what I work with.
Download the Windows Drivers for ndiswrapper Before You Start!
First and foremost…download the drivers from the US Robotics 5411 MaxG page linked to above. It’s going to be in exe format for Windows…sometimes this can be a royal PITA because not all manufacturers create their .exe files the same. Some exe files will allow extractions of files from them while others will not. For example, I downloaded my driver and tried to unzip it:
[root@localhost ~]# cd /home/devnet/Desktop
[root@localhost Desktop]# ls
5411a-2.00.004.exe kvirc.desktop trash.desktop
Home.desktop My Computer.desktop
[root@localhost Desktop]# unzip 5411a-2.00.004.exe
Archive: 5411a-2.00.004.exe
End-of-central-directory signature not found. Either this file is not a zipfile, or it constitutes one disk of a multi-part archive. In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive. unzip: cannot find zipfile directory in one of 5411a-2.00.004.exe or 5411a-2.00.004.exe.zip, and cannot find 5411a-2.00.004.exe.ZIP, period.
[root@localhost Desktop]#
As you can see…it didn’t work. So what is one to do? You have 2 options here…you can use a Windows PC to extract the files OR use Wine in PCLinuxOS to do it. I chose the first option since I have a Windows PC at work. I downloaded the program 7zip and used it to extract the files from the exe into a single directory. Then I transported over this extracted directory to my PCLinuxOS 2007 /home/devnet folder via a flash drive.
To help others out here though, I’m going to walk through the Wine way of doing things. Now it’s important to note that you need a LAN connection to get this installed…and I know in some instances this won’t be possible…however, you’ll need minimal access to be able to get this going. If you are unable to get internet access on this PC…I’m afraid you won’t be able to get the exe extracted.
How to Use Wine to Extract Wireless Drivers
Connect to a wired line. Click on the Synaptic icon in your toolbar or open up the Synaptic Package Manager by clicking on the Kmenu >> System >> Configuration >> Packaging >> Synaptic Package Manager. Once inside Synaptic, do a search for “Wine”. Once you’ve found it, select it and right click on it. Choose to install it and select “Mark” for the extra packages synaptic asks you to install. Now click the apply and apply again and wait for PCLinuxOS to install things.
After Wine has installed, download and install 7zip linked to above. When you double click the .exe it will ask you what program you’d like to use to open it…type “wine” and click ok. 7zip should install no problems. Now you should see a “Wine” menu appear on your Kmenu. Inside should be 7zip. Run 7zip and extract the .exe. You should end up with a folder on your desktop from the extracted driver. You can now choose to remove wine if you’d like or just leave it in place. I copied the drivers to my /home/devnet directory so I could have access to them and always knew where they were. Plus I like to keep my desktop clear of clutter.
Blacklist the BMC43XX drivers!!
You should blacklist the bcm43xx drivers by default. Remember this is for TR4 or before only…I’m pretty sure Tex and the gang have got this sorted out for final so no worries there…but you should make sure to add “blacklist bcm43xx” to your blacklist. To do this, go to your Kmenu and choose “Run Command”. Enter the command “kdesu kate /etc/modprobe.d/blacklist” and enter your root password when prompted. If asked about a session…choose default session. Now enter “blacklist bcm43xx” inside this file on its own separate line and save. That’s it! Now you shouldn’t get prompted to reinstall drivers each time you open up the network interface in the PCC. What causes this? Well, the PCC is a separate entity from the linux kernel and even the OS iteself. It operates autonomously and therefore doesn’t communicate its intentions nor does the OS or kernel report its intentions. Therefore, they ofen get crossed on some things. By keeping vigilent on things such as blacklisting, you can stay ahead of the curve for using the PCC 🙂
Installing with Ndiswrapper
So now we have the drivers ready to install. What next? Well, the PCLinuxOS Control Center never lets you down. If you’ve removed the interface like I did previously, you’ll have to install it again. Go to the PCLinuxOS Control Center and choose Network and Internet >> Set up a New Network Interface. When choosing wireless you’ll be prompted to install drivers using native kernel support (if your card is supported) or ndiswrapper. I’ve found that ndiswrapper works better for this particular card of mine…so I chose ndiswrapper when the time for choice came. I then browsed to the /home/devnet directory and selected the usrmaxg.inf file located inside the extracted directory. After that, I select the general settings for wireless that I desired…for example, open and managed, which is what my connection is. I didn’t input the key yet though…I’ll input the key and SSID with NetApplet later so for now, that’s all I setup.
Setting NetApplet to Start at Boot
To start NetApplet on boot, simply start it up from the Kmenu and then when it runs inside the tray, choose Settings >> Always Launch on Startup. This should make it so NetApplet will start right away for you.
If it still isn’t starting for you, you may need to force it to start anyway. To force Netapplet to start, open up the filemanager with kmenu >> run command >> “konqueror –profile filemanager”. Then I make that window small and push it over to the right side of my screen. I then browse to /home/devnet/.kde/autostart. Then I open up the Kmenu and find Netapplet (should be in System >> Monitoring) and I drag and drop it from the Kmenu into the autostart directory. When it asks if I want to copy, move, or link here…I choose link here. That’s it! Now netapplet will start when you login to your desktop. You can place just about any program in this directory to achieve the same results.
Connecting/Switching Networks
So, now that we’ve got things installed, how do we connect? Right click on NetApplet running in your tray. If it hasn’t started, go back into the Kmenu and start it. Then when it appears in the tray, right click on it and hover over “Wireless Networks”. Choose your network to connect to and enter the Key if prompted. You can switch back and forth between any of the networks that your card picks up and you can do so quite easily with NetApplet.
That’s about it…NetApplet plugs nicely in to PCLinuxOS’s already fantastic Control Center so you should be on your way to operating your wireless connection with ease. One thing I’ve found to be kind of a hassle with PCLinuxOS is that it keeps trying to reconfigure my connection for me. For example, every time I open up the wireless settings portion of the PCLinuxOS Control Center, it prompts me to install drivers even though I’ve already got them installed and running on my system. This is easily cancelled out manually but it is a hassle nonetheless.
All in all, it’s quite nice to have an older laptop hum along with PCLinuxOS and a wireless card. Since I’ve only added wireless to my network in the past year I haven’t ever had the need to do this previously. I hope that this primer serves as a way for all of you to manage your wirless interface with NetApplet…which I’ve found to be the easiest and most friendly way to manage things. If you have any questions or further tips on this subject, please drop me a line in the comments below 🙂
Thanks for this HOWTO. I have been searching for it two days already
Great tutorial. However, I couldn’t get the driver to install because when I tried to browse for it, I could never find the .inf file from any directory. Any idea what I’m doing wrong?
Some cards don’t come with a .inf file and instead with .sys or .bin (bin is rare but possible). Look for a .sys to get you started 😀