ASUS Eee PC 1000

From ArchWiki
Revision as of 21:23, 2 February 2009 by Kleverness (Talk | contribs) (Installation)

Jump to: navigation, search

Tango-document-new.pngThis article is a stub.Tango-document-new.png

Notes: please use the first argument of the template to provide more detailed indications. (Discuss in Talk:ASUS Eee PC 1000#)

Introduction

For now, this is just some notes on the Asus EeePC 1000. The difference between the 1000 and the 901 are more subtle than just the screen size.

For more information, see other pages:

Asus_Eee_PC_901

Installing_Arch_Linux_on_the_Asus_EEE_PC

Asus_Eee_PC

Asus_Eee_PC_900A

Array.org EeePC Ubuntu Repository

Installation

This installation guide assumes you're using Arch 2008.06 core USB image as the installation method. This release doesn't currently have support for the wired nor wireless devices. Also, the wireless module does not compile with the kernel provided with the 2008.06 release so the idea is to setup a wired connection, update the system and the setup the wireless module. So to begin please follow the Beginners_Guide up to the point were you are asked to configure your network (after you have FINISH the installation and prior to configure pacman and update the system). Afterwards, to get wired connection support do the following:

1. Grab the unrar and unzip packages from a mirror of your choice.

2. Get the atl1e ethernet package from AUR (http://aur.archlinux.org/packages.php?ID=18663). You'll need the tarball: atl1e.tar.gz and also the source: LinuxDrivers.zip.

3. Uncompress the tarball and move the source zip inside that directory. Modify the atl1e's PKGBUILD so the source line:

source=(http://dlcdnet.asus.com/pub/ASUS/mb/socket775/P5KPL-CM/LinuxDrivers.zip)

is replaced by this one:

source=(LinuxDrivers.zip)

This way you'll use your local source instead of trying to download the package (impossible because you have no connection at this time).

4. Copy everything (unrar, unzip and the uncompressed folder containing the modified PKGBUILD and the source zip) to a USB key.

5. Mount it to your EEE 1000, install unzip and unrar. Then build and install the AUR package.

Now you should be able to configure a wired connection. Finally continue following the Beginners_Guide guide from the "Configuring the network (if necessary)" section to setup the Ethernet connection and update your system. After updating, read the following section to get Wireless support.

Wireless

The card is a RaLink RT2860. The driver is not in kernel yet (current is 2.6.28), so you need to compile it yourself from AUR: rt2860. BUT, in the PKGBUILD, the last line looks like this:

install -D -m 755 rt2860sta.ko $startdir/pkg/lib/modules/$(uname -r)/kernel/drivers/net/wireless/rt2860.ko

You will need to add "sta" at the end:

install -D -m 755 rt2860sta.ko $startdir/pkg/lib/modules/$(uname -r)/kernel/drivers/net/wireless/rt2860sta.ko

Else you won't be able to remove the module (neither modprobe -r rt2860sta nor modprobe -r rt2860 will work).

Wireless connection has been tested by me (big_gie) and works with netcfg (2.1.2-1), wicd (1.5.6-1) and Networkmanager_0.7(0.7.0-1) with unencrypted and WPA. Note that with my router (Dlink DIR-615) I had to disable completely WPA2 and AES. So I need to use exclusively WPA with TKIP.

Xorg

Here is a working xorg.conf file. Note that it is minimal. Almost everything should be automatically configured.

Section "ServerLayout"
   Identifier	"ArchLinux"
   Screen	 0 "Screen0"
EndSection

Section "Device"
   Identifier  "IntelCard"
   Driver      "intel"
   VendorName  "Intel Corporation"
   BoardName   "Mobile 945GME Express Integrated Graphics Controller"
   BusID       "PCI:0:2:0"
EndSection

Section "Monitor"
   Identifier   "Monitor0"
   VendorName   "ASUS"
   ModelName    "eeePC 1000"
   Modeline     "1024x600"  48.96 1024 1064 1168 1312 600 601 604 622 -HSync +Vsync # 60 Hz
EndSection

Section "Screen"
   Identifier "Screen0"
   Device     "IntelCard"
   Monitor    "Monitor0"
   DefaultDepth     24
   SubSection "Display"
       Viewport   0 0
       Depth     8
   EndSubSection
   SubSection "Display"
       Viewport   0 0
       Depth     15
   EndSubSection
   SubSection "Display"
       Viewport   0 0
       Depth     16
   EndSubSection
   SubSection "Display"
       Viewport   0 0
       Depth     24
       #Virtual   2048 2048
       Virtual 1680 1050
   EndSubSection
EndSection

Touchpad

If you don't do anything, the touchpad should be configured to use the evdev driver. With evdev, everything seems to work out of the box: I can use two fingers to scroll for example. The only thing is that you cannot disable the touchpad.

If you want to be able to disable the touchpad, force it to use the synpatics driver. Create this fdi file: /etc/hal/fdi/policy/11-synaptic-options.fdi

<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
 <device>
   <match key="info.product" contains="ETPS/2 Elantech Touchpad">
     <merge key="input.x11_driver" type="string">synaptics</merge>
     <merge key="input.x11_options.SHMConfig" type="string">on</merge>
     <merge key="input.x11_options.MaxSpeed" type="string">1.00</merge>
     <merge key="input.x11_options.MinSpeed" type="string">0.75</merge>
     <merge key="input.x11_options.Emulate3Buttons" type="string">on</merge>
     <merge key="input.x11_options.VertTwoFingerScroll" type="string">1</merge>
     <merge key="input.x11_options.HorizTwoFingerScroll" type="string">1</merge>
     <merge key="input.x11_options.TapButton1" type="string">1</merge>
     <merge key="input.x11_options.TapButton2" type="string">2</merge>
     <merge key="input.x11_options.TapButton3" type="string">3</merge>
     <merge key="input.x11_options.LockedDrags" type="string">1</merge>
   </match>
 </device>
</deviceinfo>

After an hour of use, I can say that the touchpad does not react the same as with the evdev driver. It seems "jumpy" and not as precise as with evdev. It is still usable though!

ACPI

Be sure to load the kernel module "eeepc_laptop" to get acpi events. The 1000 does not send the same events as the 901.

I (big_gie) created a new acpi package to support the 1000 acpi events: acpi-eeepc-generic. This package was inspired by many others:

If you look up "eee" on AUR, you'll find a dozen or so packages. I inspired myself from them to create a generic one. It only support the 1000 for the moment, but it should only be a matter of copying the file "acpi-eeepc-1000-events.conf" to "acpi-eeepc-901-events.conf" for example to support a new model.

For the events created by the 1000, see the file "acpi-eeepc-1000-events.conf".

Notes

Sleep

Fn+F1 or closing lid should put the 1000 to sleep. It calls "acpi-eeepc-generic-suspend2ram.sh".

Wifi

Pressing Fn+F2 will call "acpi-eeepc-generic-wifi-toggle.sh" which will toggle the wireless card. Be sure to load "rfkill" module for this to work.

Brightness

Note that the brightness codes depends on the actual brightness level. If at the darker, lower level (00000020) and the "brithness up" button is push, the next level event is generated (00000021). If the button is pushed again, again the next level is generated (00000022) until full brightness is reached (0000002f). So basically, the ACPI event generated depends on the actual level.

Kernel

I removed almost everything unneeded for the 1000. The rest has been compiled in, so it boots faster. I saw some speedup compared to the -ARCH stock kernel.

My config file for custom kernel 2.6.27.10: http://pastebin.com/f1f7d6c42.

My config file for custom kernel 2.6.28.2: http://pastebin.com/f32e1c5d3.

Software

Don't bother installing KDE or Gnome on it. The screen might be bigger then the 901, but it's still a small machine.

LXDE

I suggest LXDE for a _really_ lightweigth environment. It looks like Windows initially but you can configure as you like:

pacman -S lxde

XFCE

Xfce is still small enough to run on the 1000. Version 4.6 is not out yet, but there is some precompiled packages available from a forum user:

pacman -S xfce4-svn xfce4-goodies-svn

KWin

Because of the compiz problem, I tried kwin instead for its desktop effects and it is way more stable. No problem at all, and it is fast. Kwin is part of "kdebase-workspace" package:

pacman -S kdebase-workspace

Also in kdebase-workspace is "systemsetting". You can configure kwin from it. Just launch it, go in "Desktop" and configure the effects. You don't need to install the whole KDE. Launch kwin with:

kwin --replace

Hardware

lspci

00:00.0 Host bridge: Intel Corporation Mobile 945GME Express Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GME Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)
01:00.0 Network controller: RaLink RT2860
04:00.0 Ethernet controller: Attansic Technology Corp. L1e Gigabit Ethernet Adapter (rev b0)

lsusb

Bus 001 Device 002: ID 04f2:b071 Chicony Electronics Co., Ltd
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Problems

Compiz

Compiz is running nice with the 1000: it is a great addition in usability because of the small screen. But I do have one problem. If I open to many windows, their content doesn't get drawn. If I look at X's log file, I have plenty of:

__glXDRIbindTexImage: Failed to register texture offset override

This is using kernel 2.6.28, xorg-server 1.5.3-4, mesa 7.2-1, xf86-video-intel 2.5.99.1-1. Any suggestion would be appreciated.

Solution

If I launch compiz using "compiz-manager", then the problem does not seems to occur:

$ sudo pacman -S compiz-manager
$ compiz-manager
Checking for Xgl: not present. 
Detected PCI ID for VGA: 00:02.0 0300: 8086:27ae (rev 03) (prog-if 00 [VGA controller])
Checking for texture_from_pixmap: not present. 
Trying again with indirect rendering:
Checking for texture_from_pixmap: present. 
Checking for non power of two support: present. 
Checking for Composite extension: present. 
Comparing resolution (1024x600) to maximum 3D texture size (2048):  Passed.
Checking for nVidia: not present. 
Checking for FBConfig: present. 
Checking for Xgl: not present. 
Starting emerald
/usr/bin/compiz (core) - Error: Plugin 'text' not loaded.

/usr/bin/compiz (thumbnail) - Warn: No compatible text plugin found.