Installing Kubuntu/Ubuntu/Xubuntu 12.04 LTS (Precise Penguin) on a Lenovo Thinkpad X201 is very simple: boot from the CD and follow my instructions for 10.04. Everything works out of the box – except for the UMTS WWAN modem that is an option on the X201.
Getting the Qualcom Gobi 2000 UMTS WWAN modem to work is made complicated by the fact that the firmware is loaded into the device at runtime, instead of being stored in flash memory. ThinkWiki explains the procedure in general terms.
Here’s a simple ‘HowTo’-style procedure to follow:
# Get the driver package.
wget http://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles/7xwc48ww.exe
# Unpack it.
wine 7xwc48ww.exe
# You will get a number of errors here, which can be ignored.
wine msiexec /a ~/.wine/drive_c/DRIVERS/WWANQL/Driver/GobiInstaller.msi /qb TARGETDIR=C:\\DRIVERS\\GOBI
# Copy the firmware to the location required by the Linux driver.
sudo mkdir -p /lib/firmware/gobi
sudo cp .wine/drive_c/Program\ Files/QUALCOMM/Images/Lenovo/6/UQCN.mbn /lib/firmware/gobi/
sudo cp .wine/drive_c/Program\ Files/QUALCOMM/Images/Lenovo/UMTS/amss.mbn /lib/firmware/gobi/
sudo cp .wine/drive_c/Program\ Files/QUALCOMM/Images/Lenovo/UMTS/apps.mbn /lib/firmware/gobi/
# Install the firmware loader.
sudo add-apt-repository ppa:linrunner/thinkpad-extras
sudo apt-get update
sudo apt-get install gobi-loader-tp
# Reload the ‘qcserial’ module, which loads the firmware, so we don’t need to
# reboot.
sudo modprobe -r qcserial
sudo modprobe qcserial
After about a minute, you should be prompted for the SIM card PIN.
You can now add a connection using the Network Manager (Ubuntu/Xubuntu) or Network Management Settings (Kubuntu). That’s it!
Note: I had massive problems connecting to O2. Whenever I tried to establish a connection, an icon would flash briefly in Network Manager, then the connection would go back to idle. The only indication of a problem was in /var/log/syslog:
NetworkManager[954]: Activation (ttyUSB1) Stage 1 of 5 (Device Prepare) complete.
NetworkManager[954]: GSM connection failed: (32) Operation not supported
NetworkManager[954]: (ttyUSB1): device state change: prepare -> failed (reason 'unknown') [40 120 1]
NetworkManager[954]: Marking connection 'O2 - Pay-by-MB' invalid.
NetworkManager[954]: Activation (ttyUSB1) failed.
NetworkManager[954]: (ttyUSB1): device state change: failed -> disconnected (reason 'none') [120 30 0]
NetworkManager[954]: (ttyUSB1): deactivating device (reason 'none') [0]
It turns out that I had inadvertently enable the PPP Authentication option. It appears that many MNOs (including O2) don’t support authentication using PPP and the connection simply fails. As soon as I turned off authentication, the connection came up within seconds.

3 comments
Comments feed for this article
September 25, 2015 at 13:12
stefan
Thank You! Same procedure worked with Linux-Mint lmde2 Betsy (concerning the firmware and driver)
November 10, 2017 at 07:41
Daniel Escasa
Isn’t the .exe a zipped file that you can extract directly?
December 5, 2017 at 21:38
Christian
I don’t know. Probably. You need wine to unpack the .MSI, so it did not really matter to me.