Wifi, sound cards, printers, webcams and other devices - how to install linux drivers for them

This used to be the bane of Linux novices, myself included. Thankfully these days most devices are much better supported by both Linux distros and manufacturers. (TIP: HP build a lot of Linux web servers so their devices are fully supported. But so are many others like ATI and NVidia.)

Check the manufacturers website first especially for printers and cameras, they often have custom installers (HPLIP for HP printers/scanners) or full detailed instructions and support for your distro.

I will refer to devices initially rather than graphics cards, wifi or sound. The first part of the process is the same ofr any device. As is installing the drivers.

I will then explain how to set up Wireless Networking once you have the driver installed.

The secret is the chipset that your device uses and who actually manufactured it, rather than the brand name. We can find this information for any device.

Open a terminal by pressing 'ctrl' + 'alt' + t and type the commands one at a time followed by 'enter' or 'return'.

If your device is built in type this, or if you are not sure type it anyway.

lspci -nn

This shows all the devices on the usb bus and the -nn tells it to show the ID or identifier, this is unique to each device and looks like this for one device -

04:00.0 VGA compatible controller [0300]: NVIDIA Corporation G72 [GeForce 7200 GS / 7300 SE] [10de:01d3] (rev a1)


I'll tidy this a bit and explain what it means, explanations are in bold

04:00.0 the time since the terminal was opened 4 secs
VGA compatible controller the device type, (it's a graphics card)
[0300]: the device type ID
NVIDIA Corporation G72 the actual chipset used by the manufacturer
[GeForce 7200 GS / 7300 SE] the model number or generic model
[10de:01d3] the devices unique ID, this is what we need!
(rev a1) the revision number, may be needed

make a note of all that.

Now Google '10de:01d3 linux driver' without the [] brackets.

Look, the results match both the manufacturer and model number!

My graphics card is an NVidia GS7300SE


If your device is connected on usb, then type this instead-

lsusb 

(without the -nn part)

I got some entries like this

Bus 001 Device 005: ID 0781:5567 SanDisk Corp. Cruzer Blade
Bus 001 Device 002: ID 1c4f:3002 SiGma Micro WebCam SiGma Micro
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 003: ID 0d8c:0102 C-Media Electronics, Inc. CM106 Like Sound Device
Bus 002 Device 002: ID 046d:c534 Logitech, Inc. Unifying Receiver
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub




So for my WebCam driver I might Google '1c4f:3002 linux driver'

Luckily my WebCams driver has already been installed automatically.


Installing a new driver will vary, but a quick google will get the instructions, Windows drivers will not work (except for Wifi cards as a last resort) and device driver managers, or anything with a .exe file is for Windows and will NOT WORK!


It can take some patience like all good things but practice makes it easier and you will learn a lot. Avoid compiling code except as a last resort, even then it is not too scary.

Graphics cards and other none authorised drivers

If your card works on some resolutions, or your device is not recognised by Linux. You can try to update the driver. Try selecting Menu, preferences, monitor settings and see if you can select the resolution that you need. If not try this

Menu, Software Updater, then select the additonal Software tag


Use this with caution! You can trash the install if you use the wrong driver. As you can see I have installed an Nvdia updated driver and an AMD firmware update. The video driver is handy as I can now use my PVC with a monitor and 40" HDTV with simultaneous feeds to both, changing the resolutions to match (1440x900) and cloning the display. Playing with the display settings and the new driver gave options that the basic Linux driver did not, though it was fine for my monitor to get me started.


Wifi connections

Once you have a working driver installed you can click the network icon on the bottom right of the taskbar. In some versions of Linux you will need to unplug your ethernet (network) connection for Wifi to work. You can also click menu, preferences, network connections. (DO NOT click system tools, network. it is not the same)


Click 'edit connections', and if you cannot see your Wifi connection click 'Add', then select 'Wifi' further down. Then click 'Create' and choose a name, Wifi Connection 1 is fine or whatever. In the SSID field put the name of your Wifi connection ID. Click the General tab and make sure 'automatically connect' is ticked and 'all users' unless you want to limit it to certain users. Click security and select the type of security that you are using, it will either be 'WEP' which is very insecure and you should change it on your router asap as kids can hack it really easy. Hopefully you have 'WPA and WPA2 personal' unless you are in a corporate environment and have 'WPA and WPA2 enterprise' or something else.

Enter the security key remember it is case sensitive, you do need to use really good passwords as so many are set to 'logmein' or 'admin' and people do not realise how dangerous is is until their bank account is emptied! Use mixed cAsE and Numbers but never your names, house number or car-registration or postcode!

These days a kid with a mobile phone can hack most WEP and open connections (Cafes, buses) in seconds as they transmit the password every few seconds. Thankfully WPA only does it the first time you connect and WPS buttons make it much safer as you match a 4/6 digit number.

With a bit of luck you will be connected, if you get stuck Google the chipset and your version of Linux, they are not all as well supported and many communities have work-arounds. If you have old wifi routers and cards you can try NDISwrapper. Its a Linux program you install with some dependencies and download the Windows drivers for your card. It will then read the info to make yout card work, but it is not as good as the real thing, its a fudge but a good one when you are stuck.






 













No comments:

Post a Comment