Table of Contents

HP zv5000

Laptop computer HP Pavilion zv5340ea

Configuration

The bad contact in the DC connector

I learned that HP laptops are known to have very bad DC connectors subjects to bad contact. I had this problem, and I disassembled my laptop in order to solder back the connector.

First, an exploded view of the zv5340ea :

exploded_laptop.jpg

Unfortunately, you really need to completely disassemble the laptop to get access to the faulty solder. Some advice :

dissipator.jpg plate.jpg

ribbon.jpg

My DC connector solder looked that :

bad_contact.jpg

So it was pretty obvious what was the problem. Unfortunately, the wire of the connector was very hostile to tin. I had to heat a lot to make the solder, I did it twice and each time the bad contact was back after one month.

The third time, I completely removed the connector, cleaned all the wires, and resoldered it properly. For now it resists.

I had also a bad contact in a USB connector, and some soldering made it also.

usb.jpg

With Linux

Multimedia keys

You can catch up most of multimedia keys of your laptop under Linux, with lineakd.

/etc/lineakb.def already contains some codes of keys for HPzv5000, but with xev you can find more :

[HPzv5000p]
 brandname = "Hewlett-Packard"
 modelname = "Pavilion zv5000"
 [KEYS]
   Mute        = 160
   VolumeDown  = 174
   VolumeUp    = 176

   WWW         = 178
   FnWWW       = 233
   FnMusic     = 234
   FnPhoto     = 178 # Same as WWW !

   PlayPause   = 162
   Previous    = 144
   Next        = 153
   Stop        = 164

   Suspend     = 223
   Pause       = 110
   ScreenShot  = 111
   Attn        = 37  # Same as Control_L !!
   Popup       = 117

# caution, prevent keys from acting normally
   Win         = 115
   FnWin       = 116
   WinG        = 115
   WinD        = 116
 [END KEYS]
[END HPzv5000p]

And then for example in /etc/lineak/lineakd.conf :

   Mute        =amixer sset Master toggle
   VolumeUp    =amixer sset Master 1+
   VolumeDown  =amixer sset Master 1-

   WWW         = "firefox"
   FnWWW       = ""
   FnMusic     = ""

   PlayPause   = "audacious -t"
   Previous    = "audacious -r"
   Next        = "audacious -f"
   Stop        = "audacious -s"

   Suspend     = "gksudo hibernate-ram"
   ScreenShot  = ""import -window root `date +/home/cyril/screenshots/shot-%Y-%m-%d_%H-%M-%S.png`
   Popup       = ""

Touchpad

HP zv5000 laptops have a Synaptics touchpad (this is the case of a lot of laptops). You can dowload the synaptics driver (there is a gentoo package, and probably for other distributions), and use it instead of the default driver. It allows you to configure a lot of things, for example disabling the click on tap when you are typing.

Install the driver

emerge synaptics libsynaptics

You have to modify your xorg.conf to use the driver :

In ServerLayout section :

InputDevice    "Touchpad"  "AlwaysCore"

In Module section :

Load  "synaptics"

And finally add the section :

Section "InputDevice"
  Identifier   "Touchpad"
  Driver "synaptics"
  Option "Device"  "/dev/input/mouse0"
  Option "Protocol" "auto-dev"
  Option "LeftEdge"      "20"
  Option "RightEdge"     "990"
  Option "TopEdge"       "20"
  Option "BottomEdge"    "730"
#  Option "FingerLow" "25"
#  Option "FingerHigh" "30"
  Option "MaxTapTime" "150"
  Option "MaxTapMove" "150"
  Option "MaxDoubleTapTime" "100"
#  Option "SingleTapTimeout" "50"
  Option "FastTaps" "1"
  Option "VertScrollDelta" "100"
  Option "MinSpeed" "0.25"
  Option "MaxSpeed" "0.80"
  Option "AccelFactor" "0.025"
  Option "SHMConfig" "true"
  Option "UpDownScrolling" "1"
#  Option "RTCornerButton" "0"
#  Option "BTCornerButton" "0"
##  Option "Repeater" "/dev/input/mouse0"
EndSection

Configure the touchpad

As you can see in the example of my xorg.conf there are a lot of options you can configure.

You can get a list of them with current values with

synclient -l

You can get some extra info (for example x,y,z position of your finger) with

 synclient -m 100

You can modify it to test it with

synclient MaxTapTime=150

and then put it in xorg.conf when you are sure of your modification.

Tips

Use the daemon

The daemon permits you to have more advanced features, such as disabling click on tape when typing.

You can run it for example with the command (see man page)

syndaemon -t -d -k -i 2

Wireless Broadcom BCM4306 802.11b/g

With the linux driver

Since 2.6.17-r2 kernel, linux supports Broadcom 43xx wifi cards.

First, enable options in the kernel config and recompile it :

Networking
--> Generic IEEE 802.11 Networking Stack
--> Software MAC add-on to the IEEE 802.11 networking stack

Device Drivers 
--> Network device support 
--> Wireless LAN (non-hamradio) 
--> BroadcomBCM43xx wireless support 
--> BCM43xx data transfer mode (DMA+PIO)

You have also to install the driver and wireless-tools :

emerge bcm43xx-fwcutter
emerge wireless-tools

Then find on your windows partition or download on the web your windows driver bcmwl5.sys, and excute the following line :

mkdir /lib/firmware
bcm43xx-fwcutter -w /lib/firmware bcmwl5.sys

(the path can change if not gentoo, see http://acx100.sourceforge.net/wiki/Firmware)

And finally either reboot or type :

rmmod bcm43xx
modprobe bcm43xx

To use it :

ifconfig eth1 up
iwconfig eth1 essid on
iwlist eth1 scan
iwconfig eth1 essid "name-of-the-essid-you-want"

Or more simply with gentoo :

cp /etc/init.d/net.eth0 /etc/init.d/net.eth1 # the first time
/etc/init.d/net.eth1 start                   # each time
Note

If your eth0 (ethernet card) is up, don't forget to disable it to use wifi, because Linux will still try to use it even if there is no cable :

ifconfig eth0 down        # for linux users
/etc/init.d/net.eth0 stop # for gentoo users

Using WPA

Install wpa_supplicant.

Configure your network in /etc/wpa_supplicant/wpa_supplicant.conf :

network={
   ssid="my-ssid"
   psk="my-pass-phrase"
   key_mgmt=WPA-PSK
   proto=WPA
 }

And finally in /etc/conf.d/net :

config_eth1=( "dhcp" )
modules=( "wpa_supplicant")
wpa_supplicant_eth1="-Dwext"

And you're done !

With ndiswrapper

This was the way to have wifi working before the kernel module, but it still works.

Installation

As root :

emerge ndiswrapper
# get bcmwl5.inf and bcmwl5.sys from windows installation
ndiswrapper -i /path_to_bcmwl5/bcmwl5.inf
Activation

As root :

modprobe ndiswrapper     # to load ndiswrapper (have wlan0 in iwconfig)
iwconfig wlan0 essid on  # to activate the card
dhclient wlan0           # DEBIAN-based : to get the ip
dhcpcd -n wlan0          # GENTOO-based : to get the ip
ifdown eth0              # to oblige to use wifi if eth0 is connected
 
sudo iwlist wlan0 scanning    # to see wifi networks

Nvidia drivers for GeForce4 440 Go

To have 3D acceleration, compile xorg with these flags in /etc/make.conf :

USE="aiglx dri" # or aiglx in package.use : xorg-server aiglx
VIDEO_CARDS="nvidia"

Then (you have to do it each time you rebuild your kernel) :

emerge nvidia-drivers

The video card is not compatible with drivers >= 100.0.0 (uses legacy driver, with version number < 100), so gentoo users have to add >=x11-drivers/nvidia-drivers-100.0.0 in /etc/portage/package.mask to not be bothered by updates.

Finally in /etc/X11/xorg.conf, set nvidia instead of nv for the driver in the Device section, comment dri in options and add glx.

[EN] http://www.gentoo.org/doc/en/nvidia-guide.xml
[FR] http://www.gentoo.org/doc/fr/nvidia-guide.xml