Ask Klaus!


Klaus Knopper is the creator of Knoppix and co-founder of the LinuxTag expo. He currently works as a teacher, programmer, and consultant. If you have a configuration problem, or if you just want to learn more about how Linux works, send your questions to: klaus@linux-magazine.com

Cellphone

Question:

I have been searching for a way to connect my w710i (Sony Ericsson) cellphone to my Linux system (Ubuntu).

If I connect my cellphone through USB, I can use it as an external storage device, but not as a PDA.

On Windows, I can synchronize the phone with Outlook (agenda, contacts, tasks, ...). Do you know how I can synchronize my cellphone with Evolution?

Answer:

A project called SyncEvolution (http://www.estamos.de/projects/SyncML/index.html) provides a utility that might work for this task. Because there also is a Debian repository for this plugin (see http://www.estamos.de/projects/SyncML/Installation.html for instructions), chances are good that SyncEvolution will run on your Ubuntu system.

Ubuntu Sound

Question:

I have been using Ubuntu Linux since the 6.06 LTS release, and I've noticed that later Ubuntu releases seems to lose the sound system on my laptop.

I am currently running Ubuntu 7.10 on a Toshiba Satellite A105-S2061 laptop and have no sound. The operating system sees my sound card, but it does not find and load any drivers for it. The sound card is the built-in ATI SB (Sound Blaster) card/chipset.

My previous Ubuntu (6.10) had no problems with sound, although version 6.06 did. Initially, I thought that maybe something was wrong with the installation, so I wiped the hard drive and did a fresh (re-)install, but that did not solve the problem.

If I hadn't had sound in any other version, I would just figure that the sound card either isn't supported by Linux or isn't supported by Ubuntu, but the sound in 6.10 kills that idea.

I have looked all over the web for any clue as to whether the problem results from missing drivers or something I did or didn't do at install time. I've been through the audio files available with Synaptic, and I haven't come across anything that works yet.

Any help would be appreciated - I hate having to boot into Windows just to watch a DVD or listen to a CD.

Answer:

You may have a rare case in which the sound card chipset will only work with the Open Sound System kernel modules, but not with the newer ALSA drivers, which have replaced the older Open Sound System in virtually every current GNU/Linux distribution. You should report this problem to the ALSA developers because the OSS drivers are likely to disappear from the kernel completely in future versions.

However, you can try to use the OSS drivers instead of ALSA. This solution requires a kernel reconfiguration and installation, though, which is not as easy as simply installing a new software package.

First, change to the kernel source directory and start a make menuconfig, located under Device Drivers | Sound.

Deselect ALSA and look for either your specific chipset or a generic Soundblaster and MS Sound System compatible in the Open Sound System modules, and select them accordingly.

To correctly install the new kernel on your system, refer to your distribution's instructions.

Seven-Year-Old Presario

Question:

I have a laptop Compaq Presario 1600 (model 16XL255) that I have owned for almost seven years. My Presario has a DVD player with 64MB internal memory and came with Windows 98.

Because of the problems I encountered with Windows 98, I installed Linux and added 128MB into the only extra slot. Everything worked well until I changed the extended memory from a 128MB to a 256MB SDRam.

I tried it with different operating systems, and neither Windows nor Linux recognizes the 256MB memory. The system shows me that I have a total of 187MB memory in the laptop.

Even the BIOS doesn't see the additional memory. Is there a way to solve this problem?

I looked on the HP site for a BIOS update, but I encountered two problems. Under Linux, it seems impossible to update the BIOS, although I thought I could do it through a flash BIOS update.

After I installed Windows, it showed me that there is no BIOS update.

With the small amount of memory currently in the machine, the computer works so slowly that I can almost eat my whole lunch before it starts. I use the Sabayon distro.

What should I do?

Answer:

It may be that the board itself, especially the RAM controller chipset, is simply unable to address memory over a certain limit. In that case, no matter which BIOS update or operating system you use, you will never be able to access the full range of memory. I have seen this on a Pentium III-based board, which is capable of holding three simms with 512MB each, but in fact, the chipset cannot handle more than about 700MB of RAM, so anything above this limit is just ignored.

The only solution in this case is getting a new board/computer.

On the other hand, it also might be that the BIOS simply does not report the correct RAM size to the operating system because of a bug in the firmware/BIOS itself. In that case, you might succeed in making all memory available with a special Linux boot parameter, which can be typed at the boot command line for testing and permanently inserted in the kernel's "APPEND"-option line in lilo.conf or Grub's menu.lst configuration file:

linux mem=256M

Please note that the capital M is required here; the boot option parser is very picky about this. The option tells the Linux kernel that there is actually more memory installed than reported by the BIOS.

You must be careful with such a parameter. While at first glance, Linux may boot up and show the expected 256MB of RAM in the free command (or slightly less because of the kernels internal memory usage), you will expect sudden crashes or system freezes if the memory above a physically addressable limit is accessed.

So, for testing, try to occupy as much memory as possible and check to see whether it is readable as well as writable; for example:

mkdir ramdisk
mount -t tmpfs -o size=1G /dev/shm /ramdisk
cd /ramdisk
dd if=/dev/urandom of=test.img bs=1000k count=256
cp test.img test2.img
md5sum test.img test2.img
rm -f test.img test2.img

Note that the size of our testing files (each or both) exceeds the amount of available RAM in your computer already, so you must have enough swap space configured to compensate or use a smaller file size that fits.

If the md5sum in our test reports different checksums for test.img and test2.img, then there is something wrong with the installed RAM or the board. If the test runs through, and test.img and test2.img are identical, this can be an indication that the RAM is working fine and is fully usable.

One last word about BIOS updates: the best medium for installing the update is a plain DOS floppy, not only because board vendors provide BIOS flash programs in DOS format, but also because, when running from a DOS-floppy, the flashing process won't get interrupted, thus breaking your BIOS because of too much multitasking.

Sometimes, a BIOS update can really improve the Linux-compatibility of boards (especially when ACPI is involved), but other times, it also can cause problems or - if you pick a bad or incorrect BIOS update file-- even ruin the board.

Pavilion Wifi

Question:

Hi Klaus, I love your column in Linux Magazine - it always helps me and I learn a lot, too. I'm running openSUSE 10.3 on a HP Pavilion dv6000-series notebook. (I just got it for Xmas, and I love the machine.) Everything works right out of the box except for one problem: my wireless card.

I have Googled, chatted, visited the driver site, and tried everything I could think of - from ndiswrapper to install_fwcutter_43xx.

Also, I recently posted a bug on my distribution's bug site and I haven't heard anything back.

KNetworkManager, KWiFi-Manager, and iwconfig see the card, the driver, and the module, but the card is not receiving any signal from the router. I have checked my router and I have tried connecting to other routers, but the same thing happens every time.

I am sending you the Network Manager log file and xxx file, and also the /var/log/messages file to see whether you can find something to help me with this little problem.

Thanks for any help, for simply reading this email, and for all your hard work with open source and the magazine: You guys rock!

Answer:

Your problem might be solved with the new Linux kernel 2.6.24 wifi drivers, which always provide support for the "wifi switch" that some notebooks have. This wifi switch often keeps wifi from working just because it turns off the antenna and, therefore, no signal is received even though the driver is working well otherwise.

As you already mentioned, you will still need to install the wifi card firmware; otherwise the card will just report funny messages through syslog.

An excerpt from the log file you sent is shown in Listing 1. The log confirms that you do indeed have the correct kernel module bcm43xx for this card, but the firmware belonging to that card is not present.

Listing 1: Reading the Log
01 Jan  6 05:26:23 linux kernel: bcm43xx: PHY connected
02 Jan  6 05:26:23 linux kernel: bcm43xx: Error: Microcode
03 "bcm43xx_microcode5.fw" not available or load failed.
04 Jan  6 05:26:23 linux kernel: bcm43xx: core_up for active 802.11 core
05 failed (-2)
06 Jan  6 00:26:23 linux firmware.sh[5865]: Cannot find  firmware file
07 'bcm43xx_microcode5.fw'

You can probably get this firmware from various locations on the Internet, but also, you can extract it from a card that already has the firmware by using the program bcm43xx-fwcutter.

Once you obtain a copy of the necessary firmware, you should place it under /usr/lib/hotplug/bcm43xx_microcode5.fw (distro-dependent - maybe also /lib/firmware/bcm43xx_microcode5.fw), where it will automatically get loaded at boot time as soon as the wifi card is detected and activated.