Recently, one of our finance staff acquired a HP ProBook 4540s laptop with a Ralink 3290 wireless module. There were some issues with installing and using it with GNU/Linux due to the lack of included drivers; the two options are to:
If a piece of hardware doesn't work with Linux, it's often a driver issue. Drivers in the Linux kernel are in the form of kernel modules, so finding a driver for an unsupported device is equivalent to finding/building a kernel module.
One thing that I had noticed was that the module loaded for the module was ra2860 (from lsmod | grep ra
). Quick googling lead me to the conclusion that the correct module for this device (identified by lspci -v
was in fact ra3290sta
which was not present in the kernel modinfo ra3290sta
. From this point there were two options:
Only applies to apt-based distros, primarily *buntu and Debian.
Often, someone else will have already done all the legwork, so it's wise to search for "module PPA". If a PPA exists, just add the lines into /etc/apt/sources.list, and do an
apt-get update && apt-get install module.
Alternatively, you could use add-apt-repository
to add the PPA to the sources.
If a PPA doesn't exist, you may have to compile from source. The general procedure for this goes as follows:
wget http://www.example.com/example-module-0.1. tar.gztar xvf example-module-0.1.tar.gz cd example-module-0.1 ./configure make && sudo make install
If this doesn't work, make sure you have build dependancies installed:
apt-get install build-essential linux-kernel-headers
To load the module do this:
depmod -a modprobe example-module
If there isn't an available GNU/Linux driver/module, or the GNU/Linux version is faulty, it may be required to use the Windows XP version via Ndiswrapper.
apt-get install ndiswrapper-dkms ndiswrapper-common
echo ndiswrapper >> /etc/modules
.inf
driver with: ndiswrapper -i driver.inf
and verify with ndiswrapper -l
ndiswrapper
should now apply the driver, which can be verified with iwconfig
Sometimes, Linux drivers and workarounds are flaky or otherwise dysfunctional. In these cases, it's often simplest to replace the hardware.
Warning: Only proceed if you are qualified and able to accept responsibility for potential damage
Otherwise please contact technical support.
NB: This procedure may void warranty, please check before proceeding.
This is usually just as simple as inserting/replacing a PCI(e) card. Sometimes that card may need to be half height: if your workstation stands horizontally this may be the case.
Laptops can vary: some manufacturers consider the wireless module to be a non-consumer replacable part, making getting to the module a challenge.
Either way, searching "laptop model wifi replace" or "laptop model teardown" will yield better results, as the process is different for each machine.
Modern laptops tend to have either PCI(e) or PCI(e) half-height modules, so make sure to purchase a replacement of the appropriate size.
Manufacturers who tend to make modules which are well supported by Linux distributions:
A module should cost ~£15, and usually there is no harm in buying second hand. Again, it's wise to check for Linux compatibility beforehand to avoid buyer's remorse.
Posted by Nick Hu on 22/07/2013