Support LQ: Use code LQ3 and save $3 on Domain Registration
Go Back > Linux Answers > Hardware
User Name


By petersum at 2006-05-25 18:20
This, and many other forums, are full of enquiries as to how to get a CDMA modem to work. So this is a mini Howto which I hope will help many of you.

This describes my experience of setting up a "ZTE" Fixed Wireless Phone for use on PTCL Wireless in Pakistan. It should be of use for any modem or modem/phone which uses the "Qualcomm CDMA Technologies MSN" modem.

For those who have just bought one of these phones and are itching to get started immediately, this phone works very well on the S.u.S.E. 9 Livecd. Just use YaST2 to set up the modem, then Kinternet to connect.
Now if S.u.S.E. can do it, why can't we set it up on ANY Linux system? That is just what we will try to do here.

OK, this involves many steps but is quite easy. You probably will have to download some RPM's so fire up the dreaded windowsXP if necessary! (The supplied ZTE win98 driver doesn't work!)

YOU MUST BE 'root'.

First step is to issue the command "dmesg" in Xterm/console to see if your USB controller(s) have been found and registered. Many Linux distributions have a nasty habit of NOT loading any usb modules unless something known to Linux is plugged into a usb port! If you are lucky, you will see your phone listed - if not, don't worry because either way, it isn't going to work yet! You must see something like: "USB hub found" and "2 ports detected". This doesn't guarantee that they are working though. Only if you see "usbcore: (something)" can you be sure that the usb system is workable.

Whatever, keep your fingers crossed and continue.

Next, go to /sbin and issue the command "modprobe cdc-acm" or "modprobe acm". (Names vary according to distribution and kernel version. If one reports "Not Found" try the other.) Run "dmesg" again to see the result. Hopefully, you will now see three lines or so describing a "USB ACM device". You should also see "ttyACM0" or something similar - this is your modem's location —> /dev/ttyACM0. Again this may vary according to the kernel version and a search of /dev/usb may find something.
Now, let us double check that all is OK with "cat /proc/modules" - cdc-acm or acm is there? If yes, then your phone is about to come alive.

What happens next depends on your distribution. Shutdown and restart. Check again "cat /proc/modules". If cdc-acm or acm is there, then your system has automagically added the module. If not, you will have to add it to /etc/modules.conf manually.

Restart again, and again, until this step has been completed successfully. If you haven't got this stage working, it will be a waste of time to continue.

Step 2
We need "wvdial" for this modem/phone. I am using Alinux which is a one CD distribution. So lack of space on the CD means a lot of items are missing. If you have a monster distribution, then perhaps you have everything, but not necessarily the correct versions. Therefore I suggest that you start out fresh by downloading the latest versions of each required package. "wvdial" is very sensitive about the versions of its dependent packages.

I don't like compiling stuff so we'll get ready made RPM's from or elsewhere. If a package doesn't exist specifically for your distribution then Mandrake packages seem to work well. (Yes, I know Mandrake has changed its name but still identifies them that way!) OpenSuse packages work too when Mandrake is not available.

I would further suggest using "kpackage" so that you can easily check for "Unsatisfied Dependencies". This is IMPORTANT!!! Forcing a package to install without all the dependent packages will result in failure. You have been warned!

Right let us get started.
First we need xplc
I used xplc-0.3.12-1.i586.rpm

Next comes libwvstreams but this needs and
*This is probably way out of date by the time you read this, so check these dependencies carefully!

Look in /lib AND /usr/lib to see if you have these.

Finally wvdial itself. It requires libwvutils which is presumed to be part of libwvstreams?

Once again, I warn you - if these packages didn't install correctly, don't bother to continue.

Step 3
Remove any other modems from your system or wvdial will find the "wrong" modem! Built-in modems (on your main-board) need to be disabled in the bios setup.

Setup wvdial with wvdialconf (after reading the man page please!)

It must reject all the COM port locations before it finally finds your usb modem/phone (hopefully).

Found it?

Then goto /etc/ppp

Edit your pap-secrets and chap-secrets files. Both need one line containing:
username * password *
(Those are tabs - not spaces - between the items)

Check /etc/ppp/options to make sure it doesn't have anything silly in it! We will override this file anyway.

Check /etc/ppp/peers that it contains two wvdial files. You can change the "name" part in these files if desired to your connection name. If this directory doesn't exist, then wvdialconf wasn't run successfully!

Finally, edit /etc/wvdial.conf
This is my copy:

[Dialer ptcl]
Modem = /dev/ttyACM0
Baud = 460800
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ISDN = 0
Modem Name = CDMA
Modem Type = USB Modem
Phone = #777
Username =
Password = ptcl
Stupid Mode = 1
PPPD Options = crtcts multilink usepeerdns lock defaultroute
Obviously change your phone number, username, password to suit your connection.

The connection name is after "Dialer" in the square brackets. Choose your own name.

That's it! Configuration is complete.

Step 4
Some distributions have a damn silly pppd so you had better check it first.

Enter "pppd" in the Xterm/console and see what happens.

Any error message should tell you what to do. On my system, the daemon was running but it gave an error message saying that /dev/ppp didn't exist. OK, make it! Next restart and it didn't exist again!?! Put "mknod /dev/ppp c 108 0" at the end of rc.M in /etc/rc.d - fixed! If you're using sysV, figure out where to put it yourself.

