HP zv5000

Laptop computer HP Pavilion zv5340ea


  • AMD Athlon64 3000+ 1.8GHz
  • RAM Infineon 2×256=512MB upgraded Kingston 1024+256=1.25GB
  • HD Hitachi 80GB 4200trs 8Mo, upgraded Toshiba 120GB 5400trs 8Mo (stopped spinning up …)
  • Nvidia GeForce4 420 Go 32MB
  • DVD+RW
  • Chipset nForce3
  • Ethernet 100Mb/s Realteak RTL-8139
  • Wifi 802.11b/g Broadcom BCM4306
  • 2 x USB1.1 + 1 x USB2.0
  • Firewire Texas Instruments TSB43AB21
  • PCCard Texas Instruments PCI1620
  • Digital Media reader SD-MS/pro-MMC-SM

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 :


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

  • Completely remove the two screws under the DVD player, so that you can remove the DVD player by pulling it out of its place. There is a hidden screw that you can only access by removing the DVD player.
  • Once you've taken out all screws on the bottom, you can pull out the piece at the top of the keyboard (with power & wifi & multimedia buttons). You'll have to use some brute force. Finish removing all visible screws (and remember ;-)).
  • If you want full access to the connector (and not only the solder), you'll have to remove also 4 big screws with springs that maintain the dissipator on the processor, and 3 little screws that maintain a small steel plate on the other side of the mainboard.

dissipator.jpg plate.jpg

  • To unplug the keyboard, the touchpad, and the facade buttons, try to pull the brown part before removing the ribbon cable.


  • Disassemble the screen, and take the wifi card out (let it connected to the screen, it's the antenna). Unplug the fans too.

My DC connector solder looked that :


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.


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 :

 brandname = "Hewlett-Packard"
 modelname = "Pavilion zv5000"
   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 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       = ""


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"

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.

  • To have vertical scrolling on the edge (and horiz scrolling too), you have to set RightEdge LESS than the maximum you can have with synclient -m 100, because it scrolls OUTSIDE of your declared touchpad size.

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 :

--> 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

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 :


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

config_eth1=( "dhcp" )
modules=( "wpa_supplicant")

And you're done !

With ndiswrapper

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


As root :

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

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

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

hardware/hp-zv5000.txt · Last modified: 2013/09/19 16:40 (external edit)
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0