1. Insert the card and look at dmesg
output : 0.0: ttyS3 at I/O 0x2e8 (irq = 3) is a 16C950/954
This says that your card was detected properly.
You can also run "pccardctl info"
output =
PRODID_1="CDMA1X"
PRODID_2="CARD"
PRODID_3=""
PRODID_4=""
MANFID=0279,950b
FUNCID=2
PRODID_1=""
PRODID_2=""
PRODID_3=""
PRODID_4=""
MANFID=0000,0000
FUNCID=255
2. edit /etc/wvdial.conf
[Dialer Defaults]
Modem = /dev/ttyS3
Baud = 57600
SetVolume = 0
Dial-AT-OK ATDT Command =
Init1 = ATZ
FlowControl = Hardware (CRTSCTS)
Phone = #777
Username =
Password =
New PPPD = yes
Carrier Check = no
Stupid Mode = 1
3. Run set serial
(download and install setserial - if you dont have setserial)
"setserial /dev/ttyS3 baud_base 230400"
4. run wvdial
wvdial
So to get it running everytime you will need to create a shell script doing steps 3 & 4. Say mydial
---------------
setserial /dev/ttyS3 baud_base 230400
wvdial
---------------
PS
This method is also not perfect. I got one card working with this procedure, but could not get another card working using the same procedure.
Let me know if this helps you getting your ZTE MC 315 card running on linux.
PS 2
And to add to it, finally i have got my card running.
The trick is simple - you have to play with the UART and the baud_base.
Just run setserial on your machine and it will give the following output for UART and baud_base
* uart set UART type (none, 8250, 16450, 16550, 16550A,
16650, 16650V2, 16750, 16850, 16950, 16954)
* baud_base set base baud rate (CLOCK_FREQ / 16)
What i did was that i kept on changing my UART and kept the baud_base as 230400. I changed my UART to 16850 and then to 16750. And my card responded at 16750. And i got connected to the internet
So, My dialup script does this before doing wvdial
setserial /dev/ttyS3 uart 16750
setserial /dev/ttyS3 baud_base 230400
And this gets my card running. So to get your card running, i would suggest you try setting different UART and baud_base...