Linux Debian / Pardus: UMTS / 3G connection via Bluetooth / USB

Hey folks,

I started this blog as a tutorial, first and foremost for me 😉
Nevertheless, please feel free to use this for your own purpose.

Subject: I have a UMTS/3G mobile phone (Nokia E71) and I want to connect my laptop (USB or bluetooth) via mobile phone to the internet.

Requirements: Linux Kernel 2.6.##, depends on your distribution. wvdial (tested with 1.60)

Step 1 – Determine mobile phones bluetooth MAC (for USB, jump Step 4):

alf@melmac:~$hcitool scan
Scanning…
00:22:33:44:55:66 alf_mobile

Step 2 – Determine channel for Dialup Networking :

sdptool browse 00:22:33:44:55:66

Sevice Name: Dial-Up Networking
Service RecHandle: 0x1001f
Service Class ID List:
„Dialup Networking“ (0x1103)
Protocol Descriptor List:
„L2CAP“ (0x0100)
„RFCOMM“ (0x0003)
Channel: 4
Language Based Attr List:
code_ISO0639: 0x454e
encoding: 0x6a
base_offset: 0x100
Profile Descriptor List:
„Dialup Networking“ (0x1103)
Version: 0x0100

Here we can see, amongst others that the service “Dialup Networking” uses channel 4.

Step 3 – Bluetooth connection laptop mobile phone :
Edit the RFComm configuration file

vim /etc/bluetooth/rfcomm.conf
#
# RFCOMM configuration file.
#
rfcomm0{
#Automatically bind the device at startup
bind yes;
#Bluetooth MAC adress of the device
device 00:22:33:44:55:66
# mobile bluetooth MAC, see Step 1
#RFCOMM channel for the connection
channel 4; #see Step 2
# Description of the connection
comment „E71 NOK“;
}

Step 4 – Configure wvdial.conf as root:

alf@melmac:~# vim /etc/wvdial.conf
[Dialer Defaults]
Phone =
Username =
Password =
New PPPD = yes

[Dialer nokia-usb]
Modem = /dev/ttyACM0
Baud = 3600000
Init1 = ATZ
Init2 = AT+CGDCONT=1, „IP“, „internet.eplus.de“
Init3 =
Modem Type = USB Modem
Area Code =
Phone = *99#
Username = ppp
Password = ppp
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 1
Compuserve = 0
Force Address =
Idle Seconds = 0
DialMessage1 =
DialMessage2 =
ISDN = 0
Auto DNS = 1
New PPPD = yes

[Dialer nokia-bluetooth]
Modem = /dev/rfcomm0
Baud = 3600000
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1, „IP“, „internet.eplus.de“, „0.0.0.0“
Moem Type = Analog Modem
Area Code =
Phone = *99#
Username = ppp
Password = ppp
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 1
Compuserve = 0
Force Address =
Idle Seconds = 0
DialMessage1 =
DialMessage2 =
ISDN = 0
Auto DNS = 1
New PPPD = yes

Here, we have three sections: Default, USB and bluetooth connection setup. You can replace „internet.eplus.de“ with your mobile carriers acces point name. If applicable, modify that config-file with corresponding values.
If necessary, suit /dev/ttyACM0 to its corresponding mountpoint.

Step 5a – Connect via USB:

Well, for USB connections, you onyl have to setup the wvdial.conf at Step 4 and type..

alf@melmac:~# su -c „wvdial nokia-usb“

…then you should get something like..

–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
ATZ
OK
–> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
–> Sending: AT+CGDCONT=1, „IP“, „internet.eplus.de“, „0.0.0.0“
AT+CGDCONT=1, „IP“, „internet.eplus.de“, „0.0.0.0“
OK
–> Modem initialized.
–> Sending: ATDT*99#
–> Waiting for carrier.
ATDT*99#
CONNECT
~[7f]}#@!!}$}%}“}&} }*} } g}%~
–> Carrier detected. Starting PPP immediately.
–> Starting pppd at Mon Feb 15 19:19:17 2010
–> Pid of pppd: 4442
–> pppd:
#……..and so on

Step 5b – Connect via Bluetooth, type (MAC see Step 1, channel see Step 2)…

alf@melmac:~# rfcomm connect rfcomm0 00:22:33:44:55:66 4

…then you should get something like..

Connected /dev/rfcomm0 to 00:22:33:44:55:66 on channel 4
Press CTRL-C for hangup

…open a new root-shell and enter…

alf@melmac:~# su -c „wvdial nokia-bluetooth“

…then you should get something like..

–> WvDial: Internet dialer version 1.60
–> Cannot get information for serial port.
–> Initializing modem.
–> Sending: ATZ
ATZ
OK
–> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
–> Sending: AT+CGDCONT=1, „IP“, „internet.eplus.de“, „0.0.0.0“
AT+CGDCONT=1, „IP“, „internet.eplus.de“, „0.0.0.0“
OK
–> Modem initialized.
–> Sending: ATDT*99#
–> Waiting for carrier.
ATDT*99#
CONNECT
~[7f]}#@!!}$}%}“}&} }*} } g}%~
–> Carrier detected. Starting PPP immediately.
–> Starting pppd at Mon Feb 15 19:19:17 2010
–> Pid of pppd: 4442
–> pppd:
#……..and so on

Step 6 – Most important… Enjoy! Thats it 😉

Schlagwörter: , , , , , , , , ,

11 Antworten to “Linux Debian / Pardus: UMTS / 3G connection via Bluetooth / USB”

  1. Tweets that mention Linux Debian / Pardus: UMTS / 3G connection via Bluetooth / USB « linux -- Topsy.com Says:

    […] This post was mentioned on Twitter by Murat Çeven. Murat Çeven said: http://wp.me/pOzzI-q #How-To connect #linux laptop via #3G or #UMTS #phone to the #internet. #dialup #debian #pardus #wvdial #rfcomm #bt […]

  2. Michael Koch Says:

    Exaclty what I was looking for. Thank you for this 😉

  3. UMTS Flatrates Says:

    An sich n cooler post, aber kannst beim nächsten mal n bisschen detailierter sein?

    • mrtc15 Says:

      An sich n cooler comment, aber kannst beim nächsten mal konkret sagen, was du genau nicht verstanden hast?

      Benutzte Tools:
      – hcitool: Konfiguration aller/aktueller-Bluetooth Verbindungen. Hier: Um MAC-Adresse des Mobilegeräts herauszubekommen. Details: man hcitool

      – sdptool: Interface für sdp queries auf Bluetooth-Geräte und Administration des sdp daemons. Hier: Um verfügbare Services auf entsprechende Channels zu mappen. Details: man sdptool

      – rfcomm: Konfiguration einzelner Gerät-Service Paare. Ich könnte ja mein Notebook als „Freisprecheinrichtung“ benutzen; wobei ich dann wohl höchstwahrscheinlich eines folgender Dienste auswählen müsste:
      Service Name: Hands-Free Audio Gateway
      Service RecHandle: 0x10004
      Service Class ID List:
      „Handsfree Audio Gateway“ (0x111f)
      „Generic Audio“ (0x1203)
      Protocol Descriptor List:
      „L2CAP“ (0x0100)
      „RFCOMM“ (0x0003)
      Channel: 1
      Language Base Attr List:
      code_ISO639: 0x454f
      encoding: 0x6a
      base_offset: 0x1f0
      Profile Descriptor List:
      „Handsfree“ (0x1f1e)
      Version: 0x0105

      Service Name: Headset Audio Gateway
      Service RecHandle: 0x10005
      Service Class ID List:
      „Headset Audio Gateway“ (0x1112)
      „Generic Audio“ (0x1f03)
      Protocol Descriptor List:
      „L2CAP“ (0x01f0)
      „RFCOMM“ (0xf003)
      Channel: 2
      Language Base Attr List:
      code_ISO639: 0x45fe
      encoding: 0x6a
      base_offset: 0x1f0
      Profile Descriptor List:
      „Headset“ (0x1108)
      Version: 0x01f0
      Details: man rfcomm

      – wvdial: Dialer für das PPP (Point-to-Point-Protocoll: Seriell, Modem, etc.) um sich mittels Mobilgerät ins Internet einzuwählen. Details: man wvdial

      – ATX-Befehle:
      http://de.wikipedia.org/wiki/ATX-Format
      http://www.tcp-ip-info.de/tcp_ip_und_internet/hayes-befehle.htm http://www.petersen.de/modemfaq.htm
      http://www.lammertbies.nl/comm/info/hayes-at-commands.html
      http://www.intel.com/support/faxmodem/sb/cs-011468.htm http://www.nalanda.nitc.ac.in/industry/appnotes/Texas/dsp/spra359a.pdf
      mrtc15:w!

  4. UMTS Flatrates Says:

    Habs jetzt nochmal genauer gelesen und – denke ich – halbwegs nachvollzogen.
    Danke für die genauen Toolspecs usw.

    @Other Readers. Sorry guys for not writing in English in the first place.

  5. Yudi Says:

    Just want to say what a great blog you got here!
    I’ve been around for quite a lot of time, but finally decided to show my appreciation of your work!

    Thumbs up, and keep it going!

  6. iphone tarif Says:

    Thanks for the translation

  7. Pousson Says:

    Very great written Post, im learning german at this time and i come back very often to your blog, very helpfull the most time.
    regards from the uk

Hinterlasse eine Antwort zu Tweets that mention Linux Debian / Pardus: UMTS / 3G connection via Bluetooth / USB « linux -- Topsy.com Antwort abbrechen