HP un2400 3G modem in Linux

This is the steps I used to get my HP un2400 mobile broadband (3G) modem to work in Ubuntu GNU/Linux 10.04 Lucid Lynx on my HP 110c-1020so.

Now also work in Ubuntu GNU/Linux 12.04 Precise Pangolin on my HP Elitebook 6930p.

= Loading the modules at boot = To load qcserial and hp-wmi at boot write: > sudo -s # echo qcserial >> /etc/modules # echo hp-wmi >> /etc/modules

I've scripted all these steps into the install.sh-file included in the download. So if you run that file and everything works out fine, just reboot and you should be set. Start the Network Manager and set your connection up.

= Known problems and workarounds =

The modem doesn't come back up when the computer has been suspended
There can be two things, either that the /dev/ttyUSB0 device just doesn't exist or that the device exist but the network-manager hasn't picked it up.

To make sure the network manager picks it up type: sudo killall modem-manager

If the device isn't accessible I've been able to get it to connect again by flipping the network switch on my computer, flip it to off wait a while and then flip it to on again. Wait and it usually comes up, if the ttyUSB-device is there but it doesn't show up in the network manager try the above tip for modem-manager.

The ttyUSB device gets created but nothing makes it connect
Did all go well with loading the device with drivers? Disconnect the modem by flipping the WiFi network switch to off and on again while running: tail -f /var/log/syslog Now you can see what's happening while the device is getting loaded.

= Download = un2400-linux.tbz2 37MB.

The download contains: I've also included the patch I used and the source for the gobi_loader.
 * The gobi_loader as an executeable
 * The gobi_loader 0.5 source
 * The kernel patch for 2.6.32
 * The firmware files I use
 * A .deb of the Linux kernel with all modules. I made it easy for myself and just packed the entire kernel up instead of figuring out which modules you need to load.

Untar the download and run install.sh and hopefully it'll all work after a reboot.

Holding back updates for the kernel
If you've installed a patched kernel you may not want to recompile every time Ubuntu updates the kernel. I've set my custom kernel as held so Ubuntu wont overwrite it for me: # echo "linux-image-2.6.32-21-generic hold" | dpkg --set-selections

= Update for 12.04 users = I've installed the gobi loader v07, it is working on my HP Elitebook 6930p with the un2400 gobi 1000 WWAN module, it's not necessary to patch the kernel, the only things to do are extract the drivers from the correct softpaq.exe (in my case sp48568.exe) and copy amss/apps.mbn in the right folder "/lib/firmware/gobi", then type in terminal:

> modprobe qcserial > modprobe hp-wmi > ls /dev/ttyUSB*

and: > sudo -s # echo qcserial >> /etc/modules # echo hp-wmi >> /etc/modules

reboot your system, and that's it.

My kernel is 3.2.0-24-generic.



= Sources =
 * http://ubuntuforums.org/archive/index.php/t-1008200.html
 * This thread on Ubuntuforums has all the information I needed to get my modem working, but it's a long thread and can get confusing.
 * http://www.codon.org.uk/~mjg59/gobi_loader/
 * Homepage of the gobi_loader software by Matthew Garret as well as the patch to the Linux kernel
 * https://help.ubuntu.com/community/Kernel/Compile
 * Kernel compilation guide for Ubuntu
 * http://www.debian-administration.org/articles/67
 * For holding back package upgrades
 * http://h10025.www1.hp.com/ewfrf/wc/softwareDownloadIndex?softwareitem=ob-78276-1&lc=sv&dlc=sv&cc=se&lang=sv&os=228&product=3975708
 * The WWAN/modem-driver I downloaded and used to get the firmware