Template:K Oneiric/Hardware


Jump to: navigation, search



CPU and motherboard

The Linux kernel in versions of (K)Ubuntu starting with Karmic Koala implemented mandatory CPU temperature and fan speed sensor monitoring (which was optional in previous kernels). The output from the sensors is used to effect CPU scaling (throttling) in the event of "out of range" temperature values. However, not all motherboards/CPUs have sensor drivers available, and due to a bug in the feedback routine, missing sensors drivers incorrectly report as an "out of range" error in the kernel. Originally this threw multiple errors which were logged (using rsyslogd) to both the /var/log/kern.log and the /var/log/syslog files, filling them to multiple Gb size within a few hours. This had the effect of slowing, then freezing, the machine. Currently, the machine will simply not boot.

If your machine is affected by this problem, you may be restricted to versions of (K)Ubuntu that are Jaunty or earlier (or you must undertake extensive workarounds).

Disable CPU Frequency scaling

(Note: These instructions may not work with newer Linux kernels.) My motherboard does not have drivers for my CPU fan sensor. Therefore, the Linux kernel cannot monitor the temperature and fan speeds properly and throttles the CPU (aka frequency scaling) inappropriately. This has the effect of slowing or freezing my computer. To turn off this behavior, I used the Debian RCConf utility:

sudo apt-get install rcconf
sudo rcconf

and unchecked the ONDEMAND item. (I also unchecked the fan control item). I then rebooted. For more info, see this.


libsensors (libsensors3 and/or libsensors4) is a module that allows an interface (such as lm-sensors) to monitor your motherboard/CPU temp and fan speeds. You can adjust settings:

sudo kate /etc/sensors.conf
sensors -s

libsensors and lm-sensors are not used by the Linux kernel (which uses other routines).

Some hardware CPU sensors are not recognized by the Linux kernel, causing system slowdown or freezing. Here is some info about hardware/sensors problems.

Sensors-applet (Motherboard monitoring)

Sensors-applet (or xsensors) is the Gnome (Ubuntu) frontend for lm-sensors. These sensors monitor the temperature and fan-speed sensors of your motherboard.

sudo apt-get install sensors-applet lm-sensors
sudo sensors-detect
  • Make sure your sensors are installed.

For more info, see this thread.

Graphics Cards

Frequency Out of Range / Choose New Resolution

  • Edit the grub configuration file:
sudo gedit /etc/default/grub
  • Edit the lines:
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
by removing the comment hashmark and choosing an appropriate resolution so that the lines resemble:
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
  • Re-build the grub configuration file:
sudo update-grub

Install Latest Nvidia/ATI drivers

Ubuntu uses a GUI frontend to Jockey for the installation of the proprietary nVidia drivers (and other proprietary drivers).

Menu -> System -> Hardware Drivers
  • Sometimes after a kernel upgrade a proprietary driver may stop working. In such a case, try installing the new linux-headers that match the newly upgraded kernel:
sudo apt-get install linux-headers-$(uname -r)
If dkms and build-essential have never been installed on your system, these can also be worthwhile:
sudo apt-get install dkms build-essential

Intel integrated graphics cards

  • With the default installation of Oneiric, my computer with integrated Intel graphics blanked the screen at bootup and then froze, or flashed a "Frequency Out of Range" error several times. These steps work around this problem.
  • When booting up, choose recovery mode as root (or "root with networking"). This will give the command line (as root user).
  • Edit the Grub2 configuration file:
sudo nano /etc/default/grub
  • Change the line:
GRUB_CMDLINE_LINUX_DEFAULT="quiet i915.modeset=0"
  • Then regenerate the Grub2 configuration file:
sudo update-grub
sudo grub-mkconfig --output=/boot/grub/grub.cfg
When I then rebooted, my graphics worked.
Intel graphics resolution problems
  • On a fresh installation of Karmic Koala I had no problems with my onboard Intel graphics card. However, on an update from Jaunty to Karmic, I could not get higher screen resolutions -- the same problem I had in Jaunty. A solution to achieve higher resolutions is to revert to the old Intel drivers (used in Intrepid), as detailed here.
Screen Keeps Flickering

If you have an Intel Corporation Mobile 915GM/GMS/910GML card, your screen may flicker every 5-10 seconds. To prevent this:

  • Menu -> System -> Administration -> Advanced -> Service Manager -> Uncheck "Detect RANDR (monitor) changes"

Reconfigure xserver-xorg

sudo dpkg-reconfigure xserver-xorg


Before installing any driver for ATI or nvidia, please make backup xorg.conf before following this method.

sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak

If you have edited this file but would like it to be automatically updated again, run the following command:

sudo dpkg-reconfigure -phigh xserver-xorg

If you want to try this xorg.conf after installing the driver, you must back up your xorg.conf as following. And then, edit /etc/X11/xorg.conf in text editor. Add or modify this xorg.conf sample.

Note: As of Maverick, /etc/X11/xorg.conf may no longer exist, especially for systems with Intel graphics cards, and must be created from scratch. See the Ubuntu wiki about this issue.

xorg.conf for nvidia
 Section "Screen"
 Identifier "Default Screen"
 Device "Configured Video Device"
 Monitor "Configured Monitor"
 SubSection "Display"
 Depth 16
 Modes "1280x1024" "1024x768"
 Option "AddARGBGLXVisuals" "True"

 Option "AddARGBGLXVisuals" "True"
 Defaultdepth 24
 Section "Module"
 Load "glx"
 Load "GLcore"
 Load "v4l"
 Section "Device"
 Identifier "Configured Video Device"
 Boardname "vesa"
 Busid "PCI:1:0:0"
 Driver "nvidia"
 Screen 0
 Section "Device"
 Identifier "Device0"
 BoardName "Generic Geforce 5500"
 Driver "nvidia"
 Vendorname "NVIDIA Corporation"
 Option "DualHead" "1"
 Option "ShadowFB" "1"
 Option "FPScale" "1"
 Option "TwinView" "True"
 Option "TwinViewOrientation" "RightOf"
 Option "UseEdidFreqs" "True"
 Option "Metamodes" "1024x768,1024x768"
 Option "UseDisplayDevice" "DFP"
 Section "Device"
 Identifier "Videocard0"
 Driver "nv"
 VendorName "NVIDIA Corporation"
 BoardName "GeForce 7600 GT"
 Section "InputDevice"
 Identifier "Generic Keyboard"
 Driver "kbd"
 Option "XkbRules" "xorg"
 Option "XkbModel" "pc105"
 Option "XkbLayout" "us"

 Section "InputDevice"
 Identifier "Configured Mouse"
 Driver "mouse"
 Section "ServerLayout"
 Identifier "Default Layout"
 screen 0 "Default Screen" 0 0
 Section "Extensions"
 Option "Composite" "Enable"
xorg.conf for intel
  • Make sure you try the solution here (including sudo update-grub and rebooting) before creating a new xorg.conf. It may solve your problem and you may not need this step.
Section "Device"
       Identifier      "Configured Video Device"
       Driver          "intel"
Section "Monitor"
       Identifier      "Configured Monitor"
Section "Screen"
       Identifier      "Default Screen"
       Monitor         "Configured Monitor"
       Device          "Configured Video Device"

Installation of ATI and nVidia Graphics drivers

nVidia Driver

The current proprietary nVidia drivers are automatically installed using:

Menu -> System -> Administration -> Hardware Drivers

Look for the current drivers to activate there.

  • Here are alternate manual instructions.
  • Please make a backup of xorg.conf before following this method.
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
  • Install the nvidia-settings package:
 sudo apt-get install nvidia-settings
  • Download the nVidia driver:
wget -O NVIDIA-Linux-x86-pkg1.run http://www.nvidia.com/Download/index.aspx?lang=en-us
sudo sh NVIDIA-Linux-x86-pkg1.run

and choose yes to any verbose response. After you install the driver, reboot your computer.

ATI Driver

If you have problems with ATI drivers after upgrading, check this link for solutions to common problems with ATI.

Monitors / Displays

Turn off power saving

Even when on AC power, the power saver feature of Ubuntu sometimes changes the screen brightness to the battery setting on laptops. This was a problem with the ACPI power management module in the past, but should now be fixed. If not, change the settings:

To access the Guidance Power Manager module, click on the power icon on the desktop taskbar.
Change the brightness setting for "Battery powered" to maximum.

You can also turn off power management settings (invoked when the computer is idle):

Menu -> System -> Preferences -> Power Management -> Display -> Put display to sleep when inactive for: Never -> Close

Configure Dual Monitors with nVidia

  • Make sure that the nVidia driver has been installed and is functioning properly on your first screen. Also, make sure both monitors are connected.
  • Menu -> Administration -> NVIDIA X Server Settings
or from the command-line terminal (Terminal or Konsole) type:
sudo nvidia-settings
  • Select "X Server Display Configuration".
  • You should see 3 boxes (2 if your card doesn't have an S-Video out). From here you can configure all of your card's outputs.
  • Check the "(Disabled)" box.
  • Select "Configure...".
  • The most common choice is TwinView. Select it.
  • Setup the desired screen resolutions and positions of your two active displays.
  • The new display will likely have resolution set to "Auto" to match your first. Change this if you wish.
  • Leave the first screen's position as "Absolute" and set your second display's position relative to that.
  • "Clone" means the same output on both.
  • Once you are satisfied with your settings, hit Apply to test them.
  • Note: if your displays are side-by-side, the kicker may extend across both screens as well as any maximized applications. This will be corrected when the X server is restarted.
  • If everything else is ok, hit "Save to X Configuration File". Now hit Ctrl+Alt+Backspace to restart X. You now have 2 screens!
  • Troubleshooting: if the X server fails to reload you can recover your old X configuration. In a terminal:
sudo cp /etc/X11/xorg.conf.backup /etc/X11/xorg.conf

Hard Drives and USB Storage

Optical Drives

Printers & Scanners

The CUPS printer interface recognizes many printers. Specific printers not recognized can often be installed using instructions found at the Linux Foundation OpenPrinting database.

Add a Printer

Menu -> System -> Administration -> Printing -> Server -> New -> Printer

Most of the time, your printer (if connected and turned on) will be detected automatically.

My network printer with its own IP address at was correctly installed at


You can also choose printers on a Windows system via Samba and other types of networked printers, in addition to directly connected printers.

  • An alternative method to access the CUPS interface is through a web browser. Go to the URL:

Change default CUPS printer margins

  • CUPS uses the maximum printable area of the chosen printer by default; there are no margins. The default settings for any printer can be changed in the PPD file for the specific printer found in the /etc/cups/ppd folder. Dimensions used in the PPD file are generally in points (in Postscript, 1 inch = 72 points). For my printer, Letter size is 612 x 792 points. I changed this to 576 x 756 points to make Letter size print 8 x 10.5 inches on the page.
  • Another easy method (to adjust margins) is to create a Custom paper size with the desired margins and use this as the default. (This only works for printers whose PPD files allow custom paper sizes). For example, create a Custom paper size that is 8 inches x 10.5 inches (which would leave a 0.5 inch margin on all sides) and set it as the default. This is easiest to accomplish through the browser-based configuration utility. Start the CUPS interface through the web browser URL:

Then from this interface set the Default Options for your printer:

CUPS -> Printers -> My Default Printer -> Set Default Options -> Media Size: Custom
-> Width: 8 -> Height: 10.5 -> Units: Inches -> Set Default Options

Now the "Custom.8x10.5" Media Size should appear in the Printer Options section for your printer. (You can then choose between this media size and the essentially marginless "Letter" media size at any time.)

Note: 8 x 10.5 inches = 203.2 x 266.7 mm = 576 x 756 points in Postscript (72 points per inch in Postscript).

Brother printers

Most Brother printers are auto-detected or can be installed directly from the CUPS interface. For additional drivers and instructions see the Brother help site. For information on a specific model, see the Linux OpenPrinting site.

HP Printers

For Hewlett Packard printers / scanners, install hplip and hplip-gui.

sudo apt-get install hplip hplip-gui
  • Add the printer:
Menu -> Applications > System Tools > HP Toolbox

This should set up printer / scanners for scanning as well.

  • For scanning, install Xsane:
sudo apt-get install sane xsane


Menu -> Applications -> Graphics > Xsane image scanning

A full library of Linux drivers for HP printers is here.


If you get no sound with a fresh install, check that the sound levels are not set to zero. Click on the sound (speaker) icon on the panel, and then mixer. You may need to expand the dialog window to show labels. Ensure levels aren't set to zero, especially PCM.


Sound in (K)Ubuntu is routed by Phonon either directly to your sound card or through the PulseAudio sound system. To use PulseAudio, you must install it. This can be done by installing the PulseAudio control modules (which will install pulseaudio as a dependency):

  • Install PulseAudio with the control modules:
sudo apt-get install pavucontrol paprefs
  • Although I no longer use it, in older versions of (K)Ubuntu I also (optionally) installed a system tray widget:
sudo apt-get install padevchooser

Some experimentation with the settings in

Menu -> System -> System Settings -> Multimedia

may be necessary to make sound on your system work properly.

Try setting PulseAudio as the first sound system if you are having troubles getting sound (even if you are using ALSA). If that doesn't work, try making it the last choice.

Some programs require ALSA sound and try to send sound directly through ALSA drivers. Check your program's preferences section to see if ALSA is selected. You may have to switch to PulseAudio (or even OSSound) if you can't get sound.

HDMI with PulseAudio

I could only get my HDMI audio on my computer to work this way, and I can't quite figure out why it works.

  • I checked to make sure my Mobile Intel 4 Series HDMI audio driver was installed (it is part of the most recent kernels):
aplay -l
aplay -L

This told me the HDMI card was recognized and configured properly. The problem was that no matter what I did, I couldn't get the sound piped through the HDMI card using ALSA, Kmix or any other settings (I tried every permutation).

  • In PAVUControl I selected the HDMI card as the output device:
Menu -> Multimedia -> PulseAudio Volume Control -> Configuration -> Internal Audio -> Digital Stereo (HDMI) Output

Then everything played through the HDMI audio card (through the cable to my HDTV).

This worked whether I had PulseAudio selected as the default audio or not (in System settings -> Multimedia). Don't ask me why.

  • My HDMI port/output is only recognized if the HDMI cable is plugged in at bootup (it does not matter whether the HDTV power is on or not). If I plug in the HDMI cable after bootup, it isn't recognized.
  • After doing this, every program I use works: VLC, Audacious, or whatever. It does not seem to matter whether the application is using Default, ALSA, or PulseAudio for the audio output plugin. None of this makes sense to me, but it works. I'm happy to be able to play HDMI movies (through VLC) to my HDTV.
  • To change sound output back to my computer's internal speakers (ALSA), I returned the output setting:
Menu -> Multimedia -> PulseAudio Volume Control -> Configuration -> Internal Audio -> Analog Stereo Output
Recording with PulseAudio

To set the PulseAudio inputs that will be recorded by an application (such as Audacity or FFMPEG), the recording must be already started! Only then can the inputs (to be recorded) be selectable in PulseAudio.

  • For example, to record from a plug in microphone using Audacity, make sure the microphone is plugged in. Make sure in the Sound Mixer (icon) that the microphone is not muted and that the levels are set appropriately.
  • In PulseAudio Volume Control, select the device that will be the input.
Menu -> Multimedia -> PulseAudio Volume Control -> Input Devices -> Show: All Input Devices
-> Internal Analog Audio Stereo: Port: Analog microphone

Of course, you should use the device you wish to use here. You can also select the Monitor of Internal Analog Audio Stereo device, which will use as an input to the recording/capture application whatever happens to be playing through the sound card (except for hardware inputs).

  • Start Audacity (or other recording application). Make sure (in Audacity) that the Devices toolbar is visible:
Menu -> Multimedia -> Audacity -> View -> Toolbars -> Device Toolbar (ticked)

Assuming you are using ALSA, make sure ALSA is selected, and that pulse is selected for both the output and microphone input on the Device Toolbar. Start recording.

  • Start PulseAudio Volume Control. Under the Recording tab, you should see Audacity listed as "ALSA plugin: [audacity]: ALSA Capture from: Internal Audio Analog Stereo. If it isn't, then select it. (This is the tricky part that took me a long time to discover.)

Airport Express

Airport Express with Pulse Audio

Audio output can be streamed over your local network to an Airport Express. These capabilities require pulseaudio-module-zeroconf (for the Zeroconf/Bonjour networking protocol) and pulseaudio-module-raop (for Airport Express).

  • Install PulseAudio:
sudo apt-get install pulseaudio
Reboot to finish the installation.
  • Select PulseAudio as the output device in
Menu -> System -> System Settings -> Multimedia -> Device Preference
and move "Playback/recording through the PulseAudio sound server" to the top of every category (or at least the ones for which you wish to use PulseAudio).
  • Test some audio (e.g. playback through Amarok) to make sure the PulseAudio system is working. Some applications specifically require that the PulseAudio output is specified in their configuration settings, and some applications require a separate PulseAudio plugin to function properly.
  • Install additional modules in order to use Bonjour/Zeroconf and raop (Airport Express output):
sudo apt-get install pulseaudio-module-zeroconf pulseaudio-module-raop
  • Install utilities to control the preferences and volume of various PulseAudio devices:
sudo apt-get install paprefs pavucontrol
  • Enable discovery of the Airport Express by PulseAudio:
Menu -> Settings -> PulseAudio Preferences (Sound Audio preferences) -> Network Access

and check both:

Make discoverable network sound devices available locally
Make discoverable Apple Airtunes devices available locally
  • It is not clear to me which ports need to remain unblocked in order for Bonjour/Zeroconf and mDNS to discover the AEx. mDNS and Bonjour/Zeroconf use ports 5353, 5000, and 6000. (The PulseAudio server uses port 4713.) However, even when I unblock these the AEx doesn't seem to be able to be discovered until I turn off the firewall completely. (Once the AEx is discovered I turn the firewall back on and then have no other problems). I usually just add the IP address of the Airport Express on the LAN to the list of firewall-allowed connections. (Doing this still doesn't allow it to be discovered, though, for unclear reasons. Still, as long as a connection to the IP address of the AEx is allowed, I can turn the firewall back immediately after the AEx is located by the Zeroconf discovery and everything continues to stream fine.)
  • If your LAN's router allows traffic-shaping (QoS prioritization), giving priority to the traffic to/from the Airport Express can improve performance. Finally, be aware that screensavers can interrupt uninterrupted smooth audio output from a PC. If traffic to the AEx becomes choppy, disable your screensaver.
  • Open PulseAudio Volume Control:
Menu -> Multimedia -> PulseAudio Volume Control
  • If the AEx has been successfully discovered (the firewall may have to be turned off temporarily in order for the AEx to be discovered) the name of the AEx should show up as an Output Device:
PulseAudio Volume Control -> Output Device -> My AEx Name
If desired, the AEx can be set as the default "fallback" output device to always be used:
PulseAudio Volume Control -> Output Device -> My AEx Name -> click "Set as fallback" icon
If it is not set as the default fallback output device, it must be manually selected as an output device each time.
  • Start the application (such as Amarok or Audacious). To manually select which output device should be used, open PulseAudio Volume Control and choose the Playback output device for the application:
PulseAudio Volume Control -> Playback -> ALSA plugin [Amarok]: ALSA Playback on: -> My AEx Name
  • The output volume (for any of the output devices) can be set:
PulseAudio Volume Control -> Output Device -> My AEx Name

This was my old method. It works, but is probably unnecessary (and loads a lot of additional modules).

  • Install padvechooser (which also install paman, pavumeter, and paprefs):
sudo apt-get install padevchooser
  • Padevchooser is an applet for the taskbar panel. The PulseAudio Manager is accessible through the applet. Start Manager:
Menu -> Multimedia -> PulseAudio Device Chooser -> Manager -> Devices -> Sinks
  • Select the Airport Express as the output device ("sink"):

