Linux on Laptops

Sponsored by LinuxCertified Inc.

Home | New | Models | Components | Discussion | Submit        


   Mandriva Linux 2006 on the Acer Travelmate 243XC

The Acer Travelmate 243XC is part of the Travelmate 240/250 series and thereby I expect this information to be at least partially applying to other variations of the model family.

The available hardware resources are as follows:

Installation

The installation shouldn't be a problem. You can access the Laptop's BIOS by pressing F2 during the Acer splash screen after powering on to change the boot order. However, make sure you configure the X11 server at the end of the configuration because else the startup will fail at your first boot.
If you missed to configure it, switch to a console (Alt+F1-F6), login as root and run drakconf. Configure the X11 server in the "Display" category and exit. Afterwards, run service dm restart.


Configuring the hardware

The good thing is that everything is already in a usable state, thereby with very little effort it is possible to get a full-featured Linux environment on this machine, what makes it deserve to be called "compatible" ;).
However, you might want to dig a bit more to get certain features to work. I'll go through the hardware and give you my recommendations as well as alternatives.


The graphics

Just using harddrake's default setup for the card already gives us hardware accelerated 3D using DRI, so at least we won't have to take care of that.
You can safely choose 1024x768 in 24-bit color as your desktop resolution. You can also set the framebuffer mode to 1024x768 at 15-bit in /etc/lilo.conf. Just change vga=*** to vga=791. You can also use MCC.

However, it took me some time to figure out how to enable output on the external monitor.
The graphics controller will provide two PCI devices for output. Usually, the first one is the internal screen and the second one the external screen. But actually, the first one is the "default" screen. That means that when you power on the laptop with an external monitor plugged in, it will become the default device and the PCI devices' roles will switch.
Therefor I recommend you to unplug the external monitor whenever you turn on the laptop or reboot; else you would have to reconfigure every time.
Since I'm not a friend dual desktop setups but only use the external monitor as a mirror of my current desktop to watch movies or play games, I don't care for different resolutions/refresh rates but more about video acceleration.
Usually the second head would be used to clone the output of the first head. But this would disable double buffering, direct rendering and XVideo on the second head. Using one head for both outputs prevents this and works just as fine, but you won't be able to switch to a dual desktop layout anymore (heh, I don't care).

To fully clone the output to the external monitor, add a MonitorLayout line to the default device in the /etc/X11/xorg.conf:

Section "Device"
    Identifier "device1"
    VendorName "Intel Corp."
    BoardName "Intel 85x"
    Driver "i810"
    Screen 0
    BusID "PCI:0:2:0"
    Option "DPMS"
    Option "MonitorLayout" "CRT,LFP+CRT"
EndSection

Funny enough, this also works around the bug of having to switch to the console and back after a suspend-to-RAM/disk.


Sound


Harddrake will automatically choose the snd-intel8x0 module, which is perfect for our needs. Also, since Mandriva Linux 10.2 the dmix plugin will be enabled by default, so ALSA apps will make use of a software mixer. Unfortunately, this doesn't work with applications that use OSS, e.g. Skype or older games.
You can use the aoss wrapper script to route an OSS application's audio through ALSA. Just install aoss (sudo urpmi aoss) and launch applications like this:

aoss application

This would be aoss skype for Skype, aoss kphone for K-Phone, and so forth.
Sometimes this will fail with a segmentation fault or you'll only get noise (i.e. in Unreal Tournament). You could try updating your alsa-oss package to see if the application you want to run is supported by now, or use another wrapper tool. artsdsp and esddsp will route the output to the Arts or ESD sound server, but the latency and CPU usage is really bad. There's also soundwrapper, which will route to whatever sound server is currently in use (useful if you switch between KDE and Gnome). Oh, make sure you have enabled full-duplex in the sound server of your choice if you want to use it with Skype or another application where capturing is required.
There's also the rather new jack2oss which will route to the Jack sound server, but I haven't tried it yet. I use Jack for other things though, so I know that if you want to use it like this OSS->Jack->ALSA/dmix, you'll have to have Jack output at 48000 Hz, 16-bit, and a fragment size of 1024 frames. That's because Jack hates the ALSA default device and prefers HW: jacks.


Suspend


Suspending or moreover resuming your Laptop sure looks cool - if it works.  I will skip the telling you how dangerous the suspend feature is in it's current development state and just tell you what it will take to work.

First, yo need some -multimedia kernel. For our CPU (which is Pentium 4 based), I recommend the kernel-multimedia-i686-up-4GB, even should you have less RAM ;) because it's compiled with -march=i686 instead of -march=i586 as the other kernels are. The  multimedia kernel also contains some additonal low-latency patches from which many multimedia applications or games benefit.

Now install the suspend-script package (sudo urpmi suspend-scripts).

You can now suspend to disc with the command:

pmsuspend2

...and suspend to RAM with the command:

pmsuspend2 memory

KLaptop's or moreover KDE's ACPI helper's suspend to RAM seems to work, but suspend to disk will crash the ethernet controller's IRQ. I recommend you to only use pmsuspend2.

You might notice that after resuming from suspend state, the X server might only show garbage. This can be fixed by either switching to a console and then back to the X display, or by modifying the /etc/X11/xorg.conf file as I mentioned in the "Graphics" section previously.

Special Keys

