BSNL EV-DO Wireless Broadband Configuration in Linux

This post explains step by step instructions on how to configure and connect to the internet using BSNL EV-DO Wireless data card.

System Configuration

OS – Fedora 9
Data Card – CDMA2000 IX EV-DO MG478/AC8700

1. First login as a root user

2. Connect your data card to a USB Serial Port

3. Open one Terminal

4. Type the command lsusb to check whether the modem is detected

[root@localhost linux]# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 023: ID 19d2:fffe
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
[root@localhost linux]#

Second line shows that modem has been detected and vendor ID is 19d2 , Product ID is fffe.

If the modem was configured perfectly by the vendor then it would have shown the vendor name also, normally it is “Qualcomm, Inc. CDMA Wireless Modem/Phone”.

5. Next we need to add the module to the Linux Kernel with the card details

[root@localhost linux]# modprobe usbserial vendor=0x19d2 product=0xfffe

6. Create the wvdial configuration file to dial the modem

[root@localhost linux]# wvdialconf
Editing `/etc/wvdial.conf’.

Scanning your serial ports for a modem.

Modem Port Scan<*1>: S0 S1 S2 S3
WvModem<*1>: Cannot get information for serial port.
ttyUSB0<*1>: ATQ0 V1 E1 — OK
ttyUSB0<*1>: ATQ0 V1 E1 Z — OK
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 — OK
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 — OK
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 — OK
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 — OK
ttyUSB0<*1>: Modem Identifier: ATI — Manufacturer: QUALCOMM INCORPORATED
ttyUSB0<*1>: Speed 9600: AT — OK
ttyUSB0<*1>: Max speed is 9600; that should be safe.
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 — OK
WvModem<*1>: Cannot get information for serial port.
ttyUSB1<*1>: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baud
ttyUSB1<*1>: ATQ0 V1 E1 — failed with 9600 baud, next try: 9600 baud
ttyUSB1<*1>: ATQ0 V1 E1 — and failed too at 115200, giving up.
WvModem<*1>: Cannot get information for serial port.
ttyUSB2<*1>: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baud
ttyUSB2<*1>: ATQ0 V1 E1 — failed with 9600 baud, next try: 9600 baud
ttyUSB2<*1>: ATQ0 V1 E1 — and failed too at 115200, giving up.
WvModem<*1>: Cannot get information for serial port.
ttyUSB3<*1>: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baud
ttyUSB3<*1>: ATQ0 V1 E1 — failed with 9600 baud, next try: 9600 baud
ttyUSB3<*1>: ATQ0 V1 E1 — and failed too at 115200, giving up.

Found a modem on /dev/ttyUSB0.
Modem configuration written to /etc/wvdial.conf.
ttyUSB0
: Speed 9600; init “ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0”
[root@localhost linux]#

This will create/update the /etc/wvdial.conf file with the default details.

7. You need to edit the wvdial.conf file with your Userd ID and Password. Open the file

[Dialer Defaults]
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = Analog Modem
; Phone = <Target Phone Number>
ISDN = 0
; Username = <Your Login Name>
Init1 = ATZ
; Password = <Your Password>
Modem = /dev/ttyUSB0
Baud = 9600

modify the above to

[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Stupid Mode = 1
Modem Type = Analog Modem
ISDN = 0
New PPPD = yes
Phone = #777
Modem = /dev/ttyUSB0
Username = 12345678
Password = 12345678
Baud = 9600

Save and Quit

8. Now dial the modem with the command

[root@localhost linux]# wvdial
–> 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
–> Modem initialized.
–> Sending: ATDT#777
–> Waiting for carrier.
ATDT#777
CONNECT
–> Carrier detected. Starting PPP immediately.
–> Starting pppd at Sun Nov 15 00:01:48 2009
–> Pid of pppd: 15411
–> Using interface ppp0
–> pppd: xڏ[08][10]ݏ[08]
–> pppd: xڏ[08][10]ݏ[08]
–> pppd: xڏ[08][10]ݏ[08]
–> pppd: xڏ[08][10]ݏ[08]
–> local IP address 117.254.148.232
–> pppd: xڏ[08][10]ݏ[08]
–> remote IP address 192.168.52.12
–> pppd: xڏ[08][10]ݏ[08]
–> primary DNS address 218.248.240.181
–> pppd: xڏ[08][10]ݏ[08]
–> secondary DNS address 208.67.220.220
–> pppd: xڏ[08][10]ݏ[08]

9. Now you are connected to the internet. Open a browser and access your favourite sites. Remember that you need to keep the terminal open while you are connected to the internet.

10. To disconnect the internet press Ctrl+C in the terminal and remove the datacard from the USB Port.