Linux on Compaq Presario F560US

Note: This is a long boring blog post. It details my frustration of getting this all to work. If you don’t care and just want to get to where I tell you exactly how to successfully install Linux on this computer, click here.

I haven’t done a tech post in quite a while, so here is one that will hopefully help someone out. A friend of mine recently got a new notebook computer, and the particular model was extremely inexpensive, but seemed to have decent specs regardless, at least for a Linux notebook. The Compaq Presario F500 series sports an NVidia graphics controller, a 1.8GHz AMD processor and 512MB of memory, which can be upgraded to 2GB. This seemed perfect to replace his aging Toshiba Satellite that we upgraded all the up to 512MB of memory and still barely putted along at ridiculously slow speeds, regardless of which operating system we put on there and attempted to optimize. So given the very low price of the new notebook, which was even less expensive than the Asus Eee PC’s, I recommended it. It came with Vista Basic Edition on it, but armed with a Linux disc, we were able to resolve that bug very quickly.

The timing coincided with Ubuntu’s 7.10 Gutsy Gibbon release, so we decided to put that on there. It got about half way through loading the installer before it hung. Googling around through the Ubuntu Forums led to the conclusion that that particular version of Ubuntu wasn’t going to work very well. Most forum threads indicated that it would need some kernel boot parameters to function, namely “nolapic” and “noapic”. Well, these didn’t help us much further either. Most of the Google results were for the F500 series of notebooks, but perhaps the sub-model F560US was yet a little different. OpenSuse didn’t seem to want to load up either and the only operating system that would even install on this thing was Ubuntu Feisty Fawn 7.04. So we went with that, with the “nolapic noapic” boot parameters for GRUB.

In the meantime, I decided to switch from Gutsy Gibbon to OpenSuse 10.3 on my own notebook, since the KDE implementation of Gutsy seemed to have some pretty bad bugs in the network manager that were very annoying. My friend really liked the look and feel of Suse over Ubuntu, so he asked me if we could put it on his Presario. I figured it was worth another try, since I didn’t want him to be stuck with Ubuntu Feisty until the end of time on that brand new notebook. This past weekend I decided to tackle the project again to see what I could come up with. Faced again with the installer hanging at various points throughout the boot sequence, I found that what finally worked was adding “acpi=off noapic” to the kernel boot parameters in GRUB. I was all excited that it was working until I got the system all installed and set up and tried tackling the wireless card. The notebook has a Broadcom chipset of some sort normally sold in Dell notebooks, so there is plenty of documentation online about how to maybe get it to work with the native bcm43xx driver and extracted firmware from the Windows driver as well as many indications that NDiswrapper would work great. Lets just say that after many hours of trial and error and troubleshooting, I realized that having the “acpi=off” boot parameter was not going to allow the wireless card to function regardless of what driver I was using. After a few more hours of googling and trying every boot option that I could think of that had to do with IRQ and ACPI, it just would not boot at all without “acpi=off”. It was either no wireless or no booting at all with this thing. I decided to give up for the day. I gave my friend an ethernet cable and told him I would put Ubuntu Feisty back on there the next day for him. Of course, as most people that know me will tell you, I don’t give up easily when it comes to computers and I have a gut feeling that it should work.

I decided to start over from scratch with Ubuntu Gutsy again. Mostly because there is a lot of community documentation available for Ubuntu and I know the workings of a Debian system a little better than I do Suse and I figured I would install a command line only system and mess with it until I got it all working. If I could get Gutsy working on it, then I could use what I had learned to get OpenSuse 10.3 on it, like my friend wanted. Again I was able to successfully install and run the system by using the “acpi=off” boot parameter and again the wireless card couldn’t bind to IRQ0 with that setting and I was back at square one. But now I just had a command line system and was able to reboot quickly and get to testing really quickly with every different boot parameter and system setting I changed.

