See further down for a script that automates the setup of the modem.
Merlin C-201 PCMCIA Card
The Merlin C-201 PCMCIA CDMA card seems to work well with Linux.
Basically, the card just runs as a PPP device. To set it up, simply
set up /etc/ppp/peers/cmda and
/etc/ppp/chat-merlinc201. Then run:
setserial /dev/ttyS1 baud_base 460800
pppd call cdma
Yes, the setserial is supposed to be 460kbps, even though you're running
the modem at 230kbps.
After about 30 seconds the line should come up.
If it doesn't work
Some folks have reported that the above doesn't work and that
some authentication needs to be added. I've never had to use a password,
but maybe that's because I signed up really early with my account. I got
it in the first week they were offering it.
What happens is that the PPP session establishes as normal, but pings
and other data just don't get any response. To resolve this, you can add
a line to "/etc/ppp/chap-secrets" which looks like:
PDSN <username> <password>
Where <username> is the user name you were given from Sprint
when you signed up, and <password> is the corresponding password.
Then add a line containing "user <username>" to the
"/etc/ppp/peers/cdma" file.
The authentication information comes from
William A. Stein's
Merlin C-201/Sprint page
PCMCIA Problems
Of course, this device is a modem on the PCMCIA bus. If you have a
serial port at /dev/ttyS0 on your system, obviously you'll have to
change the PCMCIA configs to re-locate the Merlin card to another
interrupt, etc...
Jeffrey Mark Siskind has reported that on his laptop, he had to
add the following lines to "/etc/pcmcia/config.opts":
exclude irq 3
exclude irq 4
exclude port 0x2f8-0x2ff, port 0x3f8-0x3ff
Then re-start the PCMCIA services and you should see that the Merlin
card comes up as ttyS2 (the above tells it not to use ttyS0 and ttyS1).
Of course, you'll have to adjust the above if you have something already
on ttyS2 (COM3), and you'll definitely have to change the scripts you got
from this page from "ttyS0" to "ttyS2".
Speed
William
A. Stein's page reports that he's seeing about 56kbps. It's likely
because he's locking his modem to 56kbps in his configs. I've sent him
an e-mail about this, but haven't seen that he's updated his configs.
I'm definitely seeing way more speed than this. Downloads will often
run around 12KB/sec, which is closer to 100kbps.
The biggest problem with this service is the latency. Ping-times to
the Sprint network range between 250ms and 750ms but they have a pretty
solid 500ms (half a second) latency. This can make interactive performance
fairly painful. You'll definitely notice that loading pages and other things
just take longer to start, but once the connection is made the pages come
down fairly quickly.
Debugging
First of all, can your system communicate with the modem? If you start
up a terminal emulator like minicom, and configure it to use the appropriate
/dev/ttyS* file and 230400, you should be able to type "AT" and press the
"enter" key, and have the modem reply with "OK". If you don't, the modem
isn't showing up where you expect it is, or otherwise isn't configured
properly. Solve this problem as you would any other PCMCIA modem that isn't
responding. Check "dmesg" or "/var/log/messages" to see if PCMCIA is putting
the modem on /dev/ttyS0 or another location.
If you can talk to the modem with a terminal emulator, but still have
problems passing data to the net, make sure that you have tried the
authentication section above. I don't have to, but apparently some do...
Otherwise, try debugging it as you would any networking (particularly
PPP) problem. Can you ping remote sites by IP address? Can you make web
connections by IP address. Do you only have problems reaching the network
that you usually make an ethernet connection to? The latter is probably
because you still have your ethernet connection configured to think that
you are locally connected to that network. If you use DNS servers in that
network, this can cause major problems.
Still having problems
The above includes all the knowledge that I have about issues
specifically related to using the Merlin C-201 card with Linux. If you have
followed the above and are still having problems, it's fairly likely that
it's a general networking problem and can best be answered by the normal
Linux support outlets, such as your local Linux users groups, searching
the Google Linux Search Engine
and other areas.
Please try using public mailing lists and your local Linux Users Groups
before privately mailing me asking for help. First of all, if you ask on
a LUG mailing list and get a reply on how to fix it, that will be archived
for other users to find via search engines. Obviously, I like to help out
other Linux users or I wouldn't have put up this page. However, private
requests for support for these instructions prevent me from working on
other open source projects.
If you find problems with the instructions here and have some
suggestions to offer on how to fix them, I'd definitely like to hear
them, so that I can improve this page. Just please try asking on the
normal support forums before mailing me privately.
Other Devices
I've gotten some basic information for the Samsung N400 phone listed
below. Other devices I know about will be listed on the tummy.com laptops help
page. If you are looking for help for a device which isn't listed
here or on that page, rest assured that I'm not deliberately holding
back the information from you.
Please don't mail asking if I know how to get a device working
which isn't listed on this site... Try the instructions for the devices
I do have listed -- if they work, great. If they don't, there's
probably nothing I can do to help you... Sorry.
Automated Setup Script
Joe Harnish has built a script which automates the setup of the
Merlin C-201 card (link no longer available). I haven't tried it, but it
looks like you just run it and it sets up the files you need and according
to the instructions above, and then starts up pppd to connect the modem.
It looks like good stuff.
To download the file from this site, use the right mouse button click
to download the link (your browser may use different actions, but most
will work with this).
I have a local copy
(start_sprint_pcs.sh) in case Joe's copy
is unavailable due to bandwidth limitations, etc. Try his site first, as
it's going to have the most up to date copy.
Samsung N400 Phone
"Matt" has reported that this phone works using the following init strings:
"" "AT"
OK "ATZ"
OK "ATE0V1"
OK "AT+IFC=2,2"
OK "ATDT#777