Monday, November 19, 2007

Asus Eee PC and Sprint EVDO? Easy!

Like every other UMPC-toting geek out there, I broke down and bought an Asus Eee PC. It has a form factor I love, plus an actually-usable keyboard on which I can touch type. And at $399, it's the absolute cheapest laptop you can with this small of a form factor.

I figured it's be pretty hard to get my Novatel U720 EVDO USB modem working with it; I've used Linux before, but I'm not very knowledgeable when it comes to system internals and modem configuration. But, after giving it a shot today, it turned out to be super easy.



Here's how I did it.
  1. Go download the Linux PDF howto guide from Sprint's download page. You actually might not need this, but it might come in handy. (The guide focuses on KPPP, which doesn't help us as KPPP doesn't seem to be pre-loaded on the Eee.)
  2. Start up the Eee, and open up a console window. (Home -> Work -> File Manager -> Tools -> Open Console Window)
  3. Type the following commands:
    sudo modprobe -r usbserial
    sudo modprobe usbserial vendor=[VendorID] product=[ProductID]

    For the VendorID and ProductID, get those from this chart, which came from the Sprint instructions. For example, I have a Novatel U720 USB modem, so I typed:
    sudo modprobe usbserial vendor=0x1410 product=0x2110
  4. Now we need to create a handful of PPP scripts. Run this command:
    cd /etc/ppp/peers
    This will move you to the directory where these PPP scripts go.
  5. Type sudo nano sprint and an empty text editing window will open up in the simple "Nano" editor.
  6. Paste in this info:
    #the USB serial device of the EVDO PCMCIA card.
    ttyUSB0
    #your login information
    user [email protected]
    230400 # speed
    #debug
    defaultroute # use the cellular network for the default route
    usepeerdns # use the DNS servers from the remote network
    -detach # keep pppd in the foreground
    crtscts # hardware flow control
    #lock # lock the serial port
    noauth # don't expect the modem to authenticate itself
    connect "/usr/sbin/chat -v -f /etc/ppp/peers/sprint-connect"
    disconnect "/usr/sbin/chat -v -f /etc/ppp/peers/sprint-disconnect"
  7. Use the arrow keys to move to where it says YOUR_NUMBER. Delete that out and replace it with your Sprint modem's phone number.
  8. Hit ^X (control plus the X key).
  9. Answer yes when asked if you want to save.
  10. Hit return when it asks the filename; it will already be specified.
  11. Type sudo nano sprint-connect to open a new Nano editor window, then paste in this info.
    #time out is 20 because sometimes the card takes a little while to initalize
    TIMEOUT 20
    ABORT 'BUSY'
    ABORT 'NO ANSWER'
    ABORT 'NO CARRIER'
    SAY 'Starting Sprint\n'

    '' 'AT'
    'OK' 'ATQ0V1E0'
    'OK' 'ATZ'
    'OK' 'AT&F'
    # Dial the number
    SAY 'Connecting...\n'
    'OK' 'ATDT#777'
    CONNECT CLIENT
  12. Save this file by hitting ^X, like you did above.
  13. Type sudo nano sprint-disconnect to open a new Nano editor window, then paste in this info.
    "" "\K"
    "" "+++ATH0?
    SAY "Disconnected from Sprint."
  14. Save it by hitting ^X, like you did before.
  15. Now, to connect to Sprint, type:
    sudo pppd call sprint
It should connect, then sit there doing nothing. If it worked, you're online. Launch a web browser and surf on over to Google.

If it didn't work, try rebooting with the USB modem connected. Also try disabling the Wifi or wired ethernet, if that's how you're connected currently.

When you're done using the modem, go back to this window and hit ^C (control + C). That should close the Sprint connection, and tell you that it has been closed.

Credit: I got much of this info from this Ubuntu Forums post. I copied and cleaned up the actual information to paste, as the forum post copy had curly quotes that kept it from working.

All told, this only took about 15 minutes to set up. If you're not afraid of creating a text file or opening a shell window, it probably won't take you any longer than that to get up and running.

No comments: