bookmark - Internet Connection In Linux Through Mobile

Internet Connection In Linux Through Mobile

 
 Discussion by borejk with 16 Replies.
 Last Update: July 21, 2012, 10:30 am (View Latest)
Page 1 of 2 pages.
bookmark - Internet Connection In Linux Through Mobile  
    
free web hosting
 
Hi Guys!

I have been successful in connecting my phone to internet on both Ubuntu and openSUSE using BOTH the methods. I am not sure about other distros however they should work.

There are two ways to connect to the internet using a GPRS modem phone. For the phones with BLUETOOTH :

THE BLUETOOTH CONNECTION METHOD:


You need to follow the steps below to connect to the internet using a bluetooth connection:

1: Switch on bluetooth on your phone and the computer. Make both your computer and phone visible to other devices.

2: Do a search from Linux for bluetooth devices near you. For this, you need to follow as:

Open terminal / shell / console (whatever you call it)
switch to root user using the command ' su'.
pass the command ' hcitool scan '

After sometime you will get the list of devices with their device address (also called as MAC address) and the device name. . . It will look something like:

12:12:12:12:12:12 PhoneName

Note down the device address of your phone (it will appear the place of the 12:12:12:12:12:12 , but in a similar format). You will need to use it later.

3: Now, you need to find which channel on your phone is assigned to what service on the phone. For this you will need to browse the device services. To do this, pass the following command:

sdptool browse 12:12:12:12:12:12

NOTE: Replace 12:12:12:12:12:12 with your phone address.

You will get something like this (I am showing the output I get for my phone):
Code:

Browsing 00:18:13:47:13:BE .
Service Description: Sony Ericsson W810
Service RecHandle: 0x10000
Service Class ID List:
"PnP Information" (0x1200)

Service Name: OBEX SyncML Client
Service RecHandle: 0x10001
Service Class ID List:
UUID 128: 00000002-0000-1000-8000-0002ee000002
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
"OBEX" (0x0008)

Service Name: Dial-up Networking
Service RecHandle: 0x10002
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 2
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100

Service Name: Serial Port
Service RecHandle: 0x10003
Service Class ID List:
"Serial Port" (0x1101)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 3

Service Name: HF Voice Gateway
Service RecHandle: 0x10004
Service Class ID List:
"Handfree Audio Gateway" (0x111f)
"Generic Audio" (0x1203)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 4
Profile Descriptor List:
"Handsfree" (0x111e)
Version: 0x0101

Service Name: HS Voice Gateway
Service RecHandle: 0x10005
Service Class ID List:
"Headset Audio Gateway" (0x1112)
"Generic Audio" (0x1203)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 5
Profile Descriptor List:
"Headset" (0x1108)
Version: 0x0100

Service Name: OBEX Object Push
Service RecHandle: 0x10006
Service Class ID List:
"OBEX Object Push" (0x1105)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 6
"OBEX" (0x0008)
Profile Descriptor List:
"OBEX Object Push" (0x1105)
Version: 0x0100

Service Name: OBEX File Transfer
Service RecHandle: 0x10007
Service Class ID List:
"OBEX File Transfer" (0x1106)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 7
"OBEX" (0x0008)
Profile Descriptor List:
"OBEX File Transfer" (0x1106)
Version: 0x0100

Service Name: OBEX IrMC Sync Server
Service RecHandle: 0x10008
Service Class ID List:
"IrMC Sync" (0x1104)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 8
"OBEX" (0x0008)
Profile Descriptor List:
"IrMC Sync" (0x1104)
Version: 0x0100

Service Name: NAP service
Service Description: NAP description
Service RecHandle: 0x10009
Service Class ID List:
"Network Access Point" (0x1116)
Protocol Descriptor List:
"L2CAP" (0x0100)
PSM: 15
"BNEP" (0x000f)
Version: 0x0100
SEQ8: 0 6
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Network Access Point" (0x1116)
Version: 0x0100

Service Name: Mouse & Keyboard
Service Description: Remote Control
Service Provider: Sony Ericsson
Service RecHandle: 0x1000a
Service Class ID List:
"Human Interface Device" (0x1124)
Protocol Descriptor List:
"L2CAP" (0x0100)
PSM: 17
"HIDP" (0x0011)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Human Interface Device" (0x1124)
Version: 0x0100



4: We need to see which channel is assigned to the service "Dial Up networking". Do not be worried by the long output. It is easy to find it. In the above output (in the code box), search for the lines which say "Service Name" and fins the one which says "Dial Up networking". Then follow look through it till you come across another "Service Name". You can see that in the above output, the block below matches our requirements:
Quote:

Service Name: Dial-up Networking
Service RecHandle: 0x10002
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 2
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100



In this entry, the channel number is given. We see that the channel is '2' (as shown by the line Channel : 2).

Note down the channel number. We will need in the next step.

5: Now you have all the required information for the work to be done. Now you need your computer to recognize the phone as the modem. for this, pass the following command:
Code:
00:0D:92:23:FC:25
rfcomm bind 0 12:12:12:12:12:12 2



Remember to replace the address 12:12:12:12:12:12 with your device address and the number '2' at the end with the channel number you will get for YOUR phone.






That was the Bluetooth way. However , if your device is detcted by Linux via Data cable as a modem, things are much easier. You will, in this case have to follow the following steps: Quote:

1: Connect the data cable to the phone.

2: Some phones as for selection of modes e.g. nokia phones ask to select either the data mode or PC suite mode and Sony Phones ask to select either the 'file transfer' mode or 'phone mode'. Select the one which you use on Windows to connect to internet (on nokia it is PC suite mode or Nokia mode and on Sony phones it is 'phone mode'). Wait for 2-3 seconds to get the device detected by Linux.

3: launch the terminal and switch to root by passing the command: su . Enter the password and you will get the # prompt.

4: go to the /dev directory by passing the command: cd /dev

5: Check for the ttyACM devices. issue the command : ls ttyACM*. It should show either ttyACM0 or ttyACM1 as output.

NOTE: If it does not show any output, then your phone is not detected !

6: Note the output which is mostly either ttyACM0 or ttyACM1.




So till now, you have made Linux recognize the phone as a modem either via Bluetooth or via Data cable OR BOTH WAYS. Now you need to dial to connect to the internet. For this you will have to copy the following as save it as /etc/wvdial.conf using the root account:
Code:

[Modem0]
Modem = /dev/rfcomm0
Baud = 230400
SetVolume = 0
DialCommand = ATDT
FlowControl = Hardware(CRTSCTS)

[Modem1]
Modem = /dev/ttyACM0
Baud = 230400
SetVolume = 0
DialCommand = ATDT
FlowControl = Hardware(CRTSCTS)

[Dialer GPRS]
Username = 1
Password = 1
Phone = *99***1#
Mode = 1
Inherits = Modem0

[Dialer DATA]
Username = <>
Password = <>
Phone = *99***1#
Mode = 1
Inherits = Modem1

[Dialer Defaults]
Modem = /dev/rfcomm0
Baud = 230400
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","airtelgprs.com"
ISDN = 0
Modem Type = Analog Modem
Area Code =
Phone = *99***1#
Username = <>
Password = <>
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 1
Compuserve = 0
Force Address =
Idle Seconds = 3600
DialMessage1 =
DialMessage2 =
ISDN = 0
Auto DNS = 1




Now when dialing via Bluetooth, you will have to pass the following command:
Code:
sudo wvdial GPRS



It will ask for the root password. Enter it and it should connect.

For dialing via data cable, you will have to pass the command:
Code:
sudo wvdial DATA



This will also ask for the root password. Enter the password and it should proceed.

If you have a problem with that, you can reply back with the problem.

Sat Sep 6, 2008    Reply    New Discussion   


My friend was successful in connecting her Macbook to the GPRS on her cellphone I was impressed since she was computer-illiterate to a certain point.

xboxrulz

Sat Sep 6, 2008    Reply    New Discussion   

QUOTE (borejk)

Hi Guys!

I have been successful in connecting my phone to internet on both Ubuntu and openSUSE using BOTH the methods. I am not sure about other distros however they should work.

