[ back to David Burns ]
As a Treo 180g owner I've been researching the various types of GSM data connections supported by Handspring Treos with the goal of optimising the data connection speed.
Initially I presumed that GSM data connections would be much like any other slow speed modem technology ... but after a couple of hours of reading I can now say that this is not the case!
This page is a brief summary of the key issues and resulting configuration options.
The Treo wireless hardware is based on a Wavecom Wismo Pac P3100 series GSM/GPRS module. These are self contained integrated GSM modules providing nearly everything (except an antenna!) necessary to add GSM functionality to any device.
The Wismo Pac is controlled via GSM specific AT commands sent over an internal serial link - conceptually very similar to a PC controlling a modem over a serial link.
Handspring have certainly done a good job of hiding the Wavecom hardware. Entering known Wismo commands via a terminal (eg. AT&V) will fail with the AT error message ERROR - currently there is no easy way to access the Wismo - although we're attempting to find out if there is a documented access mechanism.
Thankfully there are a few Wismo commands which work - ATD, AT+CBST and AT+FCLASS (used for faxing). The AT+CBST command is used to select the type of data connection...
Currently (ie pre GPRS update) with the Treo 180 & 270 only circuit switched data connectivity is possible.
With most GSM carriers, circuit switched connections are charged by duration (just like voice calls) - hence the goal is to minimise connect time!
Conversely, note that GPRS connections are generally charged by the bandwidth used - hence the goal will be to minimise the data!
The observant reader may well ask if data compression can be used to help... It depends...
Firstly, the majority of GSM networks worldwide only support 9.6 kb/s data connections - and not 14.4 kb/s which shows up in the marketing material of all GSM modem vendors. You can always try the faster 14.4 kb/s connections - sometimes they will appear to work although you really connect at 9.6 kb/s ... worst case it just won't work!
The main connection types are digital (V.110 - often used in ISDN networks) and analogue (V.34 & V.32). Digital connections are generally preferred simply because of the faster call setup times (10-15 seconds instead of 25-35 seconds).
Within these connection types there are two different connection modes - "non-transparent" and "transparent".
Non-transparent mode provides a RLP (Radio Link Protocol) reliable (ie error detection and retransmission) link from the Treo to the GSM network, with a V.42 reliable connection externally from the GSM network to the remote access server. The default Treo Wismo non-transparent mode has V.42bis data compression enabled - and will be used if supported by the GSM network.
Transparent mode provides a clear end-to-end data stream although no link protocol (eg. V.42 or MNP) is currently supported by the Treo. (NB The Wismo actually supports MNP - but not V.42 - reliable connections for Transparent mode connections. Unfortunately it is not possible to enable it via the modem init string and worse - interoperability with RAS units from major vendors - such as Cisco or Lucent/Ascend - appears to be broken... grrr...). Transparent mode would even support V.42bis data compression if either MNP or V.42 were available (and worked)...
Hence non-transparent mode is currently to be preferred because:
Instead of modifying the existing connection entries ... we'll add one or more new connections... This way the standard Treo connections are unchanged and so it is easy to return to a working config.
How to add new GSM connection types?
Easy:
In the Network prefs panel, simply modify the connection type for a given network service. Then press Connect to see if it works...
Tip: to obtain the real connection speed from your Treo - press the scroll down button while the Service Connection Progress dialog box is showing on the display. Watch for the Connect XXXX message.
List of GSM circuit switched data modem init strings - in order of preference.
| Type | Protocol | Speed | Type | Init String |
| Digital | V.110 | 14.4 kb/s | non-transparent | AT+CBST=75,0,1; |
| Digital | V.110 | 9.6 kb/s | non-transparent | AT+CBST=71,0,1; |
| Analogue | V.34 | 14.4 kb/s | non-transparent | AT+CBST=14,0,1; |
| Analogue | V.34 | 9.6 kb/s | non-transparent | AT+CBST=12,0,1; |
| Analogue | V.32 | 9.6 kb/s | non-transparent | AT+CBST=7,0,1; |
| Digital | V.110 | 14.4 kb/s | transparent | AT+CBST=75,0,0; |
| Digital | V.110 | 9.6 kb/s | transparent | AT+CBST=71,0,0; |
| Analogue | V.34 | 14.4 kb/s | transparent | AT+CBST=14,0,0; |
| Analogue | V.34 | 9.6 kb/s | transparent | AT+CBST=12,0,0; |
| Analogue | V.32 | 9.6 kb/s | transparent | AT+CBST=7,0,0; |
| Default | Analogue | 9.6 kb/s | non-transparent | AT+CBST=0,0,1; |
NB1 Trailing semicolon ';' on Init String is important!
NB2 Many GSM networks do not support 14.4 kb/s circuits... see
Circuit Speeds section.
NB3 Treo Wavecom default configuration does not currently support
V.42 or MNP reliable links in transparent mode (bug).