Sunday, July 08, 2007

Ubuntu "Feisty Fawn" on my Compaq V3000





UPDATE: This website is no longer maintained. This guide has been migrated to simonives.info where you will find any updates. Please post any questions or comments at the new site.

This weekend I decided to take the plunge and install a Linux distro on my notebook PC. The reason I had not done so by now is because this particular notebook is well documented as being problematic under Linux, particularly the WiFi card as it is completely proprietary with no Linux drivers being available. I am now posting this using Linux while watching a DVD over a wireless network protected with WPA, the DVD is stored on a Windows XP machine running NTFS...I must have done something right. The following is a guide as to how I got Ubuntu “Feisty Fawn” running with full functionality (actually better but more of that later) on a Compaq V3000 (V3118AU) model notebook.

Installation.

After downloading the Ubuntu “Feisty Fawn” iso and burning it on a CD I booted into the live distro. If you're using the same model notebook as me, or a Broadcom WiFi chipset, you'll notice in the boot procedure that there are two errors. The first error says 'PCI BUS BUG #81 [49435000]' and the second says something like 'error 983 with BCM43xx'. I've no idea what the first error means and I doubt that it's important, I'm still getting this error now and my system is functioning well. The second error is the one that we need to address. Ubuntu “Feisty Fawn” comes with a generic BCM43xx (Broadcom WiFi) driver but it lacks the firmware files so fails to load. I'll address these two errors later.

Once the live CD boots up you can play around if you like or just move right on to the installation. I put 10GB aside for the install so just followed the instructions on installing Ubuntu “Feisty Fawn” into the free space. Ubuntu “Feisty Fawn” installed without any problems and I booted into it fine, with the same errors as mentioned before. To my surprise the only hardware not working 'out of the box' was the Broadcom WiFi card and the audio. In fact, I discovered that I have a working Bluetooth and IR system (tested both) that didn't show up under WinXP.

WiFi

The first step was to get the WiFi working as I could then work on everything else. As the wired LAN was functioning I plugged into my router and downloaded NDISWrapper (I did first attempt to just add the firmware to the BCM43xx driver but it took too much effort and didn't function stably) -> System -> Administration -> Synaptic Package Manager -> Search for NDISWrapper, click the check box and then Apply. Before you proceed make sure you have the Windows driver for the Broadcom card. You need to extract the .sys and .inf files from it. I placed mine on my Desktop.
Now pull up a terminal and type 'sudo rmmod bcm43xx'. This unloads the Broadcom driver from the system.
Type 'sudo rmmod ndiswrapper' to unload any instances of ndiswrapper that my be running. Type 'sudo ndiswrapper -i filename.inf' where filename.inf is the location of the driver, mine was ~/Desktop/filename.inf.
Type 'sudo ndiswrapper -l' and if the driver installed properly then you'll get a nice little list saying so.
To load NDISWrapper at startup type 'sudo ndiswrapper -m'.
Restart the computer and there you go, a working Broadcom WiFi. Mine picked up my WiFi from inside my main house and my neighbours WiFi signal too. I also get better signal strength than under WinXP. Also, I connected fine with WPA encryption thanks to the Ubuntu “Feisty Fawn” network manager.

AUDIO

The audio was a hassle as the card and driver were loading correctly at startup, I just got no audio. The first step I took, now that I had WiFi, was to update Ubuntu “Feisty Fawn”, this apdated ALSA. The correct driver for my hardware is the intel8x0 so I entered 'gksudo gedit /etc/modprobe.d/alsa-base' which opens the alsa configuration file. I then updated the snd-hda-intel entry to my driver, snd-hda-intel8x0 and rebooted. While the computer was just starting I went into the BIOS and disabled the audio options there. When Ubuntu “Feisty Fawn” started back up I had audio.

VIDEO

Strictly speaking the video works with Ubuntu “Feisty Fawn” with no mods. However, if you want 2D and 3D acceleration you need to install the nVidia driver. This couldn't be easier. All you need to do is select -> System -> Administration -> Restricted Drivers Manager and hit go, if you have a net connection that is. Ubuntu “Feisty Fawn” downloads the current nVidia driver and installs it. After a restart you'll have full featured graphics.

MISCELLANEOUS

The shortcut keys on my notebook all worked out of the box. The mute key and the volume keys work better than in WinXP as there is no delay in their actions. There is actually one key that appears not to work, the media centre key. This key actually does work, it is just not assigned any action, I assigned mine to open xmms. The touchpad is turned off on startup but if you have no mouse all you need to do is to hit the touchpad power key. Everything else works a treat. The two inbuilt microphones work well, the firewire and usb have no issues. My USB drives all auto mount and the five in one card reader works well.

OTHER APPLICATIONS

Some other applications that I have found useful with this Ubuntu “Fesity Fawn” distro have been:
Thunderbird is a powerful open source email client. I use Thunderbird on WinXP and copied the profile folder over to my local Thunderbird directory. Now I've got all my mails and filters etc.
Beryl is a window manager with a difference. For the best GUI experience you'll get try Beryl...if you think Win Vista has good visuals then you'll be blown out of the water by this.
ALLTray is an app that will let you minimise any application to the task bar. I'm having troubles with ALLTray and Beryl though.
XMMS is a multimedia player that just works. Ubuntu "Feisty Fawn" does come with Rhythmbox but I just prefer XMMS as it is small, has many plugins and I've been using it for years.
Wine is an acronym for Wine Is Not an Emulator and allows (some) Windows based apps to run under Linux.
Azureus is a bit torrent client.
Bluefish Editor is a web site creation tool that works with all the major web based programming languages such as PHP/MySQL, HTML/XHTML etc.
Audacity is an audio recording and editing environment. It's a fantastic tool.
Filezilla is a full featured ftp client from Mozilla.
Gnome Baker is a CD/DVD creation environment.

So if you think that Linux isn't for notebooks then think again. At least with Ubuntu “Feisty Fawn” you can have a fully featured Linux distro that will work on even the most proprietary of systems.

P.S. This is my 100th post so happy birthday to me!

UPDATE: This website is no longer maintained. This guide has been migrated to simonives.info where you will find any updates. Please post any questions or comments at the new site.

14 comments:

Jordan said...

Just wondering why you chose to use NDIS wrapper instead of using bcm43xx-fwcutter to extract the firmware. Does bcm43xx not work correctly with your card?

Simon said...

Hi Jordan.
I originally did use the fwcutter as documented on Ubuntu's forums but I had problems with my card (Broadcom Corporation Dell Wireless 1390 WLAN Mini-PCI Card (rev 01) ). I was able to load the driver but I was unable to connect to, or let alone find, any wireless networks. I went to NDISWrapper as I had success with this app before and it works a treat for me now.

Glenn said...

any time with ndiswrapper you will always have a better signal. This is because it does not signal strength correctly... ndiswrapper is a short-term fix. (I love my RA-Link RT2500 in my desktop though)

That is one of the drawbacks of ndiswrapper. Good thing it is there, but I have come to the decision myself to boycott anything Broadcom. I really do not care that they supposedly now offer Linux support.

uC said...

Hi

I have the same card in my HP L2005CL under SuSE 10.2. I looked at the article in Tuxmachines.org "Installing SuSE 10.2 on Compaq V2000" (Same hardware) SuSE id'd the card as Broadcom bcm43xx. The bc43xx-fwcutter application did not work but NDISWrapper did work and you picked out the .sys and .inf files. I cheated and had a DVD with everything and a hardwired E-NET to the router as well. SuSE mounted the /Windows folder for convient grabing of drivers.

And yes Beryl works on ATI IGP M200 someone at AMD funded the Linux driver people and ATI chips just keep getting better drivers. Simple. As much as distro fanclub people want to differ we are all working from the same codebase so it really works the same way.

YAST2 still shows the old bcm43xx card as present and inactive which I presume is the equivalent of the V3000's card error.

Cheers

Hamish said...

H Simon

There's a small typo in the line: sudo rmmod bcn43xx, should be bcm43xx.

I have an ASUS A6Rp which also has a Broadcom wi-fi card. I used the post here: http://ubuntuforums.org/showthread.php?t=197102 to get it working.

Great to see that you have had an Ubuntu success story! Thanks for sharing :-)

Hamish

Simon said...

Typo corrected.
Thanks for pointing that out Hamish.

