Ubuntu Linux + Dell Wireless 5700 CDMA/EVDO Card

Posted on June 3rd, 2007 in Tech Tips by gmendoza

UPDATE (11-04-2008): NetworkManager 0.7 has been introduced with Ubuntu 8.10. This major overhaul includes native support for Mobile Broadband card as shown in the screen-shots below. The great news is that virtually all CDMA cards work right out of the box with no configuration necessary. Thank you, NetworkManager developers! I suggest upgrading to the latest version of Ubuntu, or use the NetworkManager PPA or SVN to at least upgrade to version 0.7.

ORIGINAL POST: Great news! The internal Dell Wireless 5700 Mini PCI Express Card for use with CDMA/EVDO networks is very easy to get working with Linux. The following tutorial was written for Ubuntu 7.04 (and works with 7.10 Gutsy), but the procedures are essentially the same for most Linux distributions. Please consult with your distribution documentation to assist with any differences.

Here’s how to get it going.The card is presented to the operating system as a USB device and is used as a dialup modem via the “usbserial” kernel module. You load this kernel module with two variables that are specific to your wireless card; the Product and Vendor Identifiers.

You can find these values by listing the USB devices with “lsusb”.

$ lsusb
Bus 005 Device 001: ID 0000:0000
Bus 003 Device 002: ID 413c:8103 Dell Computer Corp. Wireless 350 Bluetooth
Bus 003 Device 001: ID 0000:0000
Bus 004 Device 002: ID 413c:8114 Dell Computer Corp.
Bus 004 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 003: ID 046d:08c6 Logitech, Inc.
Bus 001 Device 001: ID 0000:0000

Although not obvious, the above output shows the 5700 wireless card as being on Bus 004 Device 002. The Vendor ID is 413c, and the Product ID is 8114. You can verify this by running “sudo lsusb -v | less” and search through the output for the device details.

$ sudo lsusb -v | less
Bus 004 Device 002: ID 413c:8114 Dell Computer Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x413c Dell Computer Corp.
idProduct 0x8114
bcdDevice 0.00
iManufacturer 1 Novatel Wireless Inc.
iProduct 2 Novatel Wireless EXPD CDMA
iSerial 0
bNumConfigurations 1

Note: For a nice graphical view of you USB devices, check out “usbview”, which you can install with “sudo apt-get install usbview”. Here’s a screenshot of usbview in action, showing the specifics of my card:

USBView Screenshot

Next you need to load the appropriate kernel module with values from above in the following format:

$ sudo modprobe usbserial vendor=0x413c product=0x8114

Typically, your card will map itself to “ttyUSB0″. You can check by looking through your kernel logs.

$ grep tty /var/log/messages
Jun 2 18:10:49 laptop kernel: [ 18.920000] usb 4-2: generic converter now attached to ttyUSB0

You should ensure that your computer loads the usbserial kernel module at bootup by adding the same variables to /etc/modules.

$ sudo sh -c 'echo usbserial vendor=0x413c product=0x8114 >> /etc/modules'

Now to actually configure your device for use, simply use your favorite dial-up configuration utility. I prefer “pppconfig”, so here’s the basic steps:

$ sudo pppconfig

Select “Create a connection”
Provider Name: verizon
Select “Dynamic DNS”.
Select “PAP” as the Authentication method
Username: phone_number_here@vzw3g.com
Password: anything… “password” for example.
Speed: 115200
Select “Tone”
Phone Number: #777
Define device as “ttyUSB0″

I also add the following two lines to /etc/ppp/peers/verizon to prevent annoying automatic disconnections due to a lack of lcp responses.

$ sudo sh -c 'echo lcp-echo-failure 0 >> /etc/ppp/peers/verizon'
$ sudo sh -c 'echo lcp-echo-interval 0 >> /etc/ppp/peers/verizon'

My completed /etc/ppp/peers/verizon configuration looks like the following:

# This optionfile was generated by pppconfig 2.3.15.
#
#
hide-password
noauth
connect "/usr/sbin/chat -v -f /etc/chatscripts/verizon"
debug
/dev/ttyUSB0
115200
defaultroute
noipdefault
user "5551112222@vzw3g.com"
remotename verizon
ipparam verizon
usepeerdns
lcp-echo-failure 0
lcp-echo-interval 0

Add the following lines to your /etc/network/interfaces file:

iface ppp0 inet ppp
provider verizon

Restart Network Manager so that it reads the change from the last step.

$ sudo /etc/dbus-1/event.d/25NetworkManager restart

By doing so you will be able to connect and disconnect from Network Manager:

Network Manager Verizon EVDO Connection

You should receive an IP address within a few seconds, and you’re ready to surf. One thing I noticed is that there’s a lack of notification from Network Manager that your dial-up connection is actually up and running after a successful connection. The status icon does not change, and the “Connection information” menu item remains unavailable. You can of course use “ifconfig” to display your current IP address and status of the ppp0 interface.

If you look at /var/log/messages, you will also find all the nice pppd connection output.

29 Responses to 'Ubuntu Linux + Dell Wireless 5700 CDMA/EVDO Card'

Subscribe to comments with RSS or TrackBack to 'Ubuntu Linux + Dell Wireless 5700 CDMA/EVDO Card'.

  1. Andy said,

    on October 25th, 2007 at 12:27 pm

    This was the best blog of the week!! Super helpful and worked on the first try!!

  2. gmendoza said,

    on October 25th, 2007 at 7:15 pm

    Thanks for stopping by and commenting on your results. I’m very glad it helped you out.

  3. Andy said,

    on October 30th, 2007 at 2:15 pm

    Well, it worked and then I broke it….go figure for some reason my verizon card is binding to a different bus, and I continue to get this alarm from /var/log/messages — then Failed Exit..any thoughts?

  4. gmendoza said,

    on October 30th, 2007 at 3:58 pm

    If you’d like, hit me up off line at gmendoza at gmail dot com. It’s probably something fairly simple.

  5. sam said,

    on November 1st, 2007 at 11:12 pm

    Just what I needed to get usb720 working with kubuntu fiesty. I note: card is plug & play recognized in 7.04. ie:
    dmesg | grep -i air
    usb 1-2: airprime converter now attached to ttyUSB0
    On verizon, you can give any username & password, since the hardware is authenticated to their network.
    Thanks for helping get my network-manager working in a mostly sane manner.

  6. gmendoza said,

    on November 2nd, 2007 at 11:35 am

    Cool deal. Glad to have helped. Yeah, I also recently noticed that you can use any user name and password with Verizon’s cards. Makes it easy.

  7. Chris Flynn said,

    on November 20th, 2007 at 11:47 am

    Well I keep getting no carrier after AT&FATDP#777^M^M
    Any ideas?

  8. Chris Flynn said,

    on November 20th, 2007 at 11:52 am

    Of those 2 last messages I posted, I can’t get ubuntu to save the fact I want to use tones not pulses.. Either way it won’t connect

  9. Dave Vre said,

    on November 21st, 2007 at 8:34 pm

    Fantastic instructions…worked like a charm on 7.10 (Gutsy).

    Any ideas on how to get the notification area applet to work?

  10. gmendoza said,

    on November 21st, 2007 at 11:05 pm

    Dave,

    Cool deal. PPP support of Network-Manager is not as mature as it should be. I have been digging around for some time on this, and unfortunately, I have not found anything that will give us connection information or status for dialup connections. Of course, one can ask the Network-Manager developers on their mailing list:

    http://mail.gnome.org/mailman/listinfo/networkmanager-list

    There was a recent thread regarding PPP, which pretty much sums up for now.

    http://mail.gnome.org/archives/networkmanager-list/2007-November/msg00043.html

  11. gmendoza said,

    on November 21st, 2007 at 11:14 pm

    Chris,

    Sorry for the delayed response. Has your card ever worked?

    There’s a couple things to note with Verizon cards.

    1. The card must be active on Verizon’s network. There’s an activation process for some (if not all) of the cards. Unfortunately, from my understanding, the software that ships with the card does this for you the first time you connect. This is done through Windows of course, but only needs to be done once.

    2. If your card was already activated, and you get no carrier, I read that as layer-1 issue. i.e. card malfunction, poor signal, or related to the issue mentioned above.

    What card model are you using? Visit my contact page, shoot me an email, so we can take up this issue off line.

  12. Bruce said,

    on November 28th, 2007 at 10:33 pm

    I can’t get the usb viewer installed. Help!

    Thanks

  13. gmendoza said,

    on November 28th, 2007 at 10:49 pm

    No worries about “usbview”. Apparently it’s broken in Gutsy anyway, as the file it relies on (/proc/bus/usb/devices) no longer is recreated as it’s removed from the init scripts.

    https://bugs.launchpad.net/ubuntu/gutsy/+source/usbview/+bug/156085

    Just rely on “lsusb”.

  14. benson margulies said,

    on December 7th, 2007 at 3:16 pm

    I’m not doing too well with a V640. First of all, the network applet remains completely ignorant of this. So, I tried explicitly running pon, and I get:

    Dec 7 17:15:15 bim1330 pppd[7614]: pppd 2.4.4 started by root, uid 0
    Dec 7 17:15:16 bim1330 chat[7616]: abort on (BUSY)
    Dec 7 17:15:16 bim1330 chat[7616]: abort on (NO CARRIER)
    Dec 7 17:15:16 bim1330 chat[7616]: abort on (VOICE)
    Dec 7 17:15:16 bim1330 chat[7616]: abort on (NO DIALTONE)
    Dec 7 17:15:16 bim1330 chat[7616]: abort on (NO DIAL TONE)
    Dec 7 17:15:16 bim1330 chat[7616]: abort on (NO ANSWER)
    Dec 7 17:15:16 bim1330 chat[7616]: abort on (DELAYED)
    Dec 7 17:15:16 bim1330 chat[7616]: send (ATZ^M)
    Dec 7 17:15:16 bim1330 chat[7616]: expect (OK)
    Dec 7 17:16:01 bim1330 chat[7616]: alarm
    Dec 7 17:16:01 bim1330 chat[7616]: send (AT^M)
    Dec 7 17:16:01 bim1330 chat[7616]: expect (OK)

    in the log.

  15. Sugleknug said,

    on December 15th, 2007 at 8:04 am

    Will this work for the Dell 5520 HSDPA card also?

  16. gmendoza said,

    on December 15th, 2007 at 8:48 am

    Most of the instructions will work, as these cards typically all use the same usbserial kernel module. If this is not a Verizon card, there may be additional variables you may have to add to your ppp configuration.

  17. Mark said,

    on December 18th, 2007 at 1:12 pm

    Thanks for the blog. Works great, except everytime I restart my system, the interfaces file reverts to “provider ppp0″. I have to change it to verizon and restart the dbus daemon. Why is my change not sticking?

  18. Will Smith said,

    on December 21st, 2007 at 10:07 pm

    Awesome write-up! I just installed Ubuntu on my Dell XPS M1210 today and had the Verizon Broadband working in short order thanks to you.

  19. Jonathan Rhodes said,

    on January 29th, 2008 at 11:40 pm

    Excellent advice. Thanks. Works with the Dell 5520 HSDPA modem too and is somewhat easier than getting it to work with Vista.

  20. Zaigui Wang said,

    on March 29th, 2008 at 12:36 am

    Perfect! Just what I am looking for. A couple of points to make:
    - the ‘usbserial’ module actually is loaded by the airprime driver
    - don’t blacklist the ‘airprime’ driver, as it is supposedly better suited for wireless broadband access than usbserial.

    I am on Ubuntu 7.10. I did not have to load any extra module. Just start right from ‘pppconfig’…

  21. Frank Spin said,

    on July 28th, 2008 at 4:40 am

    This blog was a great find as my broadband card is the only thing that would make me switch back. Unfortunately I ran into errors while configuring the card. When I would run the iface command it would come back as “iface is not a recognized command”. Any ideas?

  22. gmendoza said,

    on July 28th, 2008 at 7:38 am

    Hi there. Thanks for visiting. Not every Linux distro uses the “ifup” command. However, if you have set up the dial-up profile correctly, then simply use the following command, replacing “verizon” with the name of the provider you specified in pppconfig:

    pppd call verizon

    Another command that typically works, and my preference since you can bring the connection up and down easily:

    pon verizon
    poff verizon

    If you run into errors… use another terminal and view the logs in real time:

    tail -f /var/log/syslog

    On a side note, I also noticed that a recent code formatting plugin for my site messed up a few characters in the post, namely the right arrows “>”. Please check to make sure the redirected echo commands didn’t run into issues.

    Looking the post over, I really need to update it for the upcoming NetworkManager versions which now include better handling of wireless dial-up connections. Stay tuned.

  23. Michael Phillips said,

    on August 1st, 2008 at 10:03 pm

    On a fresh install of Hardy Heron I also had a problem with usbview, however after following this post it worked…
    http://ubuntuforums.org/showthread.php?p=5403792
    “Make sure you have usbfs mounted, which can be found in /etc/fstab, by adding the following line:

    Code:
    #
    none /proc/bus/usb usbfs defaults

    Then ‘mount -a’ to make sure its mounted. You should now have a /proc/bus/usb directory heirarchy. The “new” udev and libusb will be using /dev/bus/usb, but many applications still use /proc/bus/usb, so we’ll mount it until that gets deprecated.”

  24. J said,

    on October 30th, 2008 at 5:02 pm

    Do I have to have ubuntu on the internet via some other means for this to work?

  25. Paul Zimmerman said,

    on November 11th, 2008 at 11:06 pm

    I love this info! I have used it a ton!

    Here’s my question : Since my CMDA embedded card isnt supported yet with NM .7, can you create instructions to have it added to the NM menu like you did for the older NM? I ask becasue that would make it seamless to hop onto my CDMA network (the command line way works fine too)

    Thanks!

  26. gmendoza said,

    on November 15th, 2008 at 12:37 am

    Hey there. Unfortunately, it does not look like NM 0.7 will give you that menu item as 0.6 did. It’s probably being phased out with the introduction of the newer method of handling broadband cards. The CLI or some of the other ppp front ends will work for you. You could always try the latest NM from their PPA, and also keep up to date with the mbca project.

  27. ErikG said,

    on November 21st, 2008 at 9:02 pm

    Hey,
    I’m a total Linux newbie. Just bought an Acer Aspire One with Linpus on it, intending to use with Verizon broadband. I got the USB720 and have not been able to get anywhere with it. As someone who has been trapped in the M$ world for 20 yrs, all these command lines are confusing. I can get to Terminal, but nothing seems to work. e.g., lusb returns command not found. I thought Mobile Partner might help, but no.

    I’m starting to think that maybe Linpus is the prob, and I need Ubuntu. Any advice for a newbie to get my USB720 up and running? Thanks!!

  28. gmendoza said,

    on November 22nd, 2008 at 4:34 am

    Hi ErikG… while I have not used Linpus, most of the underlying commands are all the same as long as they are installed. I noticed that you said “lusb” returns command not found. Unless your comment had a typo, it should be “lsusb”. This command is part of the Linux USB Utilities, which is typically included in most distributions of Linux.

    Now, if Linpus has given you a default kernel with USB Serial support, then you should be able to use the card without issue. It’s just a matter of enabling the kernel module and associating it with the card (which may already be done for you). As this post is tested for Ubuntu, feel free to contact me off-line instead of this comment area. My contact info is available via my contact page.

  29. Rob said,

    on January 2nd, 2009 at 3:47 pm

    Can the 5700 be set up to work on Crickets wireless network? I’m interested in their service but don’t want to be restricted to the USB wireless modem Cricket offers. The expresscard seems a little more feasible for my Lenovo S10. I’m currently running Ubuntu 8.10.

Post a comment