There are two ways to connect to the internet using a GPRS modem phone. For the phones with BLUETOOTH :

THE BLUETOOTH CONNECTION METHOD:
You need to follow the steps below to connect to the internet using a bluetooth connection:

1: Switch on bluetooth on your phone and the computer. Make both your computer and phone visible to other devices.

2: Do a search from Linux for bluetooth devices near you. For this, you need to follow as:

Open terminal / shell / console (whatever you call it)
switch to root user using the command ' su'.
pass the command ' hcitool scan '

After sometime you will get the list of devices with their device address (also called as MAC address) and the device name. . . It will look something like:

12:12:12:12:12:12 PhoneName

Note down the device address of your phone (it will appear the place of the 12:12:12:12:12:12 , but in a similar format). You will need to use it later.

3: Now, you need to find which channel on your phone is assigned to what service on the phone. For this you will need to browse the device services. To do this, pass the following command:

sdptool browse 12:12:12:12:12:12

NOTE: Replace 12:12:12:12:12:12 with your phone address.

You will get something like this (I am showing the output I get for my phone):
Code:

Browsing 00:18:13:47:13:BE .
Service Description: Sony Ericsson W810
Service RecHandle: 0x10000
Service Class ID List:
"PnP Information" (0x1200)

Service Name: OBEX SyncML Client
Service RecHandle: 0x10001
Service Class ID List:
UUID 128: 00000002-0000-1000-8000-0002ee000002
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
"OBEX" (0x0008)

Service Name: Dial-up Networking
Service RecHandle: 0x10002
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 2
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100

Service Name: Serial Port
Service RecHandle: 0x10003
Service Class ID List:
"Serial Port" (0x1101)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 3

Service Name: HF Voice Gateway
Service RecHandle: 0x10004
Service Class ID List:
"Handfree Audio Gateway" (0x111f)
"Generic Audio" (0x1203)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 4
Profile Descriptor List:
"Handsfree" (0x111e)
Version: 0x0101

Service Name: HS Voice Gateway
Service RecHandle: 0x10005
Service Class ID List:
"Headset Audio Gateway" (0x1112)
"Generic Audio" (0x1203)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 5
Profile Descriptor List:
"Headset" (0x1108)
Version: 0x0100

Service Name: OBEX Object Push
Service RecHandle: 0x10006
Service Class ID List:
"OBEX Object Push" (0x1105)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 6
"OBEX" (0x0008)
Profile Descriptor List:
"OBEX Object Push" (0x1105)
Version: 0x0100

Service Name: OBEX File Transfer
Service RecHandle: 0x10007
Service Class ID List:
"OBEX File Transfer" (0x1106)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 7
"OBEX" (0x0008)
Profile Descriptor List:
"OBEX File Transfer" (0x1106)
Version: 0x0100

Service Name: OBEX IrMC Sync Server
Service RecHandle: 0x10008
Service Class ID List:
"IrMC Sync" (0x1104)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 8
"OBEX" (0x0008)
Profile Descriptor List:
"IrMC Sync" (0x1104)
Version: 0x0100

Service Name: NAP service
Service Description: NAP description
Service RecHandle: 0x10009
Service Class ID List:
"Network Access Point" (0x1116)
Protocol Descriptor List:
"L2CAP" (0x0100)
PSM: 15
"BNEP" (0x000f)
Version: 0x0100
SEQ8: 0 6
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Network Access Point" (0x1116)
Version: 0x0100

Service Name: Mouse & Keyboard
Service Description: Remote Control
Service Provider: Sony Ericsson
Service RecHandle: 0x1000a
Service Class ID List:
"Human Interface Device" (0x1124)
Protocol Descriptor List:
"L2CAP" (0x0100)
PSM: 17
"HIDP" (0x0011)
Language Base Attr List:
code_ISO639: 0x656e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
"Human Interface Device" (0x1124)
Version: 0x0100
4: We need to see which channel is assigned to the service "Dial Up networking". Do not be worried by the long output. It is easy to find it. In the above output (in the code box), search for the lines which say "Service Name" and fins the one which says "Dial Up networking". Then follow look through it till you come across another "Service Name". You can see that in the above output, the block below matches our requirements:
Quote:

Service Name: Dial-up Networking
Service RecHandle: 0x10002
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 2
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100
In this entry, the channel number is given. We see that the channel is '2' (as shown by the line Channel : 2).

Note down the channel number. We will need in the next step.

5: Now you have all the required information for the work to be done. Now you need your computer to recognize the phone as the modem. for this, pass the following command:
Code:
00:0D:92:23:FC:25
rfcomm bind 0 12:12:12:12:12:12 2
Remember to replace the address 12:12:12:12:12:12 with your device address and the number '2' at the end with the channel number you will get for YOUR phone.
That was the Bluetooth way. However , if your device is detcted by Linux via Data cable as a modem, things are much easier. You will, in this case have to follow the following steps: Quote:

1: Connect the data cable to the phone.

2: Some phones as for selection of modes e.g. nokia phones ask to select either the data mode or PC suite mode and Sony Phones ask to select either the 'file transfer' mode or 'phone mode'. Select the one which you use on Windows to connect to internet (on nokia it is PC suite mode or Nokia mode and on Sony phones it is 'phone mode'). Wait for 2-3 seconds to get the device detected by Linux.

3: launch the terminal and switch to root by passing the command: su . Enter the password and you will get the # prompt.

4: go to the /dev directory by passing the command: cd /dev

5: Check for the ttyACM devices. issue the command : ls ttyACM*. It should show either ttyACM0 or ttyACM1 as output.

NOTE: If it does not show any output, then your phone is not detected !

6: Note the output which is mostly either ttyACM0 or ttyACM1.
So till now, you have made Linux recognize the phone as a modem either via Bluetooth or via Data cable OR BOTH WAYS. Now you need to dial to connect to the internet. For this you will have to copy the following as save it as /etc/wvdial.conf using the root account:
Code:

[Modem0]
Modem = /dev/rfcomm0
Baud = 230400
SetVolume = 0
DialCommand = ATDT
FlowControl = Hardware(CRTSCTS)

[Modem1]
Modem = /dev/ttyACM0
Baud = 230400
SetVolume = 0
DialCommand = ATDT
FlowControl = Hardware(CRTSCTS)

[Dialer GPRS]
Username = 1
Password = 1
Phone = *99***1#
Mode = 1
Inherits = Modem0

[Dialer DATA]
Username = <>
Password = <>
Phone = *99***1#
Mode = 1
Inherits = Modem1

[Dialer Defaults]
Modem = /dev/rfcomm0
Baud = 230400
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","airtelgprs.com"
ISDN = 0
Modem Type = Analog Modem
Area Code =
Phone = *99***1#
Username = <>
Password = <>
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 1
Compuserve = 0
Force Address =
Idle Seconds = 3600
DialMessage1 =
DialMessage2 =
ISDN = 0
Auto DNS = 1
Now when dialing via Bluetooth, you will have to pass the following command:
Code:
sudo wvdial GPRS
It will ask for the root password. Enter it and it should connect.

For dialing via data cable, you will have to pass the command:
Code:
sudo wvdial DATA
This will also ask for the root password. Enter the password and it should proceed.

If you have a problem with that, you can reply back with the problem.
Link: view Post: 127987


Wow thanks for this, i'm using Ubuntu, no problems here ;)

Sun Sep 7, 2008    Reply    New Discussion   

QUOTE (Zohan)

Wow thanks for this, i'm using Ubuntu, no problems here ;)
Link: view Post: 128047

First of all welcome to Astahost. And it really feels great if I am giving something to the commuity.... ;)

Mon Sep 8, 2008    Reply    New Discussion   


wvdial wont work
Internet Connection In Linux Through Mobile

Hi
Everything works until I have to fix with my wvdial.
I first copied yours and tried and I only get Cannot open /dev/rfcomm0: Host is down

I googled a bit for the wvdial but it did not work either.

Thanks for the great howto btw


-question by Andreas

Wed Nov 5, 2008    Reply    New Discussion   

Suse problemInternet Connection In Linux Through MobileI m using suse 11.0 since 1 year but till I didnt see a movie and I'm not able to download any codec or plugin for my gnome desk.I use my pc without internet connection and codecs may be directly installed so thats why I m trying to connect my phone .I am working since 4 month to connect with data cable but thats not working .Always I try to install mplayer,vlc and others but not installing so Please any body show how to connect bluetooth or data cable because bluetooth is not working on my pc by given method or if somebody have any player or codec pack or rpm noarch file then Please send on my e id-reply by Rossen helfin

Fri Oct 30, 2009    Reply    New Discussion   

but i got an errorInternet Connection In Linux Through Mobile

I followed all the same procedure as u said, but I got this message as error:

"Using interface ppp0--> pppd: �BL[08]--> pppd: �BL[08]--> pppd: �BL[08]--> pppd: �BL[08]--> pppd: �BL[08]--> pppd: �BL[08]--> Disconnecting at Thu Nov 19 23:04:50 2009--> The PPP daemon has died: A modem hung up the phone (exit code = 16)--> man pppd explains pppd error codes in more detail.--> Try again and look into /var/log/messages and the wvdial and pppd man pages for more information. "

 

Can u say, what's the problem?

Thnks

-question by vishwanath

 


Thu Nov 19, 2009    Reply    New Discussion   

i had a problemInternet Connection In Linux Through Mobile

Replying to borejk

hi I followed your steps I tried to connect my linux Fedora 9 to internet with my N73 cable I got thoes errors and warning

--> Wvdial: section [Dialer DATA] does not exist in wvdial.Conf.--> Cannot open /dev/modem: No such file or directory--> Cannot open /dev/modem: No such file or directory--> Cannot open /dev/modem: No such file or directory

I checked the wvdial.Conf I wrote the code of [Dialer DATA]

would you please help me

-reply by zeena

Fri Dec 11, 2009    Reply    New Discussion   

Right so. Running Debian Unstable (Sid) and there is no analog for spdtool. Searching on google seems to turn up an unrelated tool for editing SPD EEPROMS, which I doubt is the tool we need.

I tried several of the bluetooth-related packages but none seem to contain the spdtool. 

Please assist.

 


Tue Dec 8, 2009    Reply    New Discussion   

specify IPInternet Connection In Linux Through Mobile

The problem with the error code 16 in my case was in leaving the line Init3 as it is in the example above.Change the "airtelgprs.Com" accordingly to your mobile internet provider.

-reply by tom67

 


Wed Dec 23, 2009    Reply    New Discussion   

Too many levels of symbolic linksInternet Connection In Linux Through Mobile

I get error: 

Cannot open /dev/rfcomm0: Too many levels of symbolic links

Someone know what is the problem?

-reply by klemen

 


Thu Jan 14, 2010    Reply    New Discussion   

connecting to internet through linuxInternet Connection In Linux Through Mobile

 hi I followed your steps of connecting through bluetooth but it did not connect! I am using fedora 9 can you help me.Thank youZina

-reply by zeena

 


Wed Dec 9, 2009    Reply    New Discussion   

i have get connected to net by using this command, but i enable to access web pages. when i strat firefox , it not dispaly pages. how to access net tell me i m new to linux. it doesnot ask for any password.

Mon Jun 25, 2012    Reply    New Discussion   

just out of curiousity, why are you using this connection method? or what circumstances are you in to have the need for this connecting via your phone? cheers

Mon Jun 25, 2012    Reply    New Discussion   

QUOTE

just out of curiousity, why are you using this connection method?

For instance when his DSL router is broken?
I also needed this when I was out of my office, in a place where there was no public wifi available.

Mon Jun 25, 2012    Reply    New Discussion   

Quickly Post to Internet Connection In Linux Through Mobile  w/o signup Share Info about Internet Connection In Linux Through Mobile  using Facebook, Twitter etc. email your friend about Internet Connection In Linux Through Mobile Print
Reply / Comment Ask a Question? Share / Bookmark E-Mail a Friend Print


Matte Or Glossy? The Screen Battle  Matte Or Glossy? The Screen Battle (17) (2) Graphics Driver Out... Devie Usage problem...  Graphics Driver Out... Devie Usage problem...