If all is well with pppd, you will see garbage being printed out on your screen. Don't worry, it stops after a few lines. Garbage means it is working properly -duh!

Step 5
OK! We are ready. Open Xterm and type "wvdial (connectionname)" , that is "wvdial ptcl" in my case.
Now you can either celebrate or go back and check your spelling! It should be working.
ctrl-c breaks the connection when you are finished.

Final Notes
The pppd options are guesswork. Probably multilink isn't supported and if the modem uses crtcts or not, I really don't know. However they don't break anything so I leave them there.

The baud rate is highly optimistic - 115200 is the actual connection speed from PTCL.

If it won't initialize your modem, remove any lock file from /var/lock and try again.

A word of warning! Make sure the phone does disconnect when you tell it to! Many times it remains connected even after shutting down the computer. Actually, in Pakistan, the electric supply company normally closes my computer!!! We don't get 24/7 electricity! Use the on/off switch on the phone if this happens.

There seems to be a rather short "no-activity" timer on PTCL so have your browser up and ready first, before connecting.

A strange point is that your username and password is not used by the ISP, but wvdial itself needs it.


by imranmalik on Sat, 2006-10-14 06:15
This article explain in detail installing the device. but i tell u that i got stuck at third step when wvdial is going to run. before it i checked "dmesg" and cat /proc/module i got the following listing (i m pasting only the lines which i think r related to my device)
[17179590.412000] usbcore: registered new driver usbserial
[17179590.412000] drivers/usb/serial/usbserial.
c: USB Serial support registered for generic
[17179590.412000] usbcore: registered new driver usbserial_generic
[17179590.412000] drivers/usb/serial/usbserial.
c: USB Serial Driver core
[17179590.416000] drivers/usb/serial/usbserial.
c: USB Serial support registered for TI USB 3410 1
port adapter
[17179590.416000] drivers/usb/serial/usbserial.
c: USB Serial support registered for TI USB 5052 2
port adapter
[17179590.416000] ti_usb_3410_5052 12:
1.0: TI USB 3410 1 port adapter converter detected
[17179590.416000] ti_usb_3410_5052: probe of 12:
1.0 failed with error 5
[17179590.416000] usbcore: registered new driver ti_usb_3410_5052
[17179590.416000] drivers/usb/serial/ti_usb_3410_5052.c: TI USB 3410/5052 Serial Driver v0.9
if i m not wrong. i think this is my device what u think?
now when i run wvdial it returns error describing that could not find /dev/modem. and i m stuck here.
can anyone else help me further more to be hooked?

by petersum on Sat, 2006-10-14 19:27
No, that is NOT a CDMA modem.
You should see:

cdc_acm in at least three lines, the last of which should include:
"USB Abstract Control Model driver for USB modems and ISDN adapters"

by imranmalik on Sat, 2006-10-14 19:40
well dear then it has is not there. i m using ubuntu 6.06 and huawei ets2051/2251/2551 fwt, in islamabad, pakistan for vPTCL.
so can u giude more?

by unSpawn on Sun, 2006-10-15 07:38
Please post your questions in one thread in only one forum. Posting a single thread in the most relevant forum will make it easier for members to help you and will keep the discussion in one place. Replies to your question should be redirected to Alternatively ask the moderator of that forum to close your duplicate thread and continue here.

by imranmalik on Sun, 2006-10-15 11:44
Please post your questions in one thread in only one forum. Posting a single thread in the most relevant forum
well i must say sorry for that but i need to get things learn here i think i previously (i dont remember where ) mentioned that it is the very first time i m using this kind of FORUM thing. so i need time to learn things and i hope that by the TIME my problem get solved, i must be a moderator or something like that..... . just kidding!. plz everyone do look to my problem, just let me solve only one CDMA configuration. plz. plz.

by petersum on Sun, 2006-10-15 20:39
Since the article is based on a vPTCL connection, I know it DOES work! Read the article again and concentrate on stage one!

by imranmalik on Sun, 2006-10-15 23:22
Since the article is based on a vPTCL connection, I know it DOES work
i never mentioned that this article is false. all i said is that this article is for ZTE 2077. while i m using ETS2051. is ok for both of these?
i tried the step one many times but it does nothing..............

by imranmalik on Mon, 2006-10-16 15:15
well petersum, as i have been mentioning every time that i m a very fresh newbie, i mentioned in my reply to ur article that i m using Serial to USB with Huawei 2051 bla bla. and now after searching and learning a bit i m sure that ur modem is not with serial to usb rather it may be pcmcia or whatever, so i not getting anything. please guide me if i still have to pursue your article or i must do something else??? WHAT ELSE, CAN I DO?

by cyb0rg777 on Tue, 2006-10-17 03:05
I hope this question isn't too dumb.I don't understand what service your dialing in to that doesn't require a username and password.Is it like a cellular service isp or something?Would it work if I wanted to dial in to my home computer or local isp? I mean will it do everything a regular modem does?That would be great.

by masroorgilani on Tue, 2006-10-17 08:57
[Hi all. I am new to this site. Just installed Ubuntu 6.06and looking for how to hook the ZTEWP960 CDMA handset for internet access. Guidance appreciated. regards.


All times are GMT -5. The time now is 02:05 AM.

Main Menu

Write for LQ is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration