Internet Access over a CDMA Phone
I currently subscribe to SprintPCS
service, which uses CDMA. My Qualcomm QCP-2760 CDMA phone will emulate a
modem with a Hayes command-set. I regularly use this phone to access
the Internet, from both my Palm III and from my laptop which runs NetBSD.
(I tried the WAP browser that's built into the phone, and found it
worse than useless.)
The SprintPCS people were happy to bill me $10 extra per month to
allow me to use the phone to connect to the Internet (this is part
of what they call ``Wireless Web''), but they weren't particularly
helpful at explaining how to do it. One support person went so far
as to tell me it wasn't possible.
As best I can remember, here's what I had to do to get this work
for the Palm III:
- I bought a kit that contains a very nice (meaning compact)
cable to connect between the Palm III and the QCP-2760
from the
Kyocera Wireless Store. (Kyocera has taken over
Qualcomm's CDMA phone manufacturing business, so this is where
to go to get accessories for Qualcomm phones.) The kit (#TXDTA03G1)
I bought also came with a leather case that would hold the CD
and the phone, along with a CD of software. The combination of
the phone, organizer, cable, and case is huge and awkward,
and I didn't end up using any of the software. Now you can buy
just a "replacement cable" (#TXDTA003G) from them and avoid paying
for the case and CD.
Note: The Palm III cable probably works with several models of Palm
that use the same connector and have approximately the same pinouts.
You can get details on connector pinouts from Palm if you dig through
their web site. Kyocera also makes similar cables to connect this
phone to the Palm V series, and several other phones to Palm III,
V, or VII series organizers. Unfortunately, I haven't seen any such
cables for the newer organizers from Palm. If you have one
of these you might have to resort to buying separate cables -
one to connect the Palm to a DB-9, and another to connect the
DB-9 to the phone, and you might need a null modem adapter.
- I upgraded my Palm III to PalmOS 3.3. This
upgrade
was available for free from Palm.
(you have to pay to upgrade to more recent versions, but this one
worked for me.) The biggest problem was that the upgrade has to be
done using a Windows program, and I don't run Windows on anything.
- I configured my Palm III to talk to the phone.
The Kyocera kit came with instructions for how to set the phone
up. (if you buy just the cable you can get the
instructions in PDF format) For whatever reason, they didn't quite
work with my Palm, perhaps because I was using a different version of the
OS. The following configuration worked for me to connect the Palm to
the Internet using my dialup ISP (which was Mindspring at the time):
- In Prefs, under Connection, I added a new
configuration called "mindspring".
- Connection method was set to "Serial to Modem"
- Dialing was set to "TouchTone"
- Volume was set to "Off"
- Under Details...
- Speed was set to "19,200 bps"
- Flow Ctl was set to "Automatic"
- In Prefs, under Network, I added a new service
called "mindspring".
- User Name was set to my mindspring user name
- Password was set to my password
- Connection was set to "mindspring"
- Phone was set to the phone number of a mindspring
dialup modem pool.
- Under Details...
- Connection type was set to "PPP".
- Idle timeout was set to "Power Off".
- Query DNS was enabled.
- IP Address was set to "Automatic".
- Script... was left empty.
The above configuration worked fine, but it took a long time to
establish a connection, and it ate up minutes of my (time-limited)
ISP account. SprintPCS was rumored to support direct connection to
the Internet, but none of the support people seemed to know how
to set it up. Here's what I eventually found to work:
- In Prefs, under Connection, I added a new
configuration called "sprint".
- Connection method was set to "Serial to PC"
- Under Details...
- Speed was set to "19,200 bps"
- Flow Ctl was set to "Automatic"
- In Prefs, under Network, I added a new service
called "sprintpcs".
- User Name was set to "web"
- Password was set to my "web"
- Connection was set to "sprint"
- Under Details...
- Connection type was set to "PPP".
- Idle timeout was set to "Power Off".
- Query DNS was disabled.
- Primary DNS and Secondary DNS were set to two
DNS servers which I use often.
- IP Address was set to "Automatic".
- Script... was as follows:
- Send ATDT#2932
- Send CR
- Delay 4
- End
I use PalmScape
to browse the web. I highly recommend it. I've used various Palm
SSH clients, but I don't have a favorite to recommend right now.
Many SSH clients are vulnerable to man-in-the-middle attacks because
they don't actually check the server key for validity. A couple of
mail clients are available but I haven't yet found one that does POP
or IMAP over TLS, and I don't want to expose my password to the Internet.
Here's what I did to get this to work from my NetBSD laptop:
- Bought a "replacement data cable" (#TXDTA031) for my phone
from Kyocera Wireless Store.
- Create a shell script called /etc/ppp/ppp-sprintpcs with
the following contents:
#!/bin/sh
SPEED=19200
TTY=tty00
ISP=sprintpcs
USER=web
pppd $TTY $SPEED \
defaultroute \
lock \
bsdcomp 15 \
deflate 15 \
name $ISP \
user $USER \
debug kdebug 1 \
connect '/usr/sbin/chat -v -s -f /etc/ppp/chat-sprintpcs'
- Create a chat script called /etc/ppp/chat-sprintpcs with
the following contents:
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
ABORT "BUSY"
'' AT&FX4
OK ATX3
OK ATDT#2932
CONNECT
- Add the lines web sprintpcs web and web 3com web
to /etc/ppp/chap-secrets. (why 3com? because for some reason
that's what the report PPP server asked for!)
Now typing sh /etc/ppp/ppp-sprintpcs will start up
a TCP connection over the modem.