Introduction

How to get your ASUS U36SD running Ubuntu GNU/Linux.

Compatibility

Function

11.04

11.10

12.04

13.04

13.10

14.04

Audio (out-, in-ports, speaker, microphone)

YES

YES

YES

YES

YES

YES

Graphics (without desktop effects)

YES

YES

YES

N/A

N/A

YES

Graphics (with desktop effects)

WIP

WIP

WIP

WIP

WIP

YES

High-end Graphics card

WIP

WIP

WIP

WIP

WIP

YES

VGA port

YES

YES

YES

N/A

YES

YES

Dualmonitor setup

N/A

N/A

WIP

N/A

YES

YES

HDMI

YES

YES

YES

YES

N/A

YES

USB 2.0

YES

YES

YES

YES

YES

YES

USB 3.0

WIP

YES

YES

YES

YES

YES

Bluetooth

WIP

WIP

WIP

YES

YES

YES

Card reader

YES

YES

YES

N/A

YES

YES

LCD keys (Fn-F5,Fn-F6,Fn-F7)

YES

YES

YES

N/A

YES

YES

Display output switch (Fn-F8)

YES

YES

YES

N/A

YES

YES

Touchpad toggle (Fn-F9)

NO

NO

YES

YES

WIP

YES

Multimedia keys

WIP

WIP

YES

N/A

N/A

YES

Suspend / Hibernate

WIP

WIP

YES *[1]

N/A

N/A

YES

Multi-touch touchpad

YES

YES

YES

YES

YES

YES

Full battery time

WIP

WIP

WIP

N/A

WIP

WIP

Webcam issue

WIP

WIP

WIP

N/A

N/A

WIP

Fingerprint reader#

NO

NO

N/A

N/A

N/A

N/A

  • YES - Works out of the box
  • WIP - Works or works partly with some tweaking
  • NO - No known fix (so far)
  • N/A - Not tested
  • # just some U36SD models

*[1] Works out of the box from 3.2.0-25-generic. Suspend-fix is still needed for older kernels (see below for fix)

Tweaking

Desktop effects