This laptop has a variety of special keys, and it took me a long time to figure out how to use them although the solution is so simple! I tried KDE's keyboard layouts + KHotKeys and lineakd with the default configuration for one of the Travelmates, but nothing worked.
Now, I finally found out that there actually is a driver for the special keys on Acer laptops. This and lineakd will do the job.

First get the tarball from the author's site: http://www.informatik.hu-berlin.de/~tauber/acerhk/

The driver version I used as of writing this was 0.5.30. To install it you will need to have a C compiler installed (like gcc) and the kernel source. Install both with urpmi and return here (note the kernel source's name will be kernel-source for the stock kernel and  kernel-multimedia-source for the multimedia kernel and so forth - you can also use stripped versions).

Download and extract the tarball:

wget http://www.informatik.hu-berlin.de/~tauber/acerhk/archives/acerhk-0.5.30.tar.bz2
tar -xf acerhk-0.5.30.tar.bz2

Change to the source directory and read the README, exit with the q key and start compiling:

cd acerhk-0.5.30
less README
make

If the make command fails you are either missing the right kernel source or gcc.
Now gzip the module and copy it to the other kernel modules:

gzip acerhk.ko
sudo cp acerhk.ko.gz /lib/modules/`uname -r`/kernel/drivers/char/

Update module dependencies and load the acerhk module:

sudo depmod -a
sudo modprobe acerhk

The driver should be loaded and working now, but of course you have to make sure:

dmesg | grep Travelmate

Now that we are certain that everything is fine, we will arrange that the module is loaded every time you start your laptop.
Edit /etc/modprobe.preload in your favourite text editor and add the line acerhk.  Like this:

# /etc/modprobe.preload: kernel modules to load at boot time.
#
# This file should contain the names of kernel modules that are
# to be loaded at boot time, one per line.  Comments begin with
# a `#', and everything on the line after them are ignored.
# this file is for module-init-tools (kernel 2.5 and above) ONLY
# for old kernel use /etc/modules

mousedev
psmouse
pcspkr
dazuko
capability
hw_random
evdev
intel-agp
acerhk

Now that this is done, let's install lineakd and klineakdconfig to actually start using our special keys!

sudo urpmi lineakd klineakconfig

We will load the Travelmate 240's default lineak preset before running klineakconfig:

lineakd -c ACE-TM240
klineakconfig

Now configure all the special keys you like. Personally, my favourites are the volume control keys. But how do, you ask?

Install the alsa-tools package and you can use amixer to mute/unmute the sound as well as change the volume level.

You can modify your ~/.lineak/lineakd.conf or use klineakconfig and set the keys to the appropriate commands:

AudioLowerVolume = amixer set Master 10%-
AudioMute = amixer set Master togglemute
AudioRaiseVolume = amixer set Master 10%+

Now, another key I like is the Mail key. In case you ever took the opportunity to boot into your preinstalled OS before wiping the harddrive, you might have had the chance to check out the nice Mail Checker that comes with Acer's Laptop Manager. I can't live without a mail checker - my favourite one is KShowMail (mail-notification for Gnome isn't bad, too!). And you can even get it to activate the LED of your Mail key! Now, isn't that worth the effort ^^

Configure your mail checker to execute the following command when you get new mail:

echo on >> /proc/driver/acerhk/led

And configure lineakd to stop the LED again and start your E-Mail reader of choice. I use Thunderbird in this example of my lineakd.conf:

Mail = echo off >> /proc/driver/acerhk/led && mozilla-thunderbird

I know you like it :)

CD-ROM

No tinkering required, works with cdrecord/cdrdao/K3b and Nero Linux, and others too I suppose.

Touchpad

Works out of the box using Xorg's synaptics driver module.

IrDA


I tried to get this to work in LE2005 but failed. I recently tried again because I wanted to use LIRC but I yet lack to find someone who got IrDA to work on his Acer laptop. Weird thing is, there's more information on how to get a selfmade one to work.

PCMCIA/USB/Parallel

Work out of the box, no tinkering required :(
If you want to boot from an external USB storage media, make sure that legacy emulation is enabled in the BIOS. Otherwise you have to place the /boot partition on the internal harddrive and make sure that the usbstorage module is available at boot time (compiling it into the kernel wouldn't be a bad idea), else the kernel won't be able to mount the root filesystem. I didn't try this in a long time, last time was Mandriva 10.1. Possible that the module is now built into the kernel by default.

Ok this is it for now. In case some question is bugging you or you have some secrets you want to share with me,  send mail to squall38@gmx.de or catch me on ICQ, UIN is 289135008.




Cheap Laptop Rugged Laptop Case Gaming Laptop Lenovo Linux Laptop
Linux on Laptops is copyright © linux-on-laptops.com
Privacy Statement  Contact us at linuxonlaptops (at) gmail.com
  Advertise on linux-on-laptops.com

No Warranties: This information is provided "as is" without any warranty, condition, or representation of any kind, either express or implied, including but not limited to, any warranty respecting non-infringement, and the implied warranties of conditions of merchantability and fitness for a particular purpose. All logos or trademarks on this site are the property of their respective owner. In no event shall linux-laptop.net, linux-on-laptops.com, or any directors, trustees, associates, or employees thereof be liable for any direct, indirect, special, incidental, consequential or other damages howsoever caused whether arising in contract, tort, or otherwise, arising out of or in connection with the use or performance of the information contained on this web site.