Friday, August 1, 2008

X61s + T-Mobile UMTS

In case you're using a Lenovo X61s and wonder why you cannot connect to T-Mobile's UMTS service in Ubuntu 08.04, here's how you get there:

  1. Drivers are not an issue. Run lsusb and you'll see:

    ID 1199:6813 Sierra Wireless, Inc.

    Besides, lsmod | grep sierra should show:

    sierra 14468 0
    usbserial 35816 1 sierra
    usbcore 146028 5 sierra,usbserial,ehci_hcd,uhci_hcd


    And finally, you should have /etc/ttyUSB[0..2]


  2. Turn wireless on. First, the hardware switch (obviously). Secondly, open two consoles, run cat < /etc/ttyUSB0 on the first. Issue 'at!gstatus?' > /dev/ttyUSB0 on the second. You should see something like this:

    !GSTATUS:

    Current Time: 1312 Temperature: 51

    Bootup Time: 0 Mode: LOW POWER MODE
    ...

    Mode is important: If it's LOW POWER MODE, the UMTS LED on the case is off. To turn it on, issue echo 'at+cfun=1' > /dev/ttyUSB0 - the LED should turn on, Mode switches to ONLINE.


  3. Authorize. Check the PIN status using echo 'AT+CPIN?' > /dev/ttyUSB0 - if it says READY, proceed. +CPIN: SIM PIN means: issue your PIN with echo 'AT+CPIN=1234' > /dev/ttyUSB0


  4. Connect. Stop your cat < /etc/ttyUSB0-session beforehand. This chatscript (/etc/chatscripts/tmobile-connect) works for me:

    ABORT BUSY
    ABORT VOICE
    ABORT 'NO DIALTONE'
    ABORT 'NO DIAL TONE'
    ABORT 'NO ANSWER'
    ABORT DELAYED
    "" 'ATZ'
    OK 'AT+CGDCONT=1,"IP","internet.t-mobile"'
    ABORT 'NO CARRIER'
    OK 'ATD*99*1#'
    CONNECT \d


    ... and the wvdial (pppd)-config (/etc/ppp/peers/tmobile):

    /dev/ttyUSB0
    460800
    defaultroute
    usepeerdns
    nodetach
    crtscts
    lock
    noauth
    local
    debug
    connect "/usr/sbin/chat -v -f /etc/chatscripts/tmobile-connect"


    Connect by typing pon tmobile


Would be nice to see the power & PIN management in Ubuntu's network manager some day, wouldn't it?

1 comment:

Unknown said...

network manager 0.7 supports GPRS, comes with intrepid