At some point I finally found the answer I was looking for. After literally just trying random boot parameters in conjunction with others and by themselves I discovered that the system boots AND runs AND the wireless card works if you use the following boot parameters:

noapic irqpoll nosmp

That was it. It worked great. I was able to bring up the wireless interface (so far didn’t have a working driver/firmware in there, but I didn’t get any more IRQ errors from dmesg) So I rebooted a few times, added the lines to GRUB permanently, installed the KDE desktop and ran a bunch of tests to see if I could get the system to hang. It didn’t. It worked like it was supposed to. So now back to installing OpenSuse. Well, I didn’t want to go through the entire Suse install process, which takes forever compared to Ubuntu just to find out that my boot parameters didn’t work for Suse, I decided to try the LiveCD that Suse has now. I booted it up (with my boot parameters) and it came up nicely. I was convinced that it would work, and as I was about to pop out the live CD and insert the install CD, I noticed that the Live CD had an “Install” option. I gave it a shot. It actually worked. Upon rebooting halfway through the install process, I added in the boot parameters again and when the system was finished I went into the Boot Loader settings in YaST and added the boot parameters in there. That way I don’t have to enter them each time I boot the computer. If you install using the regular installer CD, when the first menu comes up if you just add in the boot parameters, I think the installed system will remember them for you and you don’t have to edit anything in the YaST settings. I think the LiveCD has a few bugs that the regular install CD doesn’t have. I also had trouble enabling community repositories in YaST, which doesn’t seem to be an issue when you install using the regular CD.

One more thing I noticed: Don’t install the Broadcom firmware from YaST. In fact don’t install it at all. Blacklist the bcm43xx driver and use NDiswrapper. The bcm43xx driver, once the firmware is loaded, causes the entire system to slow down to a crawl and it doesn’t work. So, here is the install process for getting OpenSuse 10.3 working on a Compaq Presario F560US model:


Installation Guide

  1. Insert CD and boot.
  2. When you see the menu to choose which installation type you want to do, choose the regular installation, but before pressing Enter, type: “noapic irqpoll nosmp” without the quotes. Those three words should be at the bottom of the GRUB menu in the Options line. Hit Enter.
  3. Go through the graphical installer. It is pretty straight forward and self-explanatory. Go ahead and accept most defaults as they are. I would recommend setting up networking and everything and getting updates with a regular ethernet wired connection during the install process.
  4. Once it is finished, go to YaST (Administrator Settings). Go to System and click on “Boot Loader”. Click the first item and click “Edit”. Make sure that you see “noapic irqpoll nosmp” in the Options line. If they are not there, add them.
  5. While still in YaST, click on Sofware and then choose “Community Repositories”. Make sure that the main repositories as well as the nVidia and any other ones you think you might want are checked and click Finish. After they are done being set up, click on “Software Repositories” in YaST and make sure that all the repositories you selected are enabled and make sure that the “openSUSE-10.3-OSS-KDE 10.3”, which is the CD or DVD, is disabled.
  6. Click on “Software Management” in YaST, and search for “nvidia” and choose “nvidia-gfxG01-kmp-default” and “x11-video-nvidiaG01” to install. Then search for “ndiswrapper” and choose it to install. Click “Accept” and let it finish the installation.
  7. Google for “Dell R151517.EXE” and download that file from Dell’s download site. Open a terminal and navigate to the directory where the file was downloaded. Type: “unzip R151517.EXE”. This will probably spill files all over the place, so you might want to move that file into a directory that you can easily delete later. Once it is done unzipping, type in the following series of commands:

su –

(enter your root password)

cd /home/user/directory/where/you/unzipped/the/file/

cd DRIVER/

ndiswrapper -i bcmwl5.inf

ndiswrapper -m

echo blacklist bcm43xx >> /etc/modprobe.d/blacklist

echo ndiswrapper >> /etc/modules

reboot

