Loading Blog Search...

Wednesday, August 24, 2005

[SoftwareRec] Install Ubuntu on Acer Travelmate 3000 (3002WTCi)

Before reading all contents below,

for those are still struggling to install ubuntu 5.10 onto the Acer Travelmate 3000 series, I strongly suggest that it is time to try Ubuntu/Kubuntu 6.06. In another article, I wrote my experience of using 6.06 on the Acer. 6.06 can be installed and run smoothly and easily. Of cause, If you enjoy kernel patch, recompilation, etc., please go on.

Actually, I donnot like the Acer Travelmate very much. The last time when I was a acer travelmate customer is 5 years ago. I remember the acer babi is really hot, especially in room without air-con. Last week, I got a new travelmate 3200WTCi from company, rather disappointed to find it is still as hot as 5 years ago.

'Hot' is the first impression it brings to me. Compared to my previous old laptop Toshiba Portege4100, which has similar weight and computing power with travelmate at the same age, the Acer is just like a oven.
However, I must agree I donnot hate its industrial design. It is cute. Now, the problem is how about its linux support. If it supports linux good, I will love it much more. I will record the process of installing and setting ubuntu at the following parts. The ubuntu is 5.04 hoary, some problems are resolved in 5.10 breedy already, which I will introduce later.

1. Install from CD

I am not sure what happened when I use default parameter (just press enter), the kernel just hangs. But it is easy to bypass the problem. You can install with parameter:
linux acpi=off noacpi
After that, it will go smoothly, everything will be detected (not just work), including wireless card and video card. But both of them cannot work properly. Soundcard also cannot work by default.

2. Video Problem

The widescreen's native resolution is 1280x800. but ubuntu can only detect 1024x768 from BIOS. In this model, everything is too short, a bit ugly. 915resolution is a program modify the BIOS setting on fly. I grab it and run:
915resolution 49 1280 800 24
then, the resolution is OK, much more beautiful.
To let it run on startup, you need to put it into a startup script. I forgot what is the default runlevel, and I am lazy, thus, I do the following steps:
#vi /etc/init.d/915resolution
/* insert 915resolution 49 1280 800 24*/
#chmod a+x /etc/init.d/915resolution
#update-rc.d 915resolution defaults

In ubuntu 5.04 hoary, xorg is 6.8.2, which doesn't support DRI acceleration. But in breedy, xorg is 6.9, and supports intel 915GM's GMA 9000 video card very good (Unfortunately, I found the DRI is broken again, after I reinstall 5.10 today, although it is OK yesterday. Totally no idea).

3. Wireless Network

Ubuntu can detect ipw2200 directly, but I am not sure whether it works by default. As bringing up the wireless module is quite tricky.
Anyway, I suggest to install the latest ipw2200+fireware:
wget http://heanet.dl.sourceforge.net/sourceforge/ ipw2200/ipw2200-1.0.4.tgz
wget http://bughost.org/firmware/ipw2200-fw-2.3.tgz
sudo mv ipw2200-fw-2.3.tgz /usr/lib/hotplug/firmware
tar xzf ipw2200-1.0.4.tgz
cd ipw2200-1.0.4
sudo make install
cd /usr/lib/hotplug/firmware
sudo tar xzf ipw2200-fw-2.3.tgz
sudo rm -r /lib/modules/`uname -a|awk '{ print $3 }'`/kernel/drivers/net/wireless/ieee80211
sudo rm -r /lib/modules/`uname -a|awk '{ print $3 }'`/kernel/drivers/net/wireless/ipw2200
sudo depmod -a
sudo rmmod ipw2200 firmware_class ieee80211 ieee80211_crypt_wep ieee80211_crypt
sudo modprobe ipw2200

When u run 'dmesg', you may see:
ipw2200: Radio Frequency Kill Switch is On:
Kill switch must be turned off for wireless networking to work.

I just push the wireless enable button (in ur laptop front panel), and then:
modprobe -r ipw2200
modprobe ipw2200
ifconfig ethxx up
dhclient ethxx
then it is OK.
Another trick to bring up the wireless card is to push the same button during startup, just after hotplug service is up and before the network service start.

4. Sound Card

To bring up the Intel HDA sound card, we need to repair the broken apic support in kernel.
I am using linux-image-2.6.12-6-686, and assume all following steps are executed on linux-source-2.6.12:
a. Download io_apic.c and mpparse.c to /usr/src/linux-source-2.6.12/arch/i386/kernel/
b. compile kernel (make menuconfig; make; make_modules_install; cp System.map /boot/System.map-xxx; cp arch/i386/boot/bzImage /boot/xxxx; mkinitrd -o /boot/initrd.img-xxxx; etc.
(for ubuntu 5.10, kernel 2.6.12-9-386, need change the line: #define WORKING_SET 1024 in scripts/kallsyms.c to: #define WORKING_SET 65536 )
then apic support is repaired, after this, you can delete acpi=off parameters from your grub menu.list. After grabing latest alsa and install, the sound card can be detected and run.

In breedy, after I upgrade linux-686, the acpi support is broken again. Thus, I removed those linux-686 related packages, as I think I do NOT need them any more.

5. Firewire CDROM

just work


You can downloaded DSDT file ACER-Travelmate_3000-3C18-custom.asl.gzfrom acpi.sourceforge.net to repair ACPI. I download the DSDT.aml from Tilo Lutz, and then do the following steps:
a. echo -n "INITRDDSDT123DSDT123" >> /boot/initrd.img-2.6.12
b. cat DSDT.aml >> /boot/initrd.img-2.6.12
Here, my initrd table is /boot/initrd.img-2.6.12, For more information, please refer to http://gaugusch.at/kernel.shtml and http://acpi.sourceforge.net/dsdt/index.php
After patch it to initrd, my ubuntu can now show battery power left, cheers.

After I upgrade to ubuntu 5.10, the above method failed, as 5.10 replaces initrd with initramfs. To use DSDT.aml in 5.10, just execute:
mkinitamfs -o /boot/initrd.img-2.6.12 2.6.12
cp DSDT.aml /etc/mkinitramfs/
The DSDT.aml from Tilo Lutz does not work. I do some modification and you can download my DSDT.aml.

7. Modem

Below is the modem info. ATI3
Agere SoftModem Version 2.1.47

2.1.47, Intel, HDA, 14
Somebody say Agere arranges only 1 programmer (Soumyendu Sarkar) for linux, somebody say Agere has start to write linux driver for 4+ years without any release. :-D, I am not sure what is true, but seems can only give up. You know, my old toshiba portege 4010's modem (AT3: TOSHIBA V.90 Data+Fax Software Modem Version 3.1.100; AT5: 3.1.100, AMR.ALi MB, AC97 ID:SIL REV:0x27,19)has never work in the past 3 years.


Copy the nsc-ircc.c to drivers/net/irda, and compile kernel. Copy the nsc-ircc to /etc/modprobe.d/
Then, modprobe nsc_ircc seems no problem, except some warning in 'dmesg'. Again, no IR toy to test it.


Seems it works from 'dmesg', but I have no bluetooth productions to test.


nothing to test


Doesn't work Post-Configuration

1. For chinese support, plz refer to:

Other acer laptop tips for linux1 Other acer laptop tips for linux2


TheEfrit said...


First of all, congratulations for your work with the Ubuntu configuration. I'm new with laptops and linux and your guide is really helpfull.

Now, just one comment. I'm using the breezy distribution with the 2.6.12-7.686 kernel and the 855resolution patch in the startup sequence installed with

#update-rc.d 855resolution defaults

is not working because it is launched by default with the sequence number 20 and now, the GDM is launched before in the runlevel 2, so first of all, you will have to check the sequence number for the GDM process at /etc/rc2.d/, which is by default S13 (file SXXgdm) and then

#update-rc.d 855resolution defaults 9

where "9" is the sequence number.

See you and thanks again!

Li-Zhao 李钊 said...

Thank you Theefrit. Actually, I have never read manual of update-rc.d, Thank you again to tell me this.

But I haven't met the problem when I install 915resolution-xx.deb and update-rc.d 915resolution defaults.

And seems 915resolution's sequence number is 20 too, do you know why?

PS:Seems you have no blogger homepage yet?

TheEfrit said...

Hi again

update-rc.d uses as the default sequence number for a proccess the number 20. The matter with the 915resolution program is that, as I have in the runlevel 2 the GDM with sequence number 13, the GDM starts before than the 915resolution fixes the resolution, so the X-server must be restarted in order to change to the new resolution. So, if you place before the 915resolution in the runlevel 2 start-up sequence, the GDM is started with the widescreen resolution.

I'm still having problems with the ACPI support for the battery. I'm using Breezy with the latest kernel (2.6.12-8) recompiled with the sound card fix. I have copied the DSDT file to /etc/mkinitramfs and reinstalled the kernel_image packed I created, but now the systems holds when loads the ACPI modules in runlevel 2, using both DSDT.aml files, from you and from Tilo Lutz.

By the way, I don't have a blog, maybe when I have a little more free time.

See you

Li-Zhao 李钊 said...

hi,m efirit, did you regenerate initrd.img by 'mkinitramfs -o xxxx xxx'?

Li-Zhao 李钊 said...

hi, efrit, i installed breedy yesterday and met the 915resolution init.d problem, and adjust following ur instruction, highly appreciate

TheEfrit said...

I'm compiling the kernel with the make-kpkg command with

make-kpkg --append-to-version=-8.12-acertm3000 --revision=2.6.12-8.12 --initrd kernel_image

So with the --initrd option it should generate the image when I install the kernel package, isn't it? I will try to recompile without the --initrd option and after installing the kernel, make the initramfs image.

I'm recompiling with the IrDA support, I will test it with my PDA and I will post if it works.

See you

Li-Zhao 李钊 said...

I haven't tried make-kpkg, could you try 'mkinitramfs -o /boot/inintrd.img 2.6.12' to generate the initrd?

Another thing to check is whether you selected the option of 'allow to append DSDT to initrd or initramfs' (not sure exact name, in ACPI section).

TheEfrit said...


I tried both options, with the make "deb" package and without it. I also generated the initramfs with mkinitramfs and copying the DSDT.aml file to /etc/mkinitramfs. The kernel is also compiled with the load DSDT file option in Power Options, and when I boot and image with the DSDT file appended, I can see at the begining of the booting process the data related with the ACPI functions loaded from the DSDT file, but when the boot process enters in the runlevel 2 and loads the ACPI functions, the system remains locked. I can change the terminals from "8" to "1" and if I press "CRTL+ALT+SUPR", the system starts the rebooting process.

Other thing, the bluetooth support by default of breezy works, I can detect other "blue" toys. I have to test file transfer and other tests.

Li-Zhao 李钊 said...

The last chance --- did you remove acpi=off from your grub/menu.list? If use initrd, the parameter must be removed, i think, otherwise, i have totally no idea about ur case. ;-)

TheEfrit said...

Yes, I've removed the acpi=off from the grub option. When I don't load the DSDT.aml file, the ACPI can read the thermal status and the AC status, despite of the gnome battery aplet, which can't guess the status of the AC power status. I guess, it must be a bad configuration of the kernel. I'll try to find out, but now I have my Ubuntu almost completely configurated and working, it's good enough.

See you!

Li-Zhao 李钊 said...

Actually, I haven't touch these files.
I just follow the intruction in my article and breezy is installed smoothly.
I am not linux expert on laptop, especially when I have no ubuntu installed to try. (my laptop is running windows now)

as i spent 1 week to solve all problems on my laptop, what i can suggest is to try more.

If you get any solution, hope I can get suggestions from you when i meet problems, as I plan to install 5.10 at the end of next month.

Anonymous said...

Hi all
This post just to say that:
I have build a new relase of 915resolution

You can find it here

See you and tnx

Anonymous said...


thanks a lot for your help so far. you're my hero ;)

2 Big wishes:
could you please explain how to get the sound working step by step? i haven't compiled a kernel yet but am willing to do it for ubuntu :)

Your DSDT.aml is named DSDT.ps, why? Also what exactly have you done on the newest version of ubuntu (5.10) to make it work?

Thank you so much, if i have acpi and sound i can really switch.

Bye Richard from Montpellier, France.

Li-Zhao 李钊 said...

for 1st point, please copy my patch files to correct place, and the following process roughly is:
1. cp /boot/config-2.6.12-9-386 /usr/src/linux-source-xxx/.config /*for ubuntu 5.10*/
2. cd /usr/src/linux-source-xxx
3. make menuconfig /*to change ur config, here, nothing to be changed to enable sound card*/
4. make
5. make modules_install
6. cp System.map /boot/System.map-2.6.12
7. cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.12
8. mkinitrd -o /boot/initrd.img-2.6.12
9. config your grub

This is the process in my brain now, but I am not sure whether it is exact the complete process. If you find any problem, please try google :-D

for the 2nd point, you can save the DSDT.ps to DSDT.aml, and copy it to the right place. (my website does not permit me to upload *.aml file, thus, i changed the .aml to .ps)

u can config ur grub and restart. acpi should work then

Anonymous said...

Where do the new io_apic.c and mpparse.c come from? Are these patches you've written, or are they from somewhere else?

If it's stuff you've written, has it been submitted to the kernel maintainers? And can you able to explain what they do? (I'd be keen to get them included in the kernel)

Li-Zhao 李钊 said...

Hi, the patch is modified based on another patch (http://chaosfactory.org/linux/). I cannot pretend that I know what are these files for. I only modified some lines to remove compiling error.

Anonymous said...

hi TheEfrit,
did you try to compile dsdt by yourself yet? (that is, download ACER-Travelmate_3000-3C18-custom.asl and compile it with iasl).

I compiled it and I got a different DSDT.aml, judging by its size compared to DSDT files provided by this page. I can't test it myself since my notebook is not here yet.

note: you will need to compile iasl from source too. It uses flex to generate the scanner. Unfortunately, the current flex version (2.5.31) on ubuntu is buggy. You will need 2.5.4.

TheEfrit said...

Hi Chat:

I have my own DSDT file compiled from a modified version, following the instruction of this guide.

I uploaded the DSDT source file to the acpi web site. You can download it and test it.

See you.

Anonymous said...

Hi. I've installed Kubuntu Dapper (unstable) on this machine. ACPI and APIC does not work though. I've tried the ACPI stuff (compiling kernel 2.6.15 with the modified DSDT, but ACPI still don't read battery status from /proc/acpi/battery/BAT0/state). I haven't tried APIC though, since it requires compiling the kernel again. Do you know how to fix it on 2.6.15 or even dapper in general?

DRI works both on badger (xorg 6.8.2) and dapper (7.0) by the way. :)

Anonymous said...

Hello Li Zhao,
Thanks to the internet, I found your website. Could you help me out a little. I followed your instruction to install Ubuntu Breezy Badger on my 3002WTCi, I skipped the ACPI and Sound part because I want to get my Wireless working first. My problem is, I have to boot into Windows first, and then reboot into Linux, for the front panel WiFi button to work. If I don't, every time I press the button, the log message will always show keycode is e056 (which means disable wifi).

Do you have any idea how I can fix this?



Li-Zhao 李钊 said...

I think the 506 message can be ignored, at least on my laptop, the message does not prevent my wireless network on. but after press the button, you may need to modprobe -r ipw2200, and then modprobe ipw2200 again. good luck

Anonymous said...

Hi again Li Zhao,

Thank you for replying! I went back and did a few test and still could not make the WiFi work without booting into Windows first.
That I was giving the keycode result because, when the Wifi button works, if I press it to turn off the Wifi, I get keycode e056, press it again to turn on, I'll get e055, and so on.
But if it doesn't work properly (I don't boot into Windows first), every time I press the button, I always get e056, and Wifi is always disabled.

What would you suggest?

Thanks a lot


Li-Zhao 李钊 said...

Hi, I also get these key error, but these err do not affect my card. I only wonder whether you have modprobe -r ipw2200, modeprobe ipw2200 after you press the button. If you have tried it, and still fail, then I have no idea.

Good luck

Anonymous said...

I?m Nicolas from argentina. sorry about my english.

First of all. thanks for give me a hope.

I can use the 915resolution manualy, but i can?t configure to run on sturt up.

When I use the "update-rc.d 915resolution defaults" promp tells me: "bash: update-rc.d: command not found"

Sorry but I?m new in linux. Tnx

Li-Zhao 李钊 said...

please check whether you installed sysv-rc, using:

dpkg -l|grep sysv-rc

or install it, using:

apt-get install sysv-rc

Anonymous said...

a good read.

Anonymous said...

a good read.