My AEx is discovered, but I got no sound through it until I selected it as the default sink (output) by one of two methods:

  • From the PulseAudio Device Chooser:
Menu -> Multimedia -> PulseAudio Device Chooser -> Manager -> Devices -> Sinks
I then noted the name of my Airport Express device to be raop.Base-Station-e60157.local, so I entered that as the sink:
PulseAudio Device Chooser -> Default sink -> Other -> raop.Base-Station-e60157.local

raop-client (Airport Express streaming)

Another method to stream audio to the Airport Express uses raop-client, a tool written in Ruby. See information here.

GSTransmit (Airport Express streaming)

GSTransmit is a tool to allow GStreamer-based utilities to stream output to an Apple AirTunes Device (such as the Airport Express). It is available as a self-installing .deb file from the website.

Airfoil (Airport Express streaming)

You can stream media from a PC running Windows or Mac OS X connected to an Airport Express network to your (K)Ubuntu Linux desktop, using Airfoil. (Unfortunately you cannot send media output from (K)Ubuntu to the Airport Express network with Airfoil, only receive.) This can be useful in a distributed multimedia system, for example, in which your (K)Ubuntu PC is connected to a media center. You must be running Mono. You can download the .deb package at Rogue Amoeba. Installation instructions are at Rogue Amoeba Linux support.


