Anything posted on this blog is either FOR PERSONAL USE or FOR EDUCATIONAL PURPOSES ONLY. If you want to follow HOW-TOs or Tips and Tricks posted here, DO IT AT YOUR OWN RISK! I should not be held responsible or liable for whatever result you may achieve. Images, brand names and trademarks are copyright of their respective owners.

Thursday, September 6, 2007

HOWTO: Connect to the Internet using SE P990i in Linux

I am using Linux at home (whenever possible). I can use P990i to connect to the Internet in Windows environment since this phone comes with driver/software for this OS. But what about in Linux? Here's how to do it...

Assumptions

This article assumes that GPRS/3G service is already activated in your SIM.
This article also assumes that you are familiar with Linux (esp. Debian Linux variants with GNOME desktop).

Requirements
SE P990i Unit (with SIM, indeed!)
DCU-60 Cable (bundled with P990i)
Linux (a Debian variant with GNOME Desktop)

Steps
  1. Install WvDial and GNOME PPP.
  2. Connect your phone.
  3. Configure connection.
  4. Connect.
Steps, explained...
Step 1
  • Install WvDial (if not yet installed)
-$ sudo apt-get install wvdial
  • Install GNOME PPP (if not yet installed)
-$ sudo apt-get install gnome-ppp

Step 2
  • Connect your P990i to PC (via DCU-60 cable).
  • When you connect your phone, 3 USB ACM (Abstract Control Model) devices should be registered (as shown below via "dmesg").

Step 3
  • Launch GNOME PPP.
  • Press "Setup".
  • Under "Modem" tab, click "Detect" button.
  • If it's not automatically detected (via "Detect") button, you can try putting the device manually (/dev/ttyACM1 in my case).
  • Click "Phone numbers..." button, then enter *99***1# in the first line, and "Close" it.
  • Click "Init strings..." button, then enter AT+CGDCONT=1,"IP","internet" in init 3, and "Close" it. This modem initialization strings are Smart Gold/Buddy specific. Replace "internet" with your provider's designated APN (i.e. internet.globe.com.ph (not sure) for Globe subscribers).
  • You might also want to set optional settings in the "Options" tab (as shown below).
  • "Quit" GNOME PPP.

Step 4
  • Launch GNOME PPP.
  • Enter anything in "Username" and "Password" (I used "test" for both).
  • Select the phone number or enter *99***1#.
  • Click "Connect".


When connected:




By the way, I am using Linux Mint (Cassandra) which is an Ubuntu derivative as far as I can tell. Ubuntu is Debian Linux variant.

7 comments:

blue pixel said...

This is great help! I have P1i and I get the following:

GNOME PPP: STDERR: --> Sending: AT+CGDCONT=1"IP","internet"
GNOME PPP: STDERR: AT+CGDCONT=1"IP","internet"
GNOME PPP: STDERR: ERROR

Any ideas? Thanks.

blue pixel said...

Figured you missed a comma in the init string:

AT+CGDCONT=1"IP","internet"

Should be:

AT+CGDCONT=1,"IP","internet"

I'm doing this on an Asus Eee UMPC by the way. I get this working the IMF will surely sign me up :D

Thanks again.

Mark Craven said...

This was just what I was looking for. Followed the fantastic instructions but still can't get it to work. When I use the *99***1# I get the dreaded error 16.
WvDial<*1>: Using interface ppp0
WvDial<*1>: Disconnecting at Sat Dec 15 14:55:14 2007
WvDial<*1>: The PPP daemon has died: A modem hung up the phone (exit code = 16)
WvDial<*1>: man pppd explains pppd error codes in more detail.
WvDialNotice: Try again and look into /var/log/messages and the wvdial and pppd man pages for more information.

I then read somewhere that it could be *99***3# so tried that and can get as far as getting some IP addresses then it hangs

/home/mrdamage/.wvdial.conf: Ignoring malformed input line: ";Do NOT edit this file by hand!"
WvDial<*1>: WvDial: Internet dialer version 1.56
WvModem<*1>: Cannot get information for serial port.
WvDial<*1>: Initializing modem.
WvDial<*1>: Sending: ATZ
WvDial Modem<*1>: ATZ
WvDial Modem<*1>: OK
WvDial<*1>: Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
WvDial Modem<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
WvDial Modem<*1>: OK
WvDial<*1>: Sending: AT+CGDCONT=1,"IP","VFNZ Internet"
WvDial Modem<*1>: AT+CGDCONT=1,"IP","VFNZ Internet"
WvDial Modem<*1>: OK
WvDial<*1>: Modem initialized.
WvDial<*1>: Sending: ATM1L3DT*99***3#
WvDial<*1>: Waiting for carrier.
WvDial Modem<*1>: ATM1L3DT*99***3#
WvDial Modem<*1>: CONNECT
WvDial Modem<*1>: ~[7f]}#@!}!}!} }9}#}%B#}%}(}"}'}"}"}&} } } } }%}&F[1d], | ~
WvDial<*1>: Carrier detected. Waiting for prompt.
WvDial Modem<*1>: ~[7f]}#@!}!}"} }9}#}%B#}%}(}"}'}"}"}&} } } } }%}&F[1d], 0m~
WvDial<*1>: PPP negotiation detected.
WvDialNotice: Starting pppd at Sat Dec 15 14:56:55 2007
WvDialNotice: Pid of pppd: 6610
WvDial<*1>: Using interface ppp0
WvDial<*1>: local IP address 121.90.92.250
WvDial<*1>: remote IP address 10.64.64.64
WvDial<*1>: primary DNS address 202.73.198.16
WvDial<*1>: secondary DNS address 202.73.206.16
Caught signal 2: Attempting to exit gracefully...
WvDial<*1>: Disconnecting at Sat Dec 15 14:57:19 2007

Any ideas. I'm on Vodafone in New Zealand

Unknown said...

Sweet, that worked a treat; thanks.

To actually use the connection to surf the net I had to go System->Administration->Network->Connections->Point to point connection->properties and set the Access point name: Internet under General, Modem port: /dev/ttyACM1 under Modem and "Set modem as default route to the internet" under Options. (this was using a Sony Erricsson P1i and Ubuntu Hardy Heron)

Thanks again

Stein Dániel said...

Thanks for this tutorial, but I've got a problem. I'm on T-mobile in Hungary (settings: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 and AT+CGDCONT=1,"IP","internet"), but when I click connect, it says:


--> Ignoring malformed input line: ";Do NOT edit this file by hand!"
--> WvDial: Internet dialer version 1.60
--> Cannot get information for serial port.
--> Initializing modem.
--> Sending: ATX3
ATX3
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"
AT+CGDCONT=1,"IP","internet"
OK
--> Modem initialized.
--> Please enter password (or empty password to stop):


Can anyone help?
Thanks.

PhuLeRock said...

hi man, I'm living Viet Nam, I have a problem when initial connection, here is my /var/log/messages:
Dec 22 22:10:45 PLR pppd[8215]: pppd 2.4.4 started by phulerock, uid 1000
Dec 22 22:10:45 PLR pppd[8215]: Using interface ppp0
Dec 22 22:10:45 PLR pppd[8215]: Connect: ppp0 <--> /dev/ttyACM1
Dec 22 22:10:46 PLR pppd[8215]: Remote message: Congratulations!
Dec 22 22:10:46 PLR pppd[8215]: PAP authentication succeeded
Dec 22 22:10:47 PLR pppd[8215]: LCP terminated by peer
Dec 22 22:10:47 PLR pppd[8215]: Modem hangup
Dec 22 22:10:47 PLR pppd[8215]: Connection terminated.
Dec 22 22:10:47 PLR pppd[8215]: Exit.
Dec 22 22:11:02 PLR kernel: [ 1309.344187] usb 1-1: USB disconnect, address 3


could you help me pls ? Ubuntu 8.10 detected my p990i very fast.

Biserica Morala said...

In Jaunty (9.04) you just have to connect to phone and go to edit connections and change the number to *99***1# and it will work off automatically.

--Vlad