Differences between revisions 2 and 45 (spanning 43 versions)
Revision 2 as of 2007-02-21 08:31:24
Size: 6530
Editor: Mac
Comment:
Revision 45 as of 2018-10-04 08:09:49
Size: 13708
Editor: ?ArtoKeiski
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from 3G modem
#language en
##
## hints for wiki contributors about 3G modem:
## - write hints/guidelines here.
##
## Remember, it's important (for search engines) that title actually
## contains words relevant to the page content. ("introduction" don't help)
##
~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: English - [[it/Modem/3G|Italiano]]-~
----

## If your page gets really long, uncomment this Table of Contents
<<TableOfContents(2)>>
= Hardware Support =
Line 3: Line 18:
 * Novatel U630
 * Option Fusion
 * Option Quad
 * !BandLuxe C100
 * Huawei/E176 (works out of the box)
 * [[#Huawei_E169|Huawei/E169]] works without any problems
 * [[Huawei/E220]]
 * Huawei/E620
 * [[Huawei/K3565-Z]]
Line 8: Line 26:
 * [[NokiaN80|Nokia N80]] (with a nice How-To [[UseYourCellPhoneAsModem]])
 * Novatel HSDPA Card
 * Novatel Merlin U630
 * Option Fusion
Line 9: Line 31:
 * Novatel HSDPA Card
 * Huawei E620
 * ["Huawei E220"]

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

This was originally written for ["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):   Code:
/etc/init.d/pcmcia start Before you insert your card, open a console/switch to an open console and as root run the following


Code
:
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:


Code:

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


Code
:
find /dev/ | grep ttySShould show /dev/ttyS0 or /dev/ttyS1 for a Novatel Card.


Code:

find /dev/ | grep ttyUSBShould 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:


Code:
["wvdial"]
novatel internet 3gonly 384kFor Option:


Code:

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


Code:

wvdial pin novatel internet 3gonly 384kOnce 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.
 * Option Quad

= Installation with PPP and /etc/network/interfaces =
This works with Debian Wheezy 7.

Install the packages DebianPkg:netbase, DebianPkg:ifupdown, and DebianPkg:ppp if you don't have them already:
{{{
apt-get install netbase ifupdown ppp
}}}

Create a file {{{/etc/ppp/peers/gprs}}} with this content:
{{{
user "YOUR_USER
NAME"
connect "/usr/sbin/chat -v -f /etc/chatscripts/gprs -T YOUR_APN"
/dev/ttyUSB0
noipdefault
defaultroute
replacedefaultroute
hide-password
#lcp-echo-interval 30
#lcp-echo-failure 4
noauth
persist
#mtu 1492
#maxfail 0
#holdoff 20
usepeerdns
#Optional, make it always appear as ppp2:
#unit 2
}}}

Then edit {{{/etc/ppp/chap-secrets}}} and add at the end:
{{{
"YOUR_USERNAME" * "YOUR_PASSWORD"
}}}

Similarly, edit {{{/etc/ppp/pap-secrets}}} and add at the end:
{{{
"YOUR_USERNAME" * "YOUR_PASSWORD"
}}}

Then edit {{{/etc/network/interfaces}}} and add the following:
{{{
auto gprs
iface gprs inet ppp
provider gprs
}}}

That's all you need most of the time.
The connection will be brought up at boot, you can start it with {{{ifup gprs}}} or stop it with {{{ifdown gprs}}}.

= Advanced Installation with WVDial =
You need to download the new wvdial.conf for the
HSDPA stuff to work !!!

This was originally written for 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):

Before you insert your card, open a console/switch to an open console and as root run the following
:
{{{
invoke-rc
.d pcmciautils start
}}}


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


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 {{attachment: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 [[attachment: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 [[attachment:wvdial.conf]] (this one is tested on GSM network Play in Poland, with e169 modem, but uses no specific options so should be very portable).
The file is:
{{{
[Dialer Defaults]
Modem = /dev/ttyUSB0
Baud = 3600000
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CPI
N="0000"
Phone = *99#
Username = ppp
Password = ppp
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 1
Compuserve = 0
Idle Seconds = 0
ISDN = 0
Auto DNS = 1
}}}

Init3 PIN number above is to unlock SIM card. If your SIM does not have a PIN number, you don't need it. Some SIM cards do not need the PIN to work as modems.

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.
Line 63: Line 164:


Code:

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


Code
:
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:


Code:

wvdial hsdpa Extra steps for the Novatel U740 Card
{{{
make clean && make
}}}

Once this is done, run the following command to insert the module into the kernel
{{{
insmod nozomi.ko
}}}

Once you have done that, use the following command to setup the connection
:
{{{
wvdial hsdpa
}}}

==
Extra steps for the Novatel U740 Card ==
Line 78: Line 180:


Code:
["modprobe"] ["usbserial"]
vendor=0x1410 product=0x1400OR


Code:

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
{{{
modprobe usbserial
vendor=0x1410 product=0x1400
}}}
OR
{{{
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 at least 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
Line 94: Line 196:


Code:
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:
{{{
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.

<<Anchor(Huawei_E169)>>
== Huawei E169 ==

Tested by [[UserRfree|rfree]] on Debian Wheezy with Polish operator Play. All works well:

 * make sure with ```stat /dev/ttyUSB0``` that such device-file is (re)created when you connect the modem (and wait 10 seconds), the date of file should change.
 * if device-file is not created (or if something does not work) then force the modem to work as modem only instead as card-reader/memory, using:
{{{
rmmod usb_storage
modprobe usbserial vendor=0x0af0 product=0x5000 # (or adjust vendor and product
number to the ones you see in dmesg or lsusb when you look for your modem)
}}}
 * copy the attached example file [[attachment:wvdial.conf-e169]] to /etc/wvdial.conf
 * run ```wvdial``` (install wvdial if you don't have it) - and should be done

== Huawei E220 ==
Line 104: Line 221:

Code:
{{{
Line 107: Line 223:
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.

Notes:
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.

== Notes ==
Line 113: Line 231:
Attachments:

wvdial.conf
novatel_insert.txt
option_insert_nousb.txt
option_usbserial.txt
vmc_3g
Option HSDPA Driver

== FAQ ==

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 !!!)
= How to connect using a Franklin U210 USB wireless/WAN/mobile broadband modem =
Though this section needs work, it documents how one Debian user connects to the Internet over NTelos' cellular network in the United States using a Franklin CDMA EV-DO U210 USB modem. NTelos uses Sprint's network, and moreover it would appear that Franklin's U210 is the base model of Franklin's U-series (U210, U600, U601, U602, U770, U772), so there is a reasonably good chance that you can use this information even if your situation differs somewhat from the writer's -- but, as they say, your mileage may vary.

This advice is targeted to the beginning-to-intermediate user. Advanced users are challenged to edit the wiki to improve the advice.

Your Franklin USB modem presents itself to the wireless network as though it were a cell phone. It has a phone number. To connect, it calls another phone number. On NTelos' (and presumably also on Sprint's) network in the United States, the phone number your USB modem must call is "#777". You need not, but probably can, discover your USB modem's own phone number by logging into your account on your cellular provider's website. The only number you need today however is the "#777".

As root or via sudo(1), install the Debian package "wvdial", for instance by

{{{
$ sudo apt-get install wvdial
}}}

If desired, save the original state of /etc/wvdial.conf using RCS's ci(1) or the like (you can ignore this advice re RCS if you neither know nor care what it is about). Edit /etc/wvdial.conf to look something like this:

{{{
[Dialer Defaults]
Stupid Mode = true
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = USB Modem
Baud = 460800
New PPPD = yes
Modem = /dev/ttyACM0
ISDN = 0
Phone = #777
Password = <Your Password>
Username = <Your Login Name>
}}}

The important lines are the "Stupid Mode = true" and the "Phone = #777". You need not fill in a password or username.

Edit "/etc/group" [again after using ci(1) first if you wish] to change

{{{
dialout:x:20:
}}}

to

{{{
dialout:x:20:foo
}}}

typing your username in place of "foo".

At this point, you may need to log out and log back in to get the system (which part of the system? not sure) to recognize that you now belong to the "dialout" group. If unsure, check with the groups(1) command.

Plug in your USB modem if you have not already done so. Not as root but as yourself, give the command "wvdial" at the terminal's command line. If all goes well, this should connect you to the Internet over your cellular network. Later, press <Ctrl-C> to disconnect.

One is given to understand that the "usb-modeswitch" package may be necessary if your USB modem has not been used before. The writer has neither met nor tested the circumstance in question.

To state the obvious: the procedure should be expected to work only if you have paid a subscription to the cellular network.

It is not asserted that the procedure were the smoothest possible, but the procedure does have the virtue of being relatively obvious in its operation. Refinements may occur to the interested user.

##==== Attachments ====
##<<AttachList>>

= FAQ =

 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. <<BR>> Firstly - we need to add some rules to iptables - run the following commands:
{{{
#This will CLEAR ALL RULES !!!
iptables -F
#Enable NAT (through the ppp0 interface)
Line 133: Line 299:
then we need to enable routing: #then we need to enable routing:
Line 135: Line 301:

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?

A)

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   TODO:
}}}
 ::
That should do it - from here you can add rules to block incomming connections etc.

 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

 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 <<BR>> 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.

 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

 How do I see the usage under Linux ? :: ToDo Linux Usage

=
TODO =
Line 175: Line 330:

= Resources =
 * [[Modem/3G/Cards]]
 * [[Modem/3G/FAQ]]
 * [[Modem/3G/Vodafone]]

= External Links =
## * http://www.pharscape.org/index.php?option=content&task=view&id=29 - GPRS !HowTo
 * http://www.peck.org.uk/GlobeTrotterGPRShowto.html - GPRS !HowTo
 * [[WikiPedia:Vodafone_Mobile_Connect_USB_Modem]]
 * http://markus.wernig.net/en/it/usb-serial-handy-ppp.phtml - How to connect a cell phone via USB to a Linux laptop and dial-up an internet connection.
## * http://bitubique.com/content/view/26/42 - Getting Nokia 6630 / Nokia 6680 / Nokia N70 to work as 3G / EDGE / GPRS modem in Linux
----
[[Hardware]] | [[Modem]]

Translation(s): English - Italiano


Hardware Support

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

  • BandLuxe C100

  • Huawei/E176 (works out of the box)
  • Huawei/E169 works without any problems

  • Huawei/E220

  • Huawei/E620
  • Huawei/K3565-Z

  • Motorola E1000
  • Nokia 6680 (just don't set the speed/service - no 3gonly and 384k configs)
  • Nokia N80 (with a nice How-To UseYourCellPhoneAsModem)

  • Novatel HSDPA Card
  • Novatel Merlin U630
  • Option Fusion
  • Option HSDPA Card
  • Option Quad

Installation with PPP and /etc/network/interfaces

This works with Debian Wheezy 7.

Install the packages netbase, ifupdown, and ppp if you don't have them already:

apt-get install netbase ifupdown ppp

Create a file /etc/ppp/peers/gprs with this content:

user "YOUR_USERNAME"
connect "/usr/sbin/chat -v -f /etc/chatscripts/gprs -T YOUR_APN"
/dev/ttyUSB0
noipdefault
defaultroute
replacedefaultroute
hide-password
#lcp-echo-interval 30
#lcp-echo-failure 4
noauth
persist
#mtu 1492
#maxfail 0
#holdoff 20
usepeerdns
#Optional, make it always appear as ppp2:
#unit 2

Then edit /etc/ppp/chap-secrets and add at the end:

"YOUR_USERNAME" * "YOUR_PASSWORD"

Similarly, edit /etc/ppp/pap-secrets and add at the end:

"YOUR_USERNAME" * "YOUR_PASSWORD"

Then edit /etc/network/interfaces and add the following:

auto gprs
iface gprs inet ppp
provider gprs

That's all you need most of the time. The connection will be brought up at boot, you can start it with ifup gprs or stop it with ifdown gprs.

Advanced Installation with WVDial

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

This was originally written for 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):

Before you insert your card, open a console/switch to an open console and as root run the following :

invoke-rc.d pcmciautils start

This will allow you to "see" what Linux is doing :

tail -f /var/log/messages

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 (this one is tested on GSM network Play in Poland, with e169 modem, but uses no specific options so should be very portable). The file is:

[Dialer Defaults]
Modem = /dev/ttyUSB0
Baud = 3600000
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CPIN="0000"
Phone = *99#
Username = ppp
Password = ppp
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 1
Compuserve = 0
Idle Seconds = 0
ISDN = 0
Auto DNS = 1 

Init3 PIN number above is to unlock SIM card. If your SIM does not have a PIN number, you don't need it. Some SIM cards do not need the PIN to work as modems.

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.

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

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

OR

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 at least 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 E169

Tested by rfree on Debian Wheezy with Polish operator Play. All works well:

  • make sure with stat /dev/ttyUSB0 that such device-file is (re)created when you connect the modem (and wait 10 seconds), the date of file should change.

  • if device-file is not created (or if something does not work) then force the modem to work as modem only instead as card-reader/memory, using:

rmmod usb_storage
modprobe usbserial vendor=0x0af0 product=0x5000 # (or adjust vendor and product 
number to the ones you see in dmesg or lsusb when you look for your modem)
  • copy the attached example file wvdial.conf-e169 to /etc/wvdial.conf

  • run wvdial (install wvdial if you don't have it) - and should be done

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.

Notes

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...

How to connect using a Franklin U210 USB wireless/WAN/mobile broadband modem

Though this section needs work, it documents how one Debian user connects to the Internet over NTelos' cellular network in the United States using a Franklin CDMA EV-DO U210 USB modem. NTelos uses Sprint's network, and moreover it would appear that Franklin's U210 is the base model of Franklin's U-series (U210, U600, U601, U602, U770, U772), so there is a reasonably good chance that you can use this information even if your situation differs somewhat from the writer's -- but, as they say, your mileage may vary.

This advice is targeted to the beginning-to-intermediate user. Advanced users are challenged to edit the wiki to improve the advice.

Your Franklin USB modem presents itself to the wireless network as though it were a cell phone. It has a phone number. To connect, it calls another phone number. On NTelos' (and presumably also on Sprint's) network in the United States, the phone number your USB modem must call is "#777". You need not, but probably can, discover your USB modem's own phone number by logging into your account on your cellular provider's website. The only number you need today however is the "#777".

As root or via sudo(1), install the Debian package "wvdial", for instance by

$ sudo apt-get install wvdial

If desired, save the original state of /etc/wvdial.conf using RCS's ci(1) or the like (you can ignore this advice re RCS if you neither know nor care what it is about). Edit /etc/wvdial.conf to look something like this:

[Dialer Defaults]
Stupid Mode = true
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = USB Modem
Baud = 460800
New PPPD = yes
Modem = /dev/ttyACM0
ISDN = 0
Phone = #777
Password = <Your Password>
Username = <Your Login Name>

The important lines are the "Stupid Mode = true" and the "Phone = #777". You need not fill in a password or username.

Edit "/etc/group" [again after using ci(1) first if you wish] to change

dialout:x:20:

to

dialout:x:20:foo

typing your username in place of "foo".

At this point, you may need to log out and log back in to get the system (which part of the system? not sure) to recognize that you now belong to the "dialout" group. If unsure, check with the groups(1) command.

Plug in your USB modem if you have not already done so. Not as root but as yourself, give the command "wvdial" at the terminal's command line. If all goes well, this should connect you to the Internet over your cellular network. Later, press <Ctrl-C> to disconnect.

One is given to understand that the "usb-modeswitch" package may be necessary if your USB modem has not been used before. The writer has neither met nor tested the circumstance in question.

To state the obvious: the procedure should be expected to work only if you have paid a subscription to the cellular network.

It is not asserted that the procedure were the smoothest possible, but the procedure does have the virtue of being relatively obvious in its operation. Refinements may occur to the interested user.

FAQ

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:

#This will CLEAR ALL RULES !!!
iptables -F
#Enable NAT (through the ppp0 interface)
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.
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
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.

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
  • How do I see the usage under Linux ?

    ToDo Linux Usage

    TODO

    • 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

    Resources

    External Links


    Hardware | Modem