Linux on the Medion Titanium MD5400

Friedhelm Stappert (stappix@arcor.de)

This page describes how I made a running Linux installation on the Medion MD5400 notebook. Although I do not really consider myself a Linux expert, I managed to get everything running after reading some HOWTOs, newsgroups, manuals etc. and doing some manual configurations. I will describe only those things that required a little more work to get them running. Hardware that is not mentioned here either works perfectly without manual intervention or I simply haven’t investigated it yet.

I use a Suse 8.1 professional distribution, so everything noted here is specific to that one. If you have a different distribution, some things are probably handled differently. BTW: In the – German – suse-laptop mailing list archive I found some very helpful information, especially about getting the power management to run (see below).

Update:

A while ago I upgraded to Suse 8.2 Professional. I will also describe the things that have changed. Furthermore, I have added some stuff about hardware I got running since the last version of this document.

Preparation

The notebook came with a pre-installed Windows XP Home Edition, where the disk is formatted into three partitions: Two NTFS partitions (C and D) and one FAT32 (E) for recovery. According to the manual, you must not delete the recovery partition. The easiest way to install Linux (presumed you want to have both WinXP and Linux) is to reformat the D partition as FAT32 and then put Linux on that one. Of course, you will make a backup of D first! On the other hand, you may as well want to get rid of Windows completely, so simply reformat the whole disk as you like to.

I chose to have both Windows and Linux, so I kept C and E as they were and put Linux on the former D partition. Since Linux cannot write on an NTFS file system, the (FAT) E partition serves as kind of a clipboard when I want to transfer data from Linux to Windows.

The installation process with Suse 8.1 was quite easy, and I got a running Linux system after less than 30 minutes. The main things that required a little more work were the modem and the power management.

Update:

The installation of 8.2 was as easy as with 8.1 :-)

The Modem

The modem is an internal (of course!) ‘Creatix V9x Data Fax Modem’, which is a so-called Winmodem and therefore not easily supported by Linux. The good news is that the Modem’s chipset is an Intel 536ep, for which Intel provides a Linux driver, which can be downloaded here (Creatix also provides a link to these drivers in the support area).

After downloading and unzipping, simply follow the instructions in the README file. The installation process will create a new device /dev/536ep and make the link /dev/modem point to that device. After this, just use your favourite dialer to configure it and connect to the internet (or whatever you want) :-)

Update:

The driver is now included in the Suse 8.2 Professional distribution. Look for a package named 'Intel-536ep', install it, and you're done. Probably this is even done automagically during the install process, I don't remember. You might want to check for a newer version via the Creatix web site.

Power Management

This part was a bit more tricky. The main problem is that the MD5400 notebook does not support apm (Advanced Power Management), so you must use ACPI (Advanced Control and Power Management Interface), which is still kind of experimental and under development in Linux. However, I managed to get it running more or less rudimentary, which means: I have a display of the battery status and the CPU temperature, and the fan does no longer constantly run at maximum speed (which was quite annoying due to the noise). I haven’t tried things like ‘suspend to disk’, ‘shutdown when battery is low’, etc. but I think it shouldn’t be completely impossible to get these running, too. Also note that ACPI support under Linux is constantly developed further (thanks to all people involved in this!), so I’m quite optimistic that there will be an easy-to-use implementation in the near future.

So here’s what I did to get it running:
First, your kernel must have ACPI support included. This is the case for the kernel that comes with Suse 8.1. If you have a different distribution, you will probably have to build a new kernel.

Next, you need to install the package acpid (which is also included in the Suse 8.1 distribution, however not installed by default), and use the run-level editor to start it for run-level 3 and 5. After doing that, when you watch the messages during boot, you should see something like: ‘loading modules (processor, thermal, battery, fan)’ and ‘starting acpid’, and you might notice that the fan slows down a little. Also ‘lsmod’ (called as root) should show you that the according modules are loaded.

The behaviour of the fan is however a bit weird: It runs at relatively high speed as long as the CPU temperature is below 45° C , and slows down significantly when the temperature goes above that threshold. Apparently, control of the fan speed is just not activated before the temperature rises above 45°. Thus, if you want to want to have a little more silence, run something that heats up the CPU (like Seti At Home e.g.), until the fan slows down ;-)

However, so far we only are able to start acpi support. Stopping acpid during system shutdown will crash the system (at least it did on my platform). During shutdown, I got an error message when the above modules (fan, thermal etc.) where unloaded, and the system freezed. So I simply commented out the according instructions in the script /etc/init.d/acpid, so that it looks like this:

        [...]
        stop)
                echo -n "Shutting down acpid "
                killproc -TERM $ACPID_BIN
                rc_status -v
#               echo -n "Unloading ACPI modules ("
#               for m in $MODULES; do
#                       while read a b c d; do
#                               echo -n "$c "
#                       done < <(modprobe -vr $m; rc_status)
#               done
#               echo -n ") "
#               rc_status -v
                ;;

And then used the run-level editor again to configure acpid for run-level 3 and 5. You may as well edit the according scripts ‘Kxxacpid’ in /etc/init.d/rc3.d/ and /etc/init.d/rc5.d/ (where ‘xx’ stands for some number, 08 in my case), then you don’t need the run-lvel editor again. In suggested to rename Kxxacpid to K99acpid or even just remove it. This might also work, but I haven’t tried that.

Now that acpid is running and can be shut down without killing the system, we also want to see something about the status our notebook is in, i.e. what’s the status of the battery and how hot is our CPU. Forget the program klaptopdaemon which is installed by default. It only gives an error message saying something like ‘your computer seems to have a partly acpi installation ...’, but we know that we have a complete one, don’t we?

So I downloaded and installed the program aKpi, which shows a battery icon in the control bar and can also show you the CPU temperature and browse in a more readable form through the system information that is stored in /proc/acpi. There is also a program called kacpi, which provides a similar functionality, but I haven’t tried that one yet. You can find kacpi at sourceforge.net. I also read in the suse-laptop mailing list, that somebody patched the source-code of klaptopdaemon, so you might want to try that, too. I guess there will be more acpi supporting software in the near future, if you find something that you want to have mentioned here, just tell me.

Update:

Getting acpid to run has become much easier. You don't have to edit the script /etc/init.d/acpid any more. Instead, in the yast2 editor for etc/sysconfig files under System->Powermanagement->ACPI->General, the variable ACPI_MODULES_NOT_TO_UNLOAD does this job. It contains all acpi modules by default.

With Suse 8.2, klaptopdaemon also works. Furthermore, akpi is included in the distribution. There is also a package called 'acpiw', but I haven’t played around with that one.

However, I still wasn't satisfied with the behaviour of the fans. With Suse 8.2, acpi refuses to slow down or switch off the fans, which is very noisy and annoying. Thus, I decided to write my own temperature control program. You can get it here. Just start it as root and let it run in the background. But USE IT AT YOUR OWN RISK! It has been working for me for several months now without any problems. That does however not mean that your computer might get toasted if you use it ;-). Note that I changed the cooling strategy a bit: If I understand it right, there are three thresholds:

However, during normal use, my CPU always was slightly over 50 degrees warm. This caused the second (louder) fan to be switched on and off periodically, which is a bit annoying. Therefore, in the script I switch on the second fan only when the temperature gets above 57 degrees. With this strategy, my CPU is mostly about 54 degrees warm, which should be no problem I think.

Some words about throttling: When the temperature gets above 57 degrees, the CPU is slowed down automatically by the acpi. There is no possibility to influence this behaviour (you can watch this e.g. with the /proc/acpi browser of akpi in /proc/acpi/processor/CPU0/throttling). Thus, the temperature hardly gets over 60 degrees. This was much different with Suse 8.1. Here, I sometimes got temperatures over 70 degrees (which is probably already a bit dangerous!). I didn't notice the throttling effect with Suse 8.1. The disadvantage now with 8.2 is that the processor has become much slower. Once you give him some work to do (compile your kernel, SETI at home, ...), it quickly heats up and gets slowed down significantly.

In conclusion, IMHO it is a rather stupid idea to put a 2.66 GHz Pentium IV in this laptop, since you will hardly ever be able to make use of its full power :-(. You would have the same performance with a much slower (and cheaper!) CPU.

The Graphics Adapter

The graphics adapter is a ‘Nvidia GeForce4 440 Go 64M’. Due to some weird licensing issues, Suse 8.1 comes with a restricted driver (without 3D acceleration) for it. But you can download the full driver from nvidia or use the online update functionality of Suse 8.1. Since nvidia provides good Linux support, there should be no real problem with the graphics adapter.

I did however not yet manage to use the card’s TV out correctly; I only get black and white images on my TV. But I think I just have to look at this in more detail (I only connected the notebook once to the TV for a quick try).

Update:

TV out also works fine now. Here is my according XF86Config. I found a lot of information in the README that comes with the nvidia driver. Also, Arnim Staschke provides some information on his home page. However, switching between different XF86Config files, as I'm doing it currently, is quite tedious. It would be really great to have a more convenient solution, like nvtv. If anybody out there has managed to get nvtv (which is also included in the Suse 8.2 distribution BTW) running with a laptop, PLEASE PLEASE let me know :-)

The Infrared Port

This is what I did to control my laptop with a remote control by means of the LIRC (Linux Infrared Remote Control) project:

I can currently control xine, mplayer, and xmms (more to come...) with a remote control.

Things To Do

With the steps described above, I now have a working Linux system I am more or less satisfied with. Of course, there is always room for improvements (like with the power management or the TV out). For example, I haven’t yet worked with the infrared interface and the network adapter. Any enhancements I make will of course be written down here.

Update:

About the infrared interface: see above!
I tried out the network adapter; it works fine without any manual intervention :-)
The PCMCIA slot also works fine. I managed to get a Siemens I-Gate WLAN card running. More about this later...
Furthermore, just to mention it, I recently bought an external 40 GB USB drive, a 'Fujitsu Siemens Storagebird'. Also works fine: just plug it in and, after some seconds, an according icon should appear on the desktop (managed by the 'susewatcher' program). However, sometimes (I haven't yet found out why) the icon does not appear. Maybe it's better to create my own one and make the according entry in /etc/fstab manually...



That's all for now. If you have any suggestions, questions, complaints, additions, please contact me!





Last change: 31/07/2004, 15:39:28





And finally, some important notes:
I am of course not responsible for the content of any external pages I link to.
Use all this information carefully and at your own risk! It works for me, but that does not mean that it must work for you. Don't blame me if your computer explodes, kills your pet, pees on your carpet, or any other nasty things happen.