Create a new file /etc/modprobe.d/blacklist-nvidia.conf with the following content. (You need super user privileges. See here for help.

blacklist nouveau
blacklist nvidia

Remove nvidia drivers (otherwise it's libGL.so will used by default) by running the following command

sudo apt-get purge nvidia-current

High end graphics card (Nvidia)

Since the laptop uses the so called Optimus technology, support for the high end graphics card is a bit limited. However, it is still possible to use it, by offloading a certain application (such as a game) to the nvidia card and then copying the content onto the Intel graphics buffer using VirtualGL.

One simple way of doing this is by installing Bumblebee. Simply call the following commands to install:

< 13.10

sudo add-apt-repository ppa:bumblebee/stable
sudo apt-get update
sudo apt-get install bumblebee bumblebee-nvidia
sudo usermod -a -G bumblebee $USER

13.10

sudo apt-get install bumblebee bumblebee-nvidia primus linux-headers-generic

Now log out, and then log in again.

To run programs making them use the nVidia card you need to use the command "optirun". For example to run "openarena" open a terminal and write "optirun openarena".

In case you want to use primus, invoke it with "optirun -b primus" instead.

14.04

Technically, both Intel and Nvidia graphic chips work out of the box in Ubuntu Trusty Tar (Unity) and the fancy desktop effects work all the same. However, in order to enable the new and better Nvidia Optimus support (PRIME), you first need to enable the proprietary driver (System Settings > Software Updates > Additional Drivers (rightmost tab). Select Using NVIDIA binary driver version 3XX.XX from nvidia-3XX (proprietary, tested). This will download and install the new drivers. Restart your machine for the changes to take effect. Upon restart,look for Nvidia X Server Settings (from the dash) - you should now see many more options in the left hand menu. In the PRIME Profiles, you can select which card you want to use. Once the Nvidia card is enabled, you can also set the graphics behavior in the card's menu item.

Suspend

< 13.10

Suspend doesn’t work out of the box because of a problem with the USB buses. To fix the problems do the following:

Create a new file /etc/pm/sleep.d/20_custom-asus-u36sd with the following content (you need to have administrative privileges to create it, see here for help.):

  • BUSES="0000:00:1a.0 0000:00:1d.0"
    XHCIBUSES="0000:04:00.0"
    
    case "${1}" in
        hibernate|suspend)
            # Switch USB buses off
            for bus in $BUSES; do
                echo -n $bus | tee /sys/bus/pci/drivers/ehci_hcd/unbind
            done
            for bus in $XHCIBUSES; do
                echo -n $bus | tee /sys/bus/pci/drivers/xhci_hcd/unbind
            done
            ;;
        resume|thaw)
            # Switch USB buses back on
            for bus in $BUSES; do
                echo -n $bus | tee /sys/bus/pci/drivers/ehci_hcd/bind
            done
            for bus in $XHCIBUSES; do
                echo -n $bus | tee /sys/bus/pci/drivers/xhci_hcd/bind
            done
            ;;
    esac

Make it executable:

sudo chmod +x /etc/pm/sleep.d/20_custom-asus-u36sd

This will make the suspending the computer work. Resume, however, will only work if you wait to trigger it around half a minute after suspending was completed. If you resume too early, the computer will do a hard reboot instead.

13.10

Nothing to be done, works out of the box.

Fn-keys

< 11.10

Download and install asus-nb-wmi driver (included in 2.6.39, but since Natty runs 2.6.38 need to build it ourselves):

sudo apt-get install git build-essential
git clone git://git.iksaif.net/acpi4asus-dkms.git
cd acpi4asus-dkms
make
sudo make install
sudo modprobe asus-nb-wmi

>= 11.10

Nothing needs to be done unless you need the disable-touchpad (f9) functional. You may still do it manually via

synclient touchpadoff=1
synclient touchpadoff=0

Bluetooth

< 13.10

The ath3k module in Ubuntu 11.04 doesn't manage to detect the Bluetooth device because it doesn't contain the identification numbers, so one need specify it manually. To do so do the following.

Get a super user shell.

sudo -s -H

Enter the following commands. Ignore the errors from rmmod if any.

service bluetooth stop
rmmod btusb
rmmod ath3k
modprobe -a ath3k
echo "13d3 3304" > /sys/bus/usb/drivers/ath3k/new_id
modprobe btusb
service bluetooth start
exit

If it still doesn't work, try running the following command.

sudo hciconfig hci0 up

13.10

Nothing to be done, works out of the box.

USB 3.0

11.10

Edit the startup options:

gksu gedit /etc/default/grub

Find the line:

  • GRUB_CMDLINE_LINUX_DEFAULT

and add the following within the quotation marks, being sure to separate it with a space from any other entries:

  • pci=nomsi,noaer

at last run

sudo update-grub

and on the next reboot the USB 3.0 port should work.

13.10

Nothing to be done, works.

Battery time

There are two easy things that can double your battery time.

Intel integrated graphics card power management

Open the file /etc/default/grub with super user privileges (See here for instructions).

Find this line:

  • GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

and change it into this:

  • GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.i915_enable_rc6=1"

then run the following command in a terminal:

sudo update-grub

High end graphics card (nvidia) power management

By default, the high end graphics card will be activated but not in use. You can decrease the battery usage by disabling it. Either you follow the instructions on how to enable the high end graphics card which will do this for you or you manually configure your system to use acpi_call directly to disable it.

powertop

You may use powertop to tune up/debug your power consumption/battery issues.

sudo apt-get install powertop

Webcam issue

to get the camera to not be upside-down in Skype:

sudo add-apt-repository ppa:libv4l
sudo apt-get update && sudo apt-get install libv4l-0

On Ubuntu 11.10 you must install the 32 bits version of libc4l-0 for skype as it is available only in 32 bits in the packages repository:

sudo add-apt-repository ppa:libv4l
sudo apt-get update && sudo apt-get install libv4l-0:i386

then run your application with "LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so" in front of it. eg to run skype:

LD_PRELOAD=/usr/lib/i386-linux-gnu/libv4l/v4l1compat.so skype

Other issues

Splash

If you want more consistently looking (but possibly slower) boot, try the following.

Create a new file /etc/initramfs-tools/conf.d/splash with the following content. You need super user privileges to create it. See here for help.

FRAMEBUFFER=y

Then run

sudo update-initramfs -u

Touchpad middle click

This enables middle click on touchpad (three fingers tap):

synclient TapButton3=2

More info is here: http://askubuntu.com/a/132548

Touchpad horizontal scrolling

Gets enabled easily by

synclient HorizTwoFingerScroll=1

More info here: http://askubuntu.com/questions/264091/enable-horizontal-scrolling-in-ubuntu-13-04-and-13-10

Disable touchpad while typing

This will make the trick:

syndaemon -i 1 -d -t -K

There is a "Disable touchpad while typing" option in the Mouse and Touchpad settings menu (Xfce), but do NOT use it, since it is unusable due to the default too-long delay - see here https://bugs.launchpad.net/ubuntu/+source/xfce4-settings/+bug/1045758/comments/3 for more info.

Hard Drive Power Management

When running on battery, the default hard drive power saving setting causes the drive heads to continuously park and then ramp up again. This results in a quiet "clicking" sound approximately every five seconds. You can adjust this setting by using hdparm to disable power management or to set it to the least aggressive setting (in the latter case, it will still park the heads though far less often). To do so, open a terminal and type:

sudo gedit /etc/hdparm.conf

Add the following lines (Note: use 255 to disable or 254 to set to the least aggressive setting):

/dev/sda {
    apm = 254
    apm_battery = 254
}

For this to apply after resuming from suspend:

sudo gedit /etc/pm/sleep.d/51_hdparm-settings

Enter this in the empty text file:

case $1 in
    hibernate)
        echo "A hook to restore hdparm value on resume"
        ;;
    suspend)
        echo "A hook to restore hdparm settings at resume."
        ;;
    thaw)
        hdparm -B 254 /dev/sda
        ;;
    resume)
        hdparm -B 254 /dev/sda
        ;;
    *)  echo "somebody is calling me totally wrong."
        ;;
esac

Save and quit. Make it executable:

sudo chmod +x /etc/pm/sleep.d/51_hdparm-settings

Reboot to apply.

Dualmonitor setup

12.04

To turn on secondary display on VGA:

xrandr --output LVDS1 --auto --output VGA1 --auto --right-of LVDS1

To use just the laptop primary display:

xrandr --output LVDS1 --auto --output VGA1 --off

13.10

Nothing to be done, works out of the box, even via Fn+F8.

Xubuntu 13.10 specific issues

sound indicator bug

The solution for the malfunctioning sound icon in the indicator plugin area (top panel by default) is here: http://askubuntu.com/a/360840

Tips

Creating a file where super user permissions are required

How to edit/create a file /etc/example_file.

Using graphical editor

gksu gedit /etc/example_file

Using a simple console based editor

sudo nano /etc/example_file

Reported minor issues

  • 'Jumpy' two-finger scroll

Links

Asus_U36SD (last edited 2014-11-13 16:59:35 by 37-219-154-200)