I've just had a look at that link you posted and it explains everything quite well. Maybe the issue I had with fwcutter was that I was too far from my wireless access point and inside a metal shed. Anyhow, I'm up and running with NDISWrapper so I'm not going to complain.

Hamish said...

Hi again Simon

Initially I installed Ubuntu and used the second (NDISWrapper) method of getting my wi-fi card to work in that Ubuntu post. However after a rebuild (to try out a few other distros, but I went back to Ubuntu), I used the first method on a perfectly clean install, and it functions brilliantly, faster and much more reliable than before. So, I'd recommend using the script to do this, but *only* on a fresh install. You'll get much better results.

They say in that post that the signal strength and so on are not as good using the native drivers (as opposed to the NDISWrapper method), but I have no problems hitting wi-fi hotspots that are quite some distance away, and it holds my home connection perfectly.

I have heard rumours that Broadcom will be offering Linux supported drivers at some unspecified time in the future. I think that will be a good day, if it ever arrives.

HTH
Hamish

Collin said...

Hi,

This is extracted out from the forum.

1. Use the native bcm43xx driver. This driver is open source and included with the kernel. It can not run at any speed higher then 11mbps, is some what flaky, and supports promiscuous mode. Requires user to be somewhat close to the access point. Is easier to install.
2. Use ndiswrapper. ndiswrapper is open source, however the driver is not. It can run at 54mbps, is stable, and does not support promiscuous mode. I have had some trouble with it and hidden networks. Supports a large distance from the access point.

Why would anyone want to limit his own network to 11mbps and short distance from access point by applying the first method?

Chili.Willy said...

Hi, Simon. I'm not up to your speed with Linux. Can you list the exact line in /etc/modprobe.d/alsa-base that specifies your driver (intel8x0)? I am struggling to get ANY sound out of a Dell C610 (7-yr-old laptop) running Xubuntu 7.04. It seems the snd-intel8x0 module isn't being loaded, and I don't know how to tell the system to load it.

Thanks,
Will

Anacroneta said...

Man!! I have a Compaq presario V3000, I've just made my Wireless connection work!! so thanks, but with the sound I got troubles, I did as u write, and change the snd-hda-intel into snd-hda-intel8x0... and sometimes when I reboot I have sound, but sometimes I don't, and I was looking for the "off" option in the BIOS for the sound but there isn't any.

Any suggestions?

Thnks.

Simon said...

Without booting into my bios, I asume it's be the same as yours, I can't be certain what the audio option was called. Are you dual booting by any chance? There is a bug with these V3000s that causes the audio hardware to not be detected on a reboot from Windows into Ubuntu (not sure if this occurs in other distros). The short fix is to reboot with the AC cable unplugged or turned off; you may need to do this twice.

I've implimented a further change to my audio setup since I wrote this post and it helps with the headphone jack switching off the main speaker when your headphones are plugged in. You just need to go to the SUSE site to find the alsa patch for the V3000.

Go to - ftp://ftp.suse.com/pub/projects/alsa/snapshot/driver and download the latest patch.

From a terminal type
#tar xvf *.tar.bz2 where * is the file name.
#./configure
#sudo make
#sudo make install

(Don't include the # symbols)

Reboot the PC and sound should be going fine and your external speakers will now switch off when you plug in your headphones. Further, this patch will not change your snd-hda-* settings and if there is a change it will be based upon a hardware scan and that is a positive.

Anacroneta said...

Hello!

First, thanks again, the audio started working smooth(the speakers turn off when I plug the headphones) and the wireless has no problems, I wanted to add that if anybody there is having problems installing the NVIDIA driver (as I did) then U should probably try this http://www.albertomilone.com/latest_nvidia_udsf_feisty.html#HOWTO:_Latest_NVIDIA_drivers.
if u want to manually install it.
Or use Envy http://www.albertomilone.com/nvidia_scripts1.html
a nice application that makes everything more easy.

Simon said...

This blog is no longer updated so please post your comments at its new home - Simon Ives.info

Brandon Hudson said...

I like your style of writing. You break it down nicely. Very informative post. Keep up the good work.

Lenovo - ThinkPad T530 15.6" Laptop - 4GB Memory - 320GB Hard Drive - Black

Lenovo - ThinkPad Twist Ultrabook 2-in-1 12.5" Touch-Screen Laptop - 8GB Memory - 500GB Hard Drive - Black