Wednesday 1 February 2012

3G using a Huawei E1552/E1800 (HSPA modem) on Ubuntu

So my internet service provider is rolling out a programme of speed upgrades and over the past few weeks I've suffered from various connectivity issues most probably because of infrastructure upgrades.   I lost connectivity today at 6am and was told to expect to be connected by 9pm, so I popped down town and acquired a 3G USB dongle and a suitable data plan/ contract for my needs.

Typically these USB dongles are designed to appear as USB media devices (e.g. pseudo CD-ROM) and one has to mode switch it to a USB modem.   Unfortunately I had a Huawei E1552/E1800 which required some USB mode switching magic, but to find this I first required internet connectivity.   Fortunately I had a sacrificial laptop which I installed an old version of Windows XP which allowed me to then connect to the internet using the 3G USB dongle and I was able to then track down the appropriate runes.  OK, I feel bad about installing Windows XP, but I was being pragmatic - I needed connectivity!

The procedure to get this device working on Ubuntu wasn't too bad.  First I identified the USB dongle using lsusb to get the vendor and product IDs (12d1:1446):

Bus 002 Device 013: ID 12d1:1446 Huawei Technologies Co., Ltd. E1552/E1800 (HSPA modem)

Then I added the following runes to /etc/usb_modeswitch.conf -

 DefaultVendor= 0x12d1  
 DefaultProduct=0x1446  
 TargetVendor= 0x12d1  
 TargetProductList="1001,1406,140b,140c,141b,14ac"  
 CheckSuccess=20  
 MessageContent="55534243123456780000000000000011060000000000000000000000000000"  

..this appears in many forums on the internet, kudos to whoever figured this out.

Then I ran "sudo usb_modeswitch -c /etc/usb_modeswitch.conf" and this switched the dongle into:

Bus 002 Device 012: ID 12d1:14ac Huawei Technologies Co., Ltd.

..and I was then able to simply connect using network manager.   Result!

** UPDATE **

Mathieu Trudel-Lapierre fixed this (9th Feb 2012) and now Ubuntu Precise works perfectly with the  Huawei E1552/E1800.  Thanks Mathieu!

6 comments:

  1. {usb-modeswitch Debian maintainer hat on}

    Note that this is supposed to be working without any manual tweaking needed if usb-modeswitch and usb-modeswitch-data (>= 20100110) are installed.

    That version of usb-modeswitch-data is available in both Debian stable and Ubuntu Lucid.

    So in short, you should "just" have downloaded the usb-modeswitch and -data packages for your post-Lucid Ubuntu release, have installed them and it should be working.

    If it's not, it's a bug; so please report it. :-)

    ReplyDelete
  2. With Ubuntu 12.04 Precise and a Dell XPS-15Z laptop, it only work on the usb2/esata port, but not on the usb3 ones !

    ReplyDelete
    Replies
    1. @Sly, if other USB3 devices work in the USB3 port then I would file a bug in LaunchPad

      Delete
  3. Wow! Man thanks!

    I spent 3 days trying a solution and nothing until i find this!

    congratulations!

    ReplyDelete
  4. Thank you very much! Now I can connect to my modem..

    ReplyDelete
  5. Works fine on Debian Jessie. Thank you.

    ReplyDelete