Results 1 to 5 of 5

Thread: Linux HOWTO (Card Setup)

  1. #1
    Linux Guru
    Join Date
    Jan 2005
    New Germany, Durban

    Default Linux HOWTO (Card Setup)

    This is a "howto" to get the 3G cards to work under Linux.
    This will be a work in progress so expect changes !!!
    If you find this how-to useful please post a little message at the end. I would like to put some stats together as to how many people read it, and from where in the world they are. Thanks !

    Kernel Version : 2.6.18 + Gentoo Patch set r6 (

    The following cards/phones works 100% with my scripts/configs:

    • Novatel U630
    • Option Fusion
    • Option Quad
    • Motorola E1000
    • Nokia 6680 (just don't set the speed/service - no 3gonly and 384k configs)
    • Option HSDPA Card
    • Novatel HSDPA Card
    • Huawei Card E620
    • Huawei Card E220

    You need to download the new wvdial.conf for the HSDPA stuff to work !!!

    I use Gentoo Linux which compiles everything from source. As a result of things might be a bit different but we can work around it. Firstly, we need to get Linux to detect your card, start your PCMCIA services - normally this can be done using (most distros do this for you):

    /etc/init.d/pcmcia start
    Before you insert your card, open a console/switch to an open console and as root run the following

    tail -f /var/log/messages
    This will allow you to "see" what Linux is doing

    Right, now insert your card and you should see some stuff happening. I have included log traces of what the two cards "look" like under /var/log/messages in the attachment section.

    If you see only the option_insert_nousb.txt messages using an option card run the following command:

    modprobe usbserial vendor=0x0af0 product=0x5000
    If you had to run the above command, you will need to save the vmc_g file attached into /etc/modules.d

    Now we need to find out where your card is - you will see in the messages where the card is - /dev/ttyS? for novatel or /dev/ttyUSB? for option

    find /dev/ | grep ttyS
    Should show /dev/ttyS0 or /dev/ttyS1 for a Novatel Card.

    find /dev/ | grep ttyUSB
    Should show /dev/ttyUSB0 and USB1 and USB2 for an Option Card. (or /dev/tts/ttyUSB0-2 for udev)

    Once we found that, we need to change /etc/wvdial.conf to match your settings, attached is my working wvdial.conf. Now we can start dialing up

    For Novatel:

    wvdial novatel internet 3gonly 384k
    For Option:

    wvdial option internet 3gonly 384k
    If you need to send your PIN, add "pin" infront of all the commands, e.g.

    wvdial pin novatel internet 3gonly 384k
    Once your connection is up - surf away Now you can setup things like KPPP and Gnome's Modem Lights to do your dialing for you.

    Extra Steps for the HSDPA card:

    Download the kernel module from the link below. Extract it to a directory somewhere safe. If you are *still* running the 2.4 series of kernels, you need to change the Makefile to reflect this.

    Compile the driver using the following commands:

    make clean && make
    Once this is done, run the following command to insert the module into the kernel

    insmod nozomi.ko (2.6 Kernel)
    insmod nozomi.o  (2.4 Kernel)
    Once you have done that, use the following command to setup the connection:

    wvdial hsdpa
    Extra steps for the Novatel U740 Card

    Until I get time to update the files etc. our Novatel Linux Users out there can just type this command before using the normal dialing command:

    modprobe usbserial vendor=0x1410 product=0x1400

    modprobe usbserial vendor=0x1410 product=0x1410
    Using lsusb will show you the Vendor and Product ID's or cat /proc/bus/usb/devices will do the same.I will still add them into the FAQ but atleast this should help for now

    This will add the USB's like the 3G Option did - am I seeing a swap here ? - so just dial /dev/ttyUSB0 or so - check the logs

    Extra Steps for the Huawei Cards:

    None really - just make sure usbserial is loaded and the card will come up on /dev/ttyUSB0 - check the logs again to confirm

    If the card doesn't come up, unload usbserial and reload with the following command:

    rmmod usbserial && modprobe usbserial vendor=0x12d1 product=0x1001
    I am still trying to work on the USB only card, so at the moment, I don't know if it will work under Linux.

    Huawei E220:

    I have found that this modem will only work with the short cable supplied...not the long one with two plugs...*shrug*

    Same as the E620, except use the following modprobe command:
    rmmod usb-storage
    modprobe usbserial vendor=0x12d1 product=0x1003 (Some have reported an ID of 0x1001 - use lsusb to confirm)
    After that, you will notice only one USB serial coming up, then, remove the device and re-attach it, you shouldn't need to re-insert usbserial.


    I have only seen 3G speeds on this device, but I think it is because of my RF conditions and location. More on this to follow...
    *Always* remove the usb-storage module - we have seen that it still causes problems even with the device detected correctly


    Option HSDPA Driver


    Q) How do I enable "Internet Connection Sharing"

    A) Since the 2.6 kernel is main stream etc. I will only cover IPTables and Kernel 2.6. I am also assuming that ppp0 is your dialup and eth0 is your lan

    Firstly - we need to add some rules to iptables - run the following commands:

    iptables -F (This will CLEAR ALL RULES !!!)
    iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

    then we need to enable routing:
    echo "1" > /proc/sys/net/ipv4/ip_forward

    That should do it - from here you can add rules to block incomming connections etc.

    Q) My card is broken/replies "ERROR" to all the commands

    A) You didn't send your PIN to the card - either add the "pin" command or disable the PIN on the SIM

    Q) My Novatel card is very slow - +-800 bytes per second

    A) Try running "setserial -a /dev/ttyS1 low_latency spd_warp" - replace /dev/ttyS1 with your port
    Once you have your setserial command, insert it into /etc/ppp/ip-up.local - this will cause the command to be ran everytime a connection is made.

    Q) What does all the wvdial sections do/mean?


    Defaults - What to do if nothing is selected (Always included)
    pin - send your pin to the card
    novatel - select the novatel card
    option - select the option card
    hsdpa - Option HSDPA card
    e1000 - select the E1000 via USB
    onboard - select the onboard modem of my notebook
    internet - select the internet APN
    internetvpn - select the internetvpn APN
    myapn - select your apn
    384k,144k,64k - select the speed of your 3G connection
    2gonly - select GPRS only
    3gonly - select 3G only

    Q) How do I see the usage under Linux

    A) Linux Usage (new)
    Linux Usage (old)


    • Make the Option card call "modprobe usbserial" by itself
    • Make the Novatel card register the second port under Linux
    • Do some research into the signal levels reported via +CSQ
    • Get the PIN to work with wvdial and Novatel

    Please do not post question in this thread - rather post them in the sub forum
    Last edited by Tazz_Tux; 03-03-2007 at 07:49 AM.

  2. #2

    Default Its still not working

    I have tried all that is provided in this post and i still can't connect to the internet using my E220 card in opensus 10.3

    Need some help here!!!

  3. #3


    Alternatively, you can download the Vodafone open source software from, install it, and forget your troubles.

  4. #4


    thanks for the solution LinuxRules... found helpful...

  5. #5

    Default Driver E220

    Quote Originally Posted by LinuxRules View Post
    Alternatively, you can download the Vodafone open source software from, install it, and forget your troubles.
    Where can I get a driver for Linux Linpus Lite for a E220 HSDPA MTN modem. Help!



Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts