Hacking BSNL EvDO on Linux
filed in Technical, linux on Mar.04, 2008
Evolution-Data Optimized or EvDO yet another wireless telecommunications technology to offer you better internet connectivity on the Go! It offers more mobility and advantages over your WiFi. Learn more about EvDO here.
I always wanted wireless connectivity which is cheap, affordable and reliable. Reliance and TATA Indicom did come out with various solutions with their CDMA products like PCMCIA card for laptop and then USB modules which can be plugged into any computer to gain access to internet. Now almost every one provides one or the other solutions for internet. I always enjoyed the internet on my laptop via reliance CDMA connection on my Nokia cell phones (6255 and 2112) and they were ok and better than the dial-up connections which I used to use at home. It was easy for me to configure the cell phones to work on Linux. Still it was very costly.
I found BSNL EvDO solution much affordable and I could make it work on my Dell M1210 which runs on Ubuntu 7.10 (Gutsy Gibbon). It will just cost you 500 + tax every month and you have to give 1000 Rs as initial payment for the device. Once you have the device in your hand, you have unlimited access to internet 24×7. Depending on proximity and the line of sight to the tower EvDO device would give 2.4 MBPS connections. At present in Bangalore average connection speed is 144 kbps. 1X CDMA network towers are still evolving in various parts of the city. In near future we can expect a better connectivity and high bandwidth via these cute little devices which would match broadband speed.

Image by hpn
Lets see how I started using this device on my Linux distribution (You can follow the same steps to configure this device on any Linux distribution) :
Device : ZTE EV-DO AC8700 800M
Product Vendor : Qualcomm, Inc.
1) Insert the EvDO device into USB port
2) Check whether the device is getting detected on your system or not. You can issue the following command in console :
#sudo tail -f /var/log/messagesThis will result in following messages if the device is detected
Mar 4 09:27:42 techfiz kernel: [ 8251.024000] usb 4-1: configuration #1 chosen from 1 choice
Mar 4 09:27:42 techfiz kernel: [ 8251.028000] usbserial_generic 4-1:1.0: generic converter detected
Mar 4 09:27:42 techfiz kernel: [ 8251.028000] usb 4-1: generic converter now attached to ttyUSB0
In the above lines ttyUSB0 is the device file for your modem. This file gets created automatically if the required modules are available. Else you will see some error messages.
Note :You might face an issue while activating this device on Ubuntu 7.04 and 7.10 as there have made some modifications to the USB serial device mappings. To resolve this issue, edit the file /etc/init.d/mountdevsubfs.sh.
Find the function do_start () and ensure that you have all the following lines.
#
# Magic to make /proc/bus/usb work
#
mkdir -p /dev/bus/usb/.usbfs
domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
ln -s .usbfs/devices /dev/bus/usb/devices
mount --rbind /dev/bus/usb /proc/bus/usb
The complete function looks like this
do_start () {
#
# Mount a tmpfs on /dev/shm
#
SHM_OPT=
[ "${SHM_SIZE:=$TMPFS_SIZE}" ] && SHM_OPT=”-osize=$SHM_SIZE”
domount tmpfs shmfs /dev/shm $SHM_OPT#
# Mount /dev/pts. Create master ptmx node if needed.
#
domount devpts “” /dev/pts -ogid=$TTYGRP,mode=$TTYMODE#
# Magic to make /proc/bus/usb work
#
mkdir -p /dev/bus/usb/.usbfs
domount usbfs “” /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
ln -s .usbfs/devices /dev/bus/usb/devices
mount –rbind /dev/bus/usb /proc/bus/usb
}
The above change creates a file called /proc/bus/usb/.usbfs/devices which is missing in the new Ubuntu releases.
After making these changes run /etc/init.d/mountdevsubfs.sh restart at consoel or restart system before continuing with the other steps.
4) Now, your system can easily identify the new USB device which you have inserted into your PC. You can confirm this by running lsusb command.
# lsusb
Bus 005 Device 004: ID 046d:08c6 Logitech, Inc.
Bus 005 Device 001: ID 0000:0000
Bus 004 Device 027: ID 05c6:6000 Qualcomm, Inc.
Bus 004 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 003: ID 413c:8126 Dell Computer Corp.
Bus 002 Device 004: ID 0a5c:4502 Broadcom Corp.
Bus 002 Device 005: ID 0a5c:4503 Broadcom Corp.
Bus 002 Device 002: ID 0a5c:4500 Broadcom Corp.
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 004: ID 046d:c50e Logitech, Inc. MX-1000 Cordless Mouse Receiver
Bus 001 Device 001: ID 0000:0000
Here Bus 004 Device 027: ID 05c6:6000 Qualcomm, Inc. is the new device which started showing up for me on my laptop.
5) Your Linux kernel need to know which company’s driver need to be used with device. Most of the new kernels comes with the Qualcomm drivers inbuilt. Else you need to insert the driver module into your kernel.
Run this at the console to activate the module based on the vendor id and product id (You can find them in the previous step ID 05c6:6000. As we need to pass these numbers in hex format, I’m adding 0x).
# modprobe usbserial vendor=0x05c6 product=0x6000
(Goto step 2 and check if your USB device gets detected or not. You can even try replugging your USB device)
PS : You can permanently add this line to ensure that the module gets loaded to your kernel each time you restart your system by adding the following line into /etc/modules
usbserial vendor=0×05c6 product=0×6000
Finally you must get the following output, showing the Vendor name, ID, Device id , Device Bus used by your kernel to interact with the device.
#lsusb -v | grep Qualcomm
Bus 004 Device 022: ID 05c6:6000 Qualcomm, Inc.
idVendor 0×05c6 Qualcomm, Inc.
Now, your Linux PC is capable of creating the device files /dev/ttyUSB0 automatically without any issues.
6) Now its time for us to create the dialup profile. Its so simple with “wvdialconf” command.
#wvdialconf /etc/wvdial.conf
This creates a file called /etc/wvdial.conf with following output :
# wvdialconf /etc/wvdial.conf
Writing `/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 4800: AT — OK
ttyUSB0<*1>: Speed 9600: AT — OK
ttyUSB0<*1>: Speed 19200: AT — OK
ttyUSB0<*1>: Speed 38400: AT — OK
ttyUSB0<*1>: Speed 57600: AT — OK
ttyUSB0<*1>: Speed 115200: AT — OK
ttyUSB0<*1>: Speed 230400: AT — OK
ttyUSB0<*1>: Speed 460800: AT — OK
ttyUSB0<*1>: Max speed is 460800; 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: 115200 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: 115200 baud
ttyUSB2<*1>: ATQ0 V1 E1 — and failed too at 115200, giving up.Found a modem on /dev/ttyUSB0.
/etc/wvdial.conf<Warn>: Can’t open ‘/etc/wvdial.conf’ for reading: No such file or directory
/etc/wvdial.conf<Warn>: …starting with blank configuration.
Modem configuration written to /etc/wvdial.conf.
ttyUSB0<Info>: Speed 460800; init “ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0″
Your /etc/wvdial.conf will have the following entries.
# cat /etc/wvdial.conf[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 = 460800
Change the target phone no. to #777 and Username and password need to be set to the EVDO number provided by BSNL.
And you require an another magical line added to this file. i.e.
Stupid Mode = 1
More about Stupid Mode (from man pages):
When wvdial is in Stupid Mode, it does not attempt to interpret any prompts from the terminal server. It starts pppd immediately after the modem connects. Apparently there are ISP’s that actually give you a login prompt, but work only if you start PPP, rather than logging in. Go figure. Stupid Mode is (naturally) disabled by default.
Your /etc/wvdial.conf should look like this :
[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = Analog Modem
ISDN = 0
Phone = #777
Modem = /dev/ttyUSB0
Username = 22222222
Password = 22222222
Baud = 460800
Stupid Mode = 1
22222222 is just an example id, replace this with your EvDO number.
7) You’re all set to get connected now. just execute the following command again at the console
# wvdial
output :
# wvdial
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>: Modem initialized.
WvDial<*1>: Sending: ATDT#777
WvDial<*1>: Waiting for carrier.
WvDial Modem<*1>: ATDT#777
WvDial Modem<*1>: CONNECT
WvDial<*1>: Carrier detected. Starting PPP immediately.
WvDial<Notice>: Starting pppd at Tue Mar 4 16:26:53 2008
WvDial<Notice>: Pid of pppd: 14536
WvDial<*1>: Using interface ppp0
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: local IP address 10.1.0.169
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: remote IP address 10.64.64.64
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: primary DNS address 218.248.240.23
WvDial<*1>: pppd: ��[06][08]��[06][08]
WvDial<*1>: secondary DNS address 218.248.240.135
WvDial<*1>: pppd: ��[06][08]��[06][08]
There should be a smile at your face after looking at it as you’re connected to internet. Start browsing unlimited.
7) To terminate the connection issue CTRL + C command and then remove EvDO device.
Note: If you still love windows, you have a bad news. BSNL does not provide you with the Windows Vista drivers for this device. I haven’t found one so far even for testing it.
You have just hacked into Linux to make a device work. Isn’t it fun.
If you have any questions, don’t hesitate to comment on it. I shall help you understand it better.

March 4th, 2008 on 5:53 pm
Great newz Shiv ! I would throw away the fu**ing Reliance Wimax connection and the crappy TATA indicom Wimax ( cuz it always block my mac address(es ..lol) for some reason I yet need to find out.. grr ) once EvDO start offering something more than 256 kbps.
March 4th, 2008 on 5:57 pm
Sijin,
You have an another good news. Soon you will get to see BSNL offering 2mbps EvDO connection. Obviously @ a good tariff.
March 5th, 2008 on 2:10 am
Very useful post, Shiv. Saves a lot of trouble.
Somehow the connection strings are misfiring here with the same wvdial conf though. Need to look into it a bit sometime.
March 5th, 2008 on 1:44 pm
Thanks a load man. You’re an angel. I was considering following this guide here before i’d found your article:
http://scitechpolitics.blogspot.com/2008/01/bsnl-evdo-on-gnulinux.html
something at the end about adding Udev rules. I dont know. I’ll try both out once my modem arrives.
Next, i’m getting a nokia N800 (with hostmode USB hack) and using this evdo modem on it. w00t!
March 6th, 2008 on 12:11 am
Nice post. Submitted to Digg.
March 7th, 2008 on 7:44 pm
[...] EVDO & Linux I dont have/use EVDO myself but came across another blog link, see Platonic Blog Archive Hacking BSNL EvDO on Linux __________________ "Thou shalt not follow the null pointer for at it’s end madness and chaos [...]
April 11th, 2008 on 12:25 pm
Fantastic ! Well written
April 26th, 2008 on 5:03 pm
gud effort n very nice tutorial….. keep it up..
May 17th, 2008 on 2:00 pm
I found that adding the “usbserial vendor =…….” string to the /etc/modules is more useful and lasting advice for the regular users of the modem. can’t do the manual modprobe everytime. Thanks for that tip.
I’m a n00b to linux hardware detection, so It took me a while to figure out that this step was needed BEFORE I plugged in the device.
cheerio.
May 30th, 2008 on 4:01 pm
The most important bit is to note the following …
“I’m a n00b to linux hardware detection, so It took me a while to figure out that this step was needed BEFORE I plugged in the device.”
June 4th, 2008 on 7:55 am
I have tried ubuntu feiry, ubuntu 6.06, ubuntu 8.04, fedora 6 to 9, suse 10 to 10.3, linuxp, mint linux, mandriva 2007 & 2008 to connect ZTE-evdo card. Out of all of these only ubuntu 8.04 has worked hassle free.
All other distros required to attach the usb modem through modprobe to connect. But every distro except ubuntu 8.04, has hanged after few minutes of successfull connection of the device. On these distros never I could browse internet more than 5 minutes through evdo.
Recently MotherBoard of my CPU has been detected of some errors and the same has been replaced. Now I can not install ubuntu 8.04 because it fails to load with an error at fd0.
Other distros could be loaded but they doesn’t work properly with ZTE-EVDO.
Is it the problem with Kenrel?
Can any one help me in this matter please.
June 4th, 2008 on 8:05 am
Upgrading kernel on your current ubuntu should resolve the problem.
aptitude update; aptitude upgrade
the above command should do.
June 9th, 2008 on 8:02 pm
Hi,
I’m living in Madagascar and one the provider offer a 3G+ EvDO with a ZTE MG 480. I’m using Ubuntu 8.4. I try to follow your post, but I’m block to edit the file /etc/init.d/mountdevsubfs.sh
The file is empty or this sudo nautilus I can not save in the new files:
/proc/bus/usb/.usbfs/devices
If somebody could help me , because I’m a nooob in linux.
thanks
June 9th, 2008 on 8:24 pm
Hi Martial,
I have put an another article for Ubuntu 8.04. have a look at it.
http://platonic.techfiz.info/2008/04/05/bsnl-ev-do-works-on-hardy/
You need not follow all the instructions added here.
Best of luck
June 21st, 2008 on 10:19 am
Kindly help me with installing PCMCIA BSNL Device on Ubuntu. I love Linux badly but it seems i have hung myself badly in connecting Net on Ubuntu. My laptop architecture is x86_64 if it is required for kind information. I will be highly thankful for the solution.
June 28th, 2008 on 3:20 pm
hi
Thanks man,,,, its really good that i m able to use internet in LINUX becouse of you,,,,,,,,,,,
” One thing is do i need to follow these steps everytime i restart the system?????? and i m not finding a a file
“/etc/module”
what should i do ?????
Regards
Niranjan
June 28th, 2008 on 6:03 pm
Hi Niranjan,
File name is /etc/modules. If you use ubuntu 8.04 you need not do all this. It works out of box.
July 3rd, 2008 on 12:20 am
cant find wvdial in mandriva linux 2008 spring …plz help
July 3rd, 2008 on 7:51 am
Hi.
Thx for this valuable info. I hv exactly the same BSNL EVDO. I configured it as u said till the
wvdial in redhat Ent 4.0[root@localhost ~]# wvdial–> WvDial: Internet dialer version 1.54.0–> Initializing modem.–> Sending: ATZATZOK–> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0OK–> Modem initialized.–> Sending: ATDT#777–> Waiting for carrier.ATDT#777CONNECT–> Carrier detected. Starting PPP immediately.–> Starting pppd at Wed Jul 2 08:22:40 2008–> pid of pppd: 5009–> Using interface ppp0–> local IP address 10.1.0.147–> remote IP address 10.64.64.64–> primary DNS address 218.248.240.23–> secondary DNS address 218.248.240.135
I get upto secondary DNS address but still im not able to browse the net. I use konqueror (as i dont hv firefox yet) when i give the url, im getting the message.. unknown host http://www.google.co.inIm getting the same message when i ping it from terminal http://www.google.co.inAfter wvdial, in a new terminal i tried ifconfig as below… May be this will help you identify the problem
[root@localhost ~]# ifconfiglo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:2522 errors:0 dropped:0 overruns:0 frame:0 TX packets:2522 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:2112052 (2.0 MiB) TX bytes:2112052 (2.0 MiB)ppp0 Link encap:Point-to-Point Protocol inet addr:10.1.0.147 P-t-P:10.64.64.64 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:5 errors:0 dropped:0 overruns:0 frame:0 TX packets:19 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:62 (62.0 b) TX bytes:1190 (1.1 KiB)
July 3rd, 2008 on 9:41 am
Hi Mehaboob,
Find wvdial here for Mandriva.
http://www.mandrivaclub.com/xwiki/bin/view/rpms/Application/wvdial
You can also find the RPM’s here
http://rpmfind.net/linux/rpm2html/search.php?query=wvdial
July 3rd, 2008 on 9:44 am
Shanmug,
give me the out put for the command
route -n
Let me see whats there in that.
Also, try running this commands in console to start browsing the net :
route del default gw eth0
route add default gw 10.64.64.64
This should help you to start browsing the net.
July 4th, 2008 on 7:45 am
hi TechFiz
route -n gives this output
Kernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface10.64.64.64 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 lo0.0.0.0 10.64.64.64 0.0.0.0 UG 0 0 0 ppp0—–
route del default gw eth0
route add default gw 10.64.64.64
I tried these commands both failed. By looking at the output of route -n, hope u can identify the error…
July 5th, 2008 on 10:19 am
Hi,
very nice and intersting .can any one help me for the same Evdo configuration on Fedora core 6. i will thank full to u…
July 11th, 2008 on 10:45 am
HI,
I have a problem with Ubuntu 8.04 LTS! . My EVDO device is automatically detected and /dev/ttyUSB0 to ttyUSB10 was automatically created . But when I use wvdialconf it is getting stuck. Here is the output of wvdialconf
sudo wvdialconf /etc/wvdial.confEditing `/etc/wvdial.conf’.Scanning your serial ports for a modem.ttyS0<*1>: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baudttyS0<*1>: ATQ0 V1 E1 — failed with 9600 baud, next try: 115200 baudttyS0<*1>: ATQ0 V1 E1 — and failed too at 115200, giving up.Modem Port Scan<*1>: S1 S2 S3 WvModem<*1>: Cannot get information for serial port.ttyUSB0<*1>: ATQ0 V1 E1 — OKttyUSB0<*1>: ATQ0 V1 E1 Z — OKttyUSB0<*1>: ATQ0 V1 E1 S0=0 — OKttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 — OKttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 — OKttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 — OKttyUSB0<*1>: Modem Identifier: ATI — Manufacturer: QUALCOMM INCORPORATEDttyUSB0<*1>: Speed 9600: AT — OKttyUSB0<*1>: Max speed is 9600; that should be safe.ttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 — OKttyUSB1<Info>: Exec format errorttyUSB2<Info>: Exec format errorModem Port Scan<*1>: USB2 WvModem<*1>: Cannot get information for serial port.ttyUSB3<*1>: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baudttyUSB3<*1>: ATQ0 V1 E1 — failed with 9600 baud, next try: 9600 baudttyUSB3<*1>: ATQ0 V1 E1 — and failed too at 115200, giving up.ttyUSB4<Info>: Exec format errorModem Port Scan<*1>: USB4 ttyUSB5<Info>: Exec format errorModem Port Scan<*1>: USB5 WvModem<*1>: Cannot get information for serial port.ttyUSB6<*1>: ATQ0 V1 E1 –
July 12th, 2008 on 7:39 pm
You might be having issues with the signals. Check with BSNL and see if there is enough signal in your area.
July 28th, 2008 on 3:03 am
the above details may not exactly work on redhat/Fedora based systems , because on Ubuntu the wvdial connection automatically creates the file /etc/resolv.conf which is required for resolving the addresses ( DNS ) . Now on Fedora or Redhat u have to manually create this file all u have to do is run “wvdial” and from the output of wvdial note down the primary and the secondary DNS addresses and then create the file /etc/resolv.conf ( if it does not exist ) and add the follwoing content to it :
nameserver [primary dns address]
nameserver [secondary dns address]
now save the file and restart wvdial , u should be able to browse the internet successfully, this should also solve the problem stated initially on the Redhat ent 4.0 linux .
For Fedora users there is detailed explanation on configuring BSNL EVDO card at the following link on my blog :
http://satish.playdrupal.com/?q=node/32
July 28th, 2008 on 3:08 am
hi santosh ,
wvdialconf crashes sometimes , it has nothing to do with the signal strength , ….. the best thing u can do is create the wvdial.conf file manually and set the modem as /dev/ttyUSB0 as that is the one that seems to be getting detected , ……. try this and please let us know how it works , …..
August 6th, 2008 on 2:31 pm
I got a slightly different device:
Bus 006 Device 011: ID 05c6:3197 Qualcomm, Inc. CDMA Wireless Modem/Phone
wvdialconf detects 9600 baud is working, but not higher speeds. Any suggestions?
August 7th, 2008 on 9:46 am
05c6:3197 works fine on GNU/Linux at 460800 baud. It is necessary to enable stupid mode.
August 11th, 2008 on 12:36 am
I am unable to connect the device to ubuntu 8.04.Following message comes up and i can’t proceed further:
pn@pn-laptop:~$ wvdialconf /etc/wvdial.conf
Editing `/etc/wvdial.conf’.
Scanning your serial ports for a modem.
ttyS0: Device or resource busy
Modem Port Scan: S0 S1 S2 S3
WvModem: Cannot get information for serial port.
ttyUSB0: ATQ0 V1 E1 — OK
ttyUSB0: ATQ0 V1 E1 Z — OK
ttyUSB0: ATQ0 V1 E1 S0=0 — OK
ttyUSB0: ATQ0 V1 E1 S0=0 &C1 — OK
ttyUSB0: ATQ0 V1 E1 S0=0 &C1 &D2 — OK
ttyUSB0: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 — OK
ttyUSB0: Modem Identifier: ATI — Manufacturer: QUALCOMM INCORPORATED
ttyUSB0: Speed 9600: AT — OK
ttyUSB0: Max speed is 9600; that should be safe.
ttyUSB0: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 — OK
ttyUSB1: Exec format error
ttyUSB2: Exec format error
Modem Port Scan: USB2
WvModem: Cannot get information for serial port.
ttyUSB3: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baud
ttyUSB3: ATQ0 V1 E1 — failed with 9600 baud, next try: 9600 baud
ttyUSB3: ATQ0 V1 E1 — and failed too at 115200, giving up.
ttyUSB4: Exec format error
Modem Port Scan: USB4
ttyUSB5: Exec format error
Modem Port Scan: USB5
WvModem: Cannot get information for serial port.
ttyUSB6: ATQ0 V1 E1 —
pn@pn-laptop:~$
can anyone help?
Priyadarshi
August 11th, 2008 on 8:56 pm
hi Priyadarshi,
Do not worry that wvdialconf ended at ttyUSB6: ATQ0 V1 E1 – . For Ubuntu Desktop 8.04, wvdialconf is not necessary. You can straight away go ahead and edit wvdial.conf file as below:
$ sudo gedit /etc/wvdial.conf
In the text editor, you will see something like this:
[Dialer Defaults]
Phone =
Username =
Password =
New PPPD = yes
You should edit the above to look like this:
[Dialer Defaults]
Phone = #777
Modem = /dev/ttyUSB0
Username = 11111111
Password = 22222222
New PPPD = yes
Stupid Mode = 1
(replace 11111111 and 22222222 with your username and password respectively)
Save the file and close it.
Back in the terminal, use this command:
$ sudo wvdial
That should get you connected. Subsequently, you are just typing ’sudo wvdial’ in the terminal and you get linked to the WWW. Hope it works!
Prashanth.
August 12th, 2008 on 1:02 am
Prashanth,
I am terribly impressed with you.I got connected in no time.Thank you very much.
You know i had been bothering my dearest brother in law with this who stays in the farthest continent from our country.
Thank you once again
Priyadarshi
August 12th, 2008 on 2:23 pm
Hi Priyadarshi,
Sometimes, good things are just a foot away unless we actually recognize them. Am also running Ubuntu Desktop 8.04 on my laptop and use BSNL EVDO datacard while traveling and hence was able to lend a helping hand to you; glad it worked.
Hope your bro-in-law will be spared from bugging now on. LOLz.
Prashanth.
August 13th, 2008 on 11:17 am
Prashanth
Thanks a lot again.
Priyadarshi
August 13th, 2008 on 12:29 pm
Hi Priyadarshi,
You are most welcome! Before you thank me, I guess we all should be grateful to Mr. Omshivaprakash H L; he has done a wonderful job and got us a way to get BSNL EVDO working on Linux. On a whole, this website is exceptional.. Dear friend Shiv, Thank you so much.
It was a great pleasure for me to know that Shiv is basically from Bangalore, where I too live. His profile is really interesting; seems to be a great personality altogether.
Though I got an entry by Microsoft to begin with, now am a great fan of Linux, especially Ubuntu – its an outstanding Community by itself. If you find something new on Ubuntu, push a note to my email * mee [dot] xyz [at] gmail [dot] com *
Prashanth.
August 13th, 2008 on 12:45 pm
Hi Guys,
Thanks a ton for posting comments. And prashath, I was really impressed the way you followed up with the responses which were pouring in. I was quite busy to respond back to comment and you made my job so much easier. Thanks a lot again.
There is lots that I would love to share with you all while I explore Linux. You also have got a new techno blog coming up to start blogging technical content at blogs.techfiz.com.
Have a blast!
Thanks
August 13th, 2008 on 11:05 pm
Dearest Shiv,
while thanking Prashanth you were never out of mind.I don’t know anything about Unix and to be more specific about Ubuntu.It wasfrom your website i started copying and pasting commands in my Terminal and when stuck,Prashanth came up.It is all because of you. My thanks and best wishes for you.
Priyadarshi
August 14th, 2008 on 5:23 am
Dear Shiv,
blogs.techfiz.com is a welcome move and it would be a pleasure to be an active part of it. I really am looking forward to it.
The “Read my mind” part of this website seems to be impressive! I started reading each one of them and couldn’t stop myself from commenting on your writeup “61st Celebration of Independence”.
Your are maintaining a perfect blend of Technical, Social and Moral concepts here. Great going Shiv!
Prashanth.
August 16th, 2008 on 7:58 am
I have usb 1.1 in my laptop and i use the evdo card in it. I wanted to know that is there any difference in the speed of internet access,download etc.with usb 2.
Priyadarshi
August 16th, 2008 on 10:07 am
USB 1.1 offer low bandwidth when compared to USB 2.0. Also the latency times of USB 1.1 devices are 40% less than that off USB 2.0 Devices.
You can read more about it here :
http://www.everythingusb.com/usb2/faq.htm
August 30th, 2008 on 12:02 am
Shiv,
Am trying to configure EvDO on Zenwalk 5.2 but no success. I just cannot configure the card and not sure if it is detected or not;
wvdialconf /etc/wvdial.conf
Eiting ‘/etc/wvdial.conf’.
Scanning your serial ports for a modem.
ttyS0: ATQ0 V1 E1 – - failed with 2400 baud, next try: 9600 baud
ttyS0: ATQ0 V1 E1 – - failed with 9600 baud, next try: 115200 baud
ttyS0: ATQ0 V1 E1 – - and failed too at 115200 baud, giving up.
ttyS1: ATQ0 V1 E1 – - failed with 2400 baud, next try: 9600 baud
ttyS1: ATQ0 V1 E1 – - failed with 9600 baud, next try: 115200 baud
ttyS1: ATQ0 V1 E1 – - and failed too at 115200 baud, giving up.
Modem Port Scan: S2 S3
Sorry, no modem was detected! Is it in use by another program?
Did you configure it properly with setserial?
Please read the FAQ at http://open.nit.ca/wiki/?WvDial
If you still have problems, send mail to
On the same machine, EvDO works fine with Ubuntu 8.04. Any clue?
August 30th, 2008 on 3:14 am
Got it working on Zenwalk 5.2!! Here is what I did:
root[~]# ls -1 /dev/tts/USB*
/dev/tts/USB0
/dev/tts/USB1
/dev/tts/USB2
root[~]# cd /dev
root[dev]# ln -s tts/USB0 ttyUSB0
root[dev]# ln -s tts/USB1 ttyUSB1
root[dev]# ln -s tts/USB2 ttyUSB2
root[dev]# wvdialconf /etc/wvdial.conf
Editing `/etc/wvdial.conf’.
Scanning your serial ports for a modem.
ttyS0: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baud
ttyS0: ATQ0 V1 E1 — failed with 9600 baud, next try: 115200 baud
ttyS0: ATQ0 V1 E1 — and failed too at 115200, giving up.
ttyS1: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baud
ttyS1: ATQ0 V1 E1 — failed with 9600 baud, next try: 115200 baud
ttyS1: ATQ0 V1 E1 — and failed too at 115200, giving up.
Modem Port Scan: S2 S3
WvModem: Cannot get information for serial port.
ttyUSB0: ATQ0 V1 E1 — OK
ttyUSB0: ATQ0 V1 E1 Z — OK
ttyUSB0: ATQ0 V1 E1 S0=0 — OK
ttyUSB0: ATQ0 V1 E1 S0=0 &C1 — OK
ttyUSB0: ATQ0 V1 E1 S0=0 &C1 &D2 — OK
ttyUSB0: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 — OK
ttyUSB0: Modem Identifier: ATI — Manufacturer: QUALCOMM INCORPORATED
ttyUSB0: Speed 9600: AT — OK
ttyUSB0: Max speed is 9600; that should be safe.
ttyUSB0: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 — OK
WvModem: Cannot get information for serial port.
ttyUSB1: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baud
ttyUSB1: ATQ0 V1 E1 — failed with 9600 baud, next try: 9600 baud
ttyUSB1: ATQ0 V1 E1 — and failed too at 115200, giving up.
WvModem: Cannot get information for serial port.
ttyUSB2: ATQ0 V1 E1 — failed with 2400 baud, next try: 9600 baud
ttyUSB2: ATQ0 V1 E1 — failed with 9600 baud, next try: 9600 baud
ttyUSB2: 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″
Further, I edited the wvdial.conf file and got connected.
Now, BSNL EvDO rocks on Zenwalk!!
August 30th, 2008 on 3:47 am
Wonderful!!!
September 4th, 2008 on 12:05 pm
helo prashanth i don’t think we have to do all this ……….always use simple steps as possible ok watch
1.attach ur usb modem to ur system and then open console and type lsusb
2.then again type modprobe usbserial vendor=0×05c6 product=0×6000
3. to check type dmesg
4.open ur kg menu then go to internet select kppp dialer
5.fill it like wat to fill is phone no #777 & in connection name bsnl(what ever) in modems modem_name evdo ,modem_device /dev/ttyUSB0
CONNECTION SPEED 921600
6. FINAL STEP TYPE UR ID & PASSWORD
CONNECT DONE!!
September 4th, 2008 on 12:50 pm
Hi Guleria,
This post was added long back for older version of Ubuntu distro
Now it really rocks as you said.
September 6th, 2008 on 10:08 am
Prashant,
I don’t know about which Linux Operating System you were talking about. The steps I posted were for Zenwalk Linux. Problem with Zenwalk is it doesn’t automatically create SYMLINK to ttyUSB device and hence can’t use BSNL EvDO on ttyUSB0.
Steps illustrated in my last post are just of the test launch (in follow-up of my question to Shiv on how to configure BSNL EvDO on Zenwalk Linux), later I simplified the whole thing like this:
1.Added a rule to create SYMLINK to ttyUSB automatically each time the machine boots -
KERNEL==”ttyUSB[0-9]*”, NAME=”tts/USB%n”, GROUP=”tty”, MODE=”0660″, SYMLINK=”ttyUSB%n”
2.Made modprobe automatic with modules -
/sbin/modprobe usbserial vendor=0×05c6 product=0×6000
Now, each time I wanted to connect to net using BSNL EvDO, go to the Terminal and input command ‘wvdial’ – there am connected! What simple would it be made?
)
Prashanth.
September 19th, 2008 on 5:03 pm
Well I have Vista and it installed easily on my laptop…. without any fuss… But I do feel
it is a ghatiya OS… from now on I will be either having Mac or ubuntu
October 20th, 2008 on 12:02 am
i am using mandrina2007 but i coudnot connect Evdo usb modem with your procedurei am new bee to linux pl help me
October 20th, 2008 on 12:25 am
What is the output of lsusb and wvdialconf ?
December 7th, 2008 on 1:08 am
I used to connect to the net using this command and then put my PW to complete. But for last few days this is what comes up when i try to connect. Can you give me a solution for this.
pn@pn-laptop:~$ sudo wvdial
[sudo] password for pn:
–> WvDial: Internet dialer version 1.60
–> Cannot open /dev/ttyUSB0: No such file or directory
–> Cannot open /dev/ttyUSB0: No such file or directory
–> Cannot open /dev/ttyUSB0: No such file or directory
The second is i have put a wep key for my wireless network.I can access net after putting in the key,but it asks for some kernel pw which i don’t think i know. I think both these problems are linked. I have tried most of the passwords which i used but everything has failed. Following message appears.
Unlock keyring
the application nm-applet(/usr/bn/nm-applet) wants access to the default keyring,but it is locked.
Pw-
deny ok
I click deny and use the wireless.
can u suggest what to do for both of these
December 10th, 2008 on 1:52 pm
I am done with the nm applet.
please suggest how to reload the evdo card. it is not being recognized.
December 17th, 2008 on 10:02 pm
My problem is solved. I did some changes in the passphrase with seahorse command.
December 18th, 2008 on 11:38 am
Good to know that you got the issue resolved.
December 18th, 2008 on 9:01 pm
The same problem has reappeared.Please suggest something. It is greatly annoying.the device works ok on my windows machine.
I used to connect to the net using this command and then put my PW to compleate. But for last few days this is what comes up when i try to connect. Can you give me a solution for this.
pn@pn-laptop:~$ sudo wvdial
[sudo] password for pn:
–> WvDial: Internet dialer version 1.60
–> Cannot open /dev/ttyUSB0: No such file or directory
–> Cannot open /dev/ttyUSB0: No such file or directory
–> Cannot open /dev/ttyUSB0: No such file or directory
December 18th, 2008 on 9:08 pm
Once you plugin your usb modem, tail /var/log/messages and send me the last 100 lines. Let me see whats happening. Also post the OS distro name and OS once again so that I can point you to the fix.
December 19th, 2008 on 5:12 pm
pn@pn-laptop:~$ tail /var/log/messages
Dec 19 17:06:15 pn-laptop dhcdbd: message_handler: message handler not found under /com/redhat/dhcp/wlan0 for sub-path wlan0.dbus.get.host_name
Dec 19 17:06:15 pn-laptop dhcdbd: message_handler: message handler not found under /com/redhat/dhcp/wlan0 for sub-path wlan0.dbus.get.domain_name
Dec 19 17:06:15 pn-laptop dhcdbd: message_handler: message handler not found under /com/redhat/dhcp/wlan0 for sub-path wlan0.dbus.get.nis_domain
Dec 19 17:06:15 pn-laptop dhcdbd: message_handler: message handler not found under /com/redhat/dhcp/wlan0 for sub-path wlan0.dbus.get.nis_servers
Dec 19 17:06:15 pn-laptop dhcdbd: message_handler: message handler not found under /com/redhat/dhcp/wlan0 for sub-path wlan0.dbus.get.interface_mtu
Dec 19 17:07:09 pn-laptop chat[4545]: alarm
Dec 19 17:07:09 pn-laptop chat[4545]: Failed
Dec 19 17:11:24 pn-laptop kernel: [ 263.712537] pccard: card ejected from slot 0
Dec 19 17:11:24 pn-laptop kernel: [ 263.803362] ndiswrapper: device wlan0 removed
Dec 19 17:11:24 pn-laptop kernel: [ 263.803420] ACPI: PCI interrupt for device 0000:02:00.0 disabled
pn@pn-laptop:~$
I am using ubuntu 8.04.
waiting for reply.Thanks
January 3rd, 2009 on 2:20 pm
iam using ubbubtu 8.04 after doing the steps igit
hacker@hacker-laptop:/$ sudo 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 Sat Jan 3 23:02:55 2009
–> Pid of pppd: 6958
–> Using interface ppp0
–> local IP address 10.2.0.15
–> remote IP address 10.64.64.64
–> primary DNS address 218.248.240.79
–> secondary DNS address 218.248.240.135
January 6th, 2009 on 9:58 am
Priyadarshi,
I recommend you to remove the modem, check the output in /var/log/messages. and the plug it back in and once again see the device being initialized in /var/log/messages. Only then you can go ahead and get connected. Other wise, you once again have to go through the steps mentioned in my article.
January 8th, 2009 on 6:06 pm
Thank you Shiv,
I sorted it out yesterday. The whole thing had issues with Passphrase. And the moment i made a change with seahorse command in a pop up window,sorrow was over. It got connected in no time. thanks a lot again.
January 13th, 2009 on 3:38 pm
I’ve done everything……..whenever i run wvdial…..all the steps were carried out fine except the lat two line which says…..
primary dns address 4.2.2.2
secondary dns address 4.2.2.3
I dont think it should be like this…….where am i going wrong….
please help me…..iam getting frustrated now
January 13th, 2009 on 3:39 pm
and yes……i cannot surf internet
February 13th, 2009 on 11:36 am
now , BSNL is providing new ZTE device with calling feature. I got y shape usb xtension cable with it. i m facing pro in this method:
1. done
2. done
3. done but nothing is inside /proc/bus/usb/.usbfs
4.Qualcomm is not being described.
stopped
February 13th, 2009 on 7:06 pm
Feb 13 19:13:33 eshant-desktop kernel: [ 531.480016] usb 1-2: new full speed USB device using uhci_hcd and address 4
Feb 13 19:13:34 eshant-desktop kernel: [ 532.156016] usb 1-2: new full speed USB device using uhci_hcd and address 5
Feb 13 19:13:35 eshant-desktop kernel: [ 532.888020] usb 1-2: new full speed USB device using uhci_hcd and address 6
Feb 13 19:13:35 eshant-desktop kernel: [ 533.416015] usb 1-2: new full speed USB device using uhci_hcd and address 7
Feb 13 19:13:39 eshant-desktop kernel: [ 537.044031] usb 1-2: new full speed USB device using uhci_hcd and address 8
Feb 13 19:13:39 eshant-desktop kernel: [ 537.203740] usb 1-2: configuration #1 chosen from 1 choice
Feb 13 19:13:39 eshant-desktop kernel: [ 537.206468] option 1-2:1.0: GSM modem (1-port) converter detected
Feb 13 19:13:39 eshant-desktop kernel: [ 537.206889] usb 1-2: GSM modem (1-port) converter now attached to ttyUSB0
Feb 13 19:13:39 eshant-desktop kernel: [ 537.210906] option 1-2:1.1: GSM modem (1-port) converter detected
Feb 13 19:13:39 eshant-desktop kernel: [ 537.211296] usb 1-2: GSM modem (1-port) converter now attached to ttyUSB1
Feb 13 19:13:39 eshant-desktop kernel: [ 537.214110] option 1-2:1.2: GSM modem (1-port) converter detected
Feb 13 19:13:39 eshant-desktop kernel: [ 537.214231] usb 1-2: GSM modem (1-port) converter now attached to ttyUSB2
Feb 13 19:13:39 eshant-desktop kernel: [ 537.222654] option 1-2:1.3: GSM modem (1-port) converter detected
Feb 13 19:13:39 eshant-desktop kernel: [ 537.222920] usb 1-2: GSM modem (1-port) converter now attached to ttyUSB3
February 14th, 2009 on 2:00 pm
Let me know which OS Distribution you’re using. I recommend you to my new post – http://platonic.techfiz.info/2008/04/05/bsnl-ev-do-works-on-hardy/ – here you need not worry about the usb files mentioned in earlier articles.
February 20th, 2009 on 9:56 am
I am using ultimate ubuntu 2.0(based on 8.10 intrepid), browsing is very-very slow than vista(1 Mbps approx), please help,
one more pro- How to install updates b/c device is giving only 10-20 kBps and become unknown after some secs.