Now, if everything went smoothly, when your computer boots back up, you should see the nVidia logo flash across the screen right before you log in. Once you are logged in, you should be able to click on the KNetworkManager icon in the system tray and see your wireless networks. If you didn’t see the nVidia logo before you logged in, edit the file /etc/X11/xorg.conf as root and find the word ‘nv’ and change it to ‘nvidia’ and restart the X Server or reboot again. Hopefully someone will be helped by this guide and not have to go through the many hours of trial and error to get this notebook working nicely with Linux.

20 Comments

ZachDecember 19th, 2007 at 00:26

The first laptop I bought here in Sweden was this model…except it had a Turion 64 X2 processor. I uninstalled Vista and installed XP, and then nothing worked. I couldn’t even get the ethernet port to work so I could download the many drivers I would need. I even got ahold of a USB to ethernet adapter, which had the drivers on a CD. And even that ended up not working.

I then decided to install Ubuntu on it…yup…didn’t even get to the install screen without some kind of error.

Long story short, I took it back, got a better computer from Toshiba and life is good.

jabbaDecember 19th, 2007 at 00:37

Yeah, that was the other issue we were faced with.. once we deleted the Vista partition, including the restoration partition, we realized that something better work, because there were absolutely no XP drivers either. But Zach, I finally realized why that old computer you had got extremely slow all of a sudden.. it had the same wireless chipset that this one does and now I know not to use the linux driver for it, since it causes the whole machine to pretty much lock up… My bad…

RyanJanuary 4th, 2008 at 09:27

Hey Jabba,

Been racking my brains for 3 days on this exact issue (Gutsy and the F500 with Broadcom). It was making me NUTS! Thanks for doing the legwork on this one. I like the F500 a lot and was getting very disappointed in it not working out with Edubuntu.

I found you through google.

I DO have a question though: once I installed with the command line boot parameters you mentioned, what did you use to get the Broadcom WL up and functioning in the GUI? The firmware or the ndiswrapper?

Thanks again and wish me luck!

Ryan Rotuna
Director of Technology
Jackson-Milton Schools
North Jackson, Ohio

jabbaJanuary 4th, 2008 at 09:58

@Ryan:

Definitely use NDiswrapper. Google for “Dell R151517.exe”, download the file from Dell’s website, run the command “unzip R151517.exe”, which will extract its contents and then do the following commands:

cd DRIVER/

ndiswrapper -i bcmwl5.inf

ndiswrapper -m

echo blacklist bcm43xx >> /etc/modprobe.d/blacklist

echo ndiswrapper >> /etc/modules

After a reboot, your wifi card should be recognized and you should be able to see and connect to networks with the Network Manager GUI. Let me know if you need anything else! Glad to know it helped someone!!

RyanJanuary 4th, 2008 at 10:55

It didn’t work. How depressing. The Network Settings program says it is there and roaming but the applet up by the time and date has no record of it existing. The Ndiswrapper shows it is installed. I think I may be humped here.

Thanks for the help though.

jabbaJanuary 4th, 2008 at 19:05

Which distro are you using? I have only tried this with (K)ubuntu and Suse, but I imagine most should work the same. Check to make sure that the ndiswrapper module is loaded in the kernel with “lsmod | grep ndiswrapper” and also make sure that the bcm43xx module is NOT loaded “lsmod | grep bcm43xx”. If ndiswrapper is loaded and bcm43xx is not, perhaps try downloading the latest version of ndiswrapper from their website and compiling it from source. Sometimes that works better. Also, if you are using Suse, you might have to go into YaST and add the card under Network Devices. Delete whatever is already there and add a new one using “ndiswrapper” as the module name. Let me know how you progress on this. I’m sure you can get it working.

KarlJanuary 7th, 2008 at 04:10