Activate side-mouse-buttons in FireFox

Adding two lines to xorg.conf will activate side-mouse-buttons in FireFox.

  • This should work with most brands of the 5-button mouse. Here is a list of mice that worked with this instruction.
Logitech MX310
Logitech MX510
Logitech MX518
Logitech MX700
Logitech MX Revolution
Intellimouse Explorer (first edition)
Razer Copperhead
  • Backup X.org configuration file
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
  • Modify the X.org configuration file
kdesu kate /etc/X11/xorg.conf
  • Find the Input Device section for your mouse and add two lines as shown below.
  • You may also increase the number of buttons if your mouse has more than 7 -- just fix the rest of the section based upon the number of buttons.
Note: "back/forward", "wheel click" & "tilt left/right" all count as buttons
  • Change:
Section "InputDevice"
 Identifier "Configured Mouse"
 Driver "mouse"
 Option "CorePointer"
 Option "Device" "/dev/input/mice"
 Option "Protocol" "ExplorerPS/2"
 Option "ZAxisMapping" "4 5" 
 Option "Emulate3Buttons"       "true"
Section "InputDevice"
 Identifier "Configured Mouse"
 Driver "mouse"
 Option "CorePointer"
 Option "Device" "/dev/input/mice"
 Option "Protocol" "ExplorerPS/2"
 Option "ZAxisMapping" "4 5"
 Option "Emulate3Buttons" "true"
 Option "Buttons" "7"
 Option "ButtonMapping" "1 2 3 6 7"


For Synaptics Touchpads:

sudo apt-get install gsynaptics

For more info, see the Ubuntu help wiki.

Wacom Pen Tablets

Support for the Wacom pen tablet is integrated into Jaunty by default, including for hotplugging. For more info, see the Ubuntu documentation.

Fingerprint Readers

Remote Controls

LIRC (Infrared Remote Controls)

LIRC (Linux Infrared Control) allows you to use most infra-red remote controls. This can be installed from Menu -> Applications -> Ubuntu Software Center -> System -> lirc

sudo apt-get install lirc

Remuco (Bluetooth and WiFi Remote Controls)

Remuco is a utility for controlling many multimedia players (such as VLC, Amarok, Rhythmbox, Audacious, and many others) using a Bluetooth or WiFi remote control. Each player has its own package. For example, the VLC package is named remuco-vlc and can be installed:

sudo apt-get install remuco-vlc


BlueZ is the package that allows Bluetooth connectivity in Ubuntu Linux. This package is included within the current kernel of Ubuntu. To add utilities to check whether your Bluetooth adapter's firmware is current, install:

sudo apt-get install bluez-utils bluez-firmware

then run

sudo dfutool


The Wiimote (Wii Remote Control) uses both Bluetooth and Infra-red technology. It communicates with Ubuntu Linux using the incorporated BlueZ Bluetooth drivers and/or LIRC drivers. (It can function with Bluetooth alone, however.) You will need a Bluetooth receiver on your PC (such as a Bluetooth USB stick or built-in Bluetooth receiver, for example). (Note: not all Bluetooth receivers will work with the Bluez drivers. Check this list or test yours first.)

  • Install the cwiid Wiimote controller package and the lswm Wiimote discovery package:
sudo apt-get install wminput lswm
  • Install the drivers (or just reboot):
modprobe uinput
Note: You can also add uinput to the modules files so it loads automatically at bootup:
sudo echo "uinput" >>/etc/modules

Run (while pressing button 1/2 on the Wiimote):

sudo wminput

For more info, and to learn how to enable the infra-red functions, see this guide.


Wireless Cards

Atheros Cards

Atheros Wireless cards should work automatically with the new kernel by installing the proprietary driver. At installation, after the first reboot, you will be prompted whether to use the proprietary drivers.

It should no longer be necessary to install the following package:

sudo apt-get install madwifi-tools 

These instructions for the Atheros 802.11 b/g integrated card are here for reference only (or if you wish to install them manually instead):

  • Extract the files
  • Make sure your linux headers and build-essential packages are installed:
sudo apt-get install build-essential
sudo apt-get install linux-headers-$(uname -r)
  • Unload any drivers already running.
sudo ifconfig ath0 down
sudo ifconfig wifi0 down
  • Change to the directory where you extracted the driver.
cd <directory_where_driver_unzipped>
  • From that directory, run the installation scripts:
cd scripts
sudo ./madwifi-unload
sudo ./find-madwifi-modules.sh $(uname -r)
cd ..
  • Complete the installation by compiling the source and installing it.
sudo make
sudo make install
  • Add the installed drivers to your system.
sudo modprobe ath_pci

Following this, Network Manager was able to see the wireless card and I was able to configure everything else (WEP / WPA key, etc.) from there.

Complete instructions are available at MadWifi UserDocs.

Atheros AR242x

Alternate instructions for installing the Atheros AR242x card are here.


3G protocols allow wide area cellular communications that include not only cellphone voice transmission but also integrated broadband internet connections. This can be integrated into a single device, or communications can be received through an EVDO adapter. Examples of 3G radio interfaces include Mobile WiMax, CDMA-2000, TD-CDMA, EDGE, and DECT. For info using 3G with the Ubuntu Network Manager, see this page. For additional info on using 3G with Ubuntu, see this guide.


he220r1 is a (K)ubuntu driver package for the Huawei e220 USB modem. It has also been found to work with other 3G devices, such as Nokia, Sony Ericsson, and Motorola. See the website for download and installation instructions.

T-Mobile Option 225 (Web'N'Walk) Stick

This website offers a driver optimised for the T-Mobile Web'n'Walk Stick/Option 225.

Virgin Huawei e169

See this Ubuntu forum solution:

sudo gedit /etc/ppp/options

find the line that says:


and uncomment it (delete #)


this (I think) disables CHAP authentication

I also had to change the APN to VirginBroadband instead of VirginInternet which was the default, and now it's happy.

Other settings
Number *99#
Uname <your virgin username>
PW <your virgin password>

EVDO Cards

EVDO cards include USB modems and adapters to receive wide-area cellular broadband Internet connections.


Sprint EVDO cards can be used most easily through KPPP. For instructions, read the Sprint Mobile Broadband Setup Guide. Also see the EVDO Forums.


See this Crystal Networking guide.

Tethering your PC to your Verizon cell phone

This is a per-minute plan in which you can use Verizon broadband services through your cell phone (such as the Motorola RAZR) connected to your PC via a USB cable. See this guide.

Digital Cameras

  • Plug in your digital camera to the USB port using the appropriate cord and make sure the camera is turned on.
  • It may be necessary to adjust the settings of the camera (and to be sure it is properly recognised):
K Menu -> Settings -> System Settings -> Digital Camera
  • To access the camera as a folder using the Dolphin file manager, see this section.


See the Ubuntu webcam guide for more info. Many webcams that worked in Hardy Heron may not work in Intrepid Ibex. This may be due to a migration from v4l (video for Linux) to v4l2. See this discussion.


EasyCam2 is a utility for finding and installing drivers for your webcam. See these installation instructions.


Linux drivers for the digital iSight camera (connected by FireWire), using ALSA for sound, are here. The video component is already supported by current kernels (see here for more information).

Luvcview (USB webcam viewer)

Luvcview can be used to view your USB webcam to test it. Install:

sudo apt-get install luvcview

View your webcam:

luvcview -f yuv


Kubuntu can be installed on netbooks. The KDE Netbook Remix is included by default (as an option) in a standard installation of Kubuntu.

  • Select the KDE Netbook Remix user interface:
K Menu -> System -> System Settings -> Workspace Behavior -> Workspace -> Workspace Type: Netbook

Installing Kubuntu on Netbooks with an existing OS

  • If you already have Ubuntu Netbook Remix (or eeebuntu Netbook Remix) installed, you can choose to add the Kubuntu (KDE) desktop. Then select the Netbook workspace as above.
sudo apt-get install kubuntu-desktop

Several netbooks have OEM versions of Ubuntu Netbook Remix installed.

  • Asus eeePC 1000H
  • Reduce font size one or two sizes, and set the screen DPI to 120.
  • eeebuntu Netbook Remix is available for this device.
  • Acer Aspire One
  • Dell Mini 9
  • Ubuntu Netbook Remix runs on this device well. See this guide.
  • HP Mini 1000 Mi
  • A custom edition of Ubuntu is pre-installed on this version of this device.
  • See this this page for extensive laptop and netbook compatibility reviews.


Mobile Devices

Ubuntu Linux offers an operating system for Mobile Devices (such as the Samsung Q1 Ultra or Elektrobit MIMD) with a unique and simplified interface. For more information see the Ubuntu MID Edition site.

MP3 / Video Players

Sansa Fuze

The Sansa Fuze is a very high quality MP3 audio as well as video player. It is recognized by default as a USB device in Ubuntu/Kubuntu. To convert videos into a format that can be copied to the player, use Video4Fuze.

  • Download and install:
wget http://video4fuze.googlecode.com/files/fuzemux-0.1_amd64.deb
wget http://video4fuze.googlecode.com/files/video4fuze-0.6_all.deb
sudo dpkg -i fuzemux-0.1_amd64.deb
sudo dpkg -i video4fuze-0.6_all.deb
Use fuzemux-0,1_i386 instead of fuzemux-0.1_amd64.deb if using a 32-bit OS.
  • Start video4fuze from the command line:

or create a menu item with the Command: video4fuze.

  • Convert files (mpg or mp4) using Video4Fuze. Do not use the Sansa Fuze player as the output folder, but use an output folder on your computer. Once the files have been converted, then copy them directly to a Video folder on the Sansa Fuze (using Nautilus in Ubuntu or Dolphin in Kubuntu).
  • I like k9copy to extract something (that I have saved) on a DVD to an mp4 (.avi) first. The Sansa Fuze likes video at 224 x 176 and DivX 4/5, so I extract to those specifications:
Menu -> Multimedia -> k9copy -> Input: DVD -> Output: MPEG-4 encoding -> folder icon: /home/user/Videos
k9configure -> MPEG-4 -> Video -> Codec: MPEG-4 (DivX 4/5) -> Width: 224 -> Height: 176
-> Audio: mp3 (lame) -> Bitrate: 128

I then use video4fuze to convert the extracted mp4 (.avi) into the format that the Sansa Fuze likes.

  • Limitations: At this time Flash videos (.flv) cannot be converted directly by Video4Fuze. You must convert flash videos to another format (such as .mpg or mp4/.avi) prior to Video4Fuze conversion, using a converter such as mencoder or ffmpeg (e.g. with WinFF as the GUI).

MachSpeed Trio

The MachSpeed Trio works natively with (K)Ubuntu Linux. Files can be copied directly to the device from a File Manager (Dolphin or Nautilus).

  • Video formats include .mpg, .flv and .avi. However, the screen is 7.5 cm x 4 cm, which is a 1.875 ratio (widescreen). If your video has a 1.33 ratio (fullscreen), you must add left and right padding to make it look normal. If your video is 320 x 240, for example, you must add left and right padding of 64 each (making it 448 x 240, which is approximately a 1.875 ratio).
In addition, I found I had to convert some videos twice (using ffmpeg) to get it into a format the Trio would accept. For example, I have a 160x120 .avi video I recorded on my camera. (This requires 32 padding on each side instead of 64.) There was a 2 step conversion required to get it into a format the Trio liked:
ffmpeg -i cameravideo.avi -target ntsc-dvd -s 160x120 tempvideo.avi
ffmpeg -i tempvideo.avi -padleft 32 -padright 32 triovideo.avi
The first step does whatever it takes to get the video into a NTSC-compatible format. However, it encodes into the ac3 audio codec, which the Trio doesn't like. The second step converts the audio from the ac3 format to the default mp2 audio format (which the Trio likes better) as well as adds the padding (which in reality can be done in either step). I have tried to simplify this into a single command but haven't figured out how to do it yet.
I then copy the converted file directly onto the Trio, where it plays.

Speech Recognition

For more info see the Ubuntu Wiki -- Speech recognition. Integrated voice recognition is an ongoing project; accumulated information is available at VoxForge.

  • Julius -- open source continuous speech recognition / grammar engine (Japanese only -- does not have an English acoustic module currently). Install:
sudo apt-get install julius julius-voxforge
  • CMU Sphinx -- open source voice recognition software. Install:
sudo apt-get install sphinx2-bin sphinxbase-utils pocketsphinx-utils 

Apps using voice recognition (also see this list):

Personal tools