Hey thanks a lot for the “noapic irqpoll nosmp” boot options, I’ve a Compaq Presario F500 running Gentoo Linux (64bit) the laptop froze in the boot until I added the “nolapic” boot option. That allowed it to boot, but I was unable to get the nvidia driver working, the kernel was causing it to be Edge-triggered! noapic allowed nvidia to work but the keyboard was dead. With your “noapic irqpoll nosmp” boot options everything is working fine! Thanks a lot. Cheers

Marcelo Fernà¡ndezJanuary 18th, 2008 at 07:41

Justin, thanks A LOT!! I have a Presario F500 (505LA sub-model) and those kernel parameters work great! :-)

Regards,
Marcelo

jabbaJanuary 18th, 2008 at 07:50

Marcelo, I’m glad that it worked for that model too!

JimFebruary 14th, 2008 at 09:18

Thanks for the tutorial. Trying to get this to work was very frustrating without your assistance.

BTW, the Broadcom driver is still in development. One of the things they mention in the project page is that they are still working on co-existence with Bluetooth. Maybe that’s why the driver won’t load with a Presario f-500 series. See http://linuxwireless.org/en/users/Drivers/b43 for details.

TylerFebruary 26th, 2008 at 20:54

WOW. Thank you so much for this. My computer works beautifully and I only ever have to boot into windows for dreamweaver. thank you so much

LeandroMarch 3rd, 2008 at 12:45

Thanks to this post I have made my Linux Mint to work in my Presario f565LA.
Thanks again!

martinMarch 15th, 2008 at 19:36

Thank you very much for your tutorial. Did you got suspend/hibernate and function keys work? Thx again from Argentina

jabbaMarch 17th, 2008 at 14:44

Martin, glad this helped. Unfortunately, I did not get the function keys to work. In my experience with laptops and function keys, it has been hit and miss. I’ve had a notebook, where they would work with some versions of some distributions and not with others, and have never really researched it enough to know what makes them work and what doesn’t. I also haven’t tried working on suspend or hibernate, but if you find anything or get it working, please let me know!

Hans GuckindieluftMarch 20th, 2008 at 06:14

Hearty Greetings from wunderful Bayernland.

Unfortunately, I have a problem with zee installation. After zee installation finishes, reboots, and log back ein, zee only ting dat comes up is zee terminal. When I start a program from zee command linie, there it cannot connect to zee xserver. Dies happens with both Suse und Kubuntu installations. Any advice?

[…] guide from Jabba Rants did work great for me. I still will paste the steps below because many of links pointing to the […]

JoseJuly 24th, 2008 at 22:14

Muchas gracias, funciona perfecto para mi f565la
Thanks, works perfect for my f565la.
Sorry bad english

Ramon J. Sanchez.January 17th, 2009 at 14:55

All I want to know;does Fry’s Electronics have a version of Linux that will ACTUALLY install on my Compaq Presario F500!$#$%!! In case you’re wondering why I actually bought such a clunker; it’s because I don’t have a car or a credit card. I bought it at the neighborhood Radio Shack!

jabbaJanuary 17th, 2009 at 20:34

@Ramon

I’m not sure I understand your question. Fry’s does not supply Linux. This laptop was purchased at Fry’s with Windows Vista. This post details how to install Linux on it, removing Windows Vista.

MedicE11March 27th, 2010 at 22:51

My system is using a newer version of SUSE and only needed one change from this guide. Once I followed the steps in this guide then made the below listed change I had working audio, wireless and proper video support. I had spent several hours working through other guides that had most of the steps but missed the important GRUB options that allow the wireless to work on the Compaq Presario F500. Thank you for posting this guide for others with this problem system.

OS Version:
openSUSE 11.2 (x86_64
Linux 2.6.31.12-0.2-desktop x86_64

In:
/etc/sysconfig/

Modify this file:
kernel

Set the following line:
MODULES_LOADED_ON_BOOT=”ndiswrapper”

Default is:
MODULES_LOADED_ON_BOOT=””

You just need to put the “ndiswrapper” in. This will allow the wireless to start automatically upon boot.

Leave a comment

Your comment