Command Extensions for Analog Cellular Data Modems
Annex I. to the PCCA Standard:
Data Transmission Systems and Equipment --
Serial Asynchronous Automatic Dialing and
Control for Character Mode DCE on Wireless Data Services
Version 1.0
30 September 1994
Submitted by
Jerry Viviano
Motorola UDS
5000 Bradford Drive
Huntsville, Alabama
35805
of the
PCCA MSC Analog Cellular Data Group
Maintained by
G. Edward Newman
Compaq Computer Corporation
20555 S.H. 249
Houston, TX 77070
The individual preparing this contribution does not know of patents, the use of which may be essential to a standard resulting in whole or in part from this contribution.
The contributor grants a free, irrevocable license to the Portable Computer and Communications Association (PCCA) to incorporate text contained in this contribution and any modifications thereof in the creation of a PCCA standards publication; to copyright in the PCCA's name any PCCA standards publication even though it may include portions of this contribution; and at PCCA's sole discretion to permit others to reproduce in whole or in part the resulting PCCA standards publication.
Annex I:
Command Extensions for Analog Cellular Data Modems
I.1 Scope
This annex specifies optional vendor-independent but network-specific commands for DCE used to transmit data via the AMPS (Advanced Mobile Phone System) analog cellular phone system. The AMPS system is specified by the following normative references:
EIA/TIA-553September 1989
Mobile Station -- Land Station Compatibility Specification
EIA/IS-19-BMay 1988
Recommended Minimum Standards for 800-MHz Cellular Subscriber Units
EIA/IS-20-AMay 1988
Recommended Minimum Standards for 800-MHz Cellular Land Stations
The commands in this annex would typically be implemented in a 'V series' modem, such as V.22bis, or V.32bis modified to communicate directly with an analog cellular phone. The wireless analog cellular phone would replace the wired GSTN subscriber loop connection. Commands specific to non-AMPS cellular phone systems such as CDPD, TDMA, and CDMA are not covered in this annex.
I.2 Invocation
Analog Cellular Data configuration is normally invoked by issuing the +WS46=7 command. (See ¤ 5.2.4.7, ¤ 7.2) The +WS46=7 command will not be necessary if the DCE power-up mode sets +WS46 to 7, and +WS46 had not since power-up been set to some other value.
I.3 Configuration
Regardless of method used to enter the Analog Cellular Data mode, the DCE must be able to send and receive control signals to and from the cellular phone control processor. This control path is necessary for successful completion of the majority of the commands in this annex. Such a bus allows the DCE to interrogate and control the phone, taking advantage of its additional analog cellular features. An example would be the ability to monitor received cellular RF signal strength. As such, setting +WS46=7 only makes sense when such a bus exists and therefore requires it. In this annex, this bus will be referred to as the cell-bus. Note that the cellular phone control processor and the modem control processor may be the same. In this case the cell-bus is a virtual data path within the control processor. Further, this standard places no limits on the physical connection between or locations of the modem and cellular control processors.
By setting +WS46=7, the cell-bus is automatically enabled. Setting +WS46 to any value other than 7 disables the cell-bus. Figure I.1 illustrates the general relationship between the cell-bus and the rest of the major components. Figure I.1 is not meant to be totally authoritarian, that is, any other vendor chosen alternate configuration that performs the same functions would be acceptable.
Generally, there is associated with the cell-bus an analog path for transmitting and receiving the audio signals directly to and from the cellular phone. As such, setting +WS46=7 also routes audio signals through an analog portion of the cell-bus.
The ability of the cell-bus to transfer control and status information and audio signals between the DCE and the cellular phone is all that is specified concerning the cell-bus. Electrical parameters and digital information format are totally vendor specific.
Figure I.1 Analog Cellular Data General Remote Configuration.
I.4 Analog Cellular Result Codes
For command entry errors such as command name or parameter errors the standard ERROR <CR<LF> error message will be used. To indicate error conditions pertinent to analog cellular data specific functionality, +WERROR: n<CR<LF> will be used, where n is an error code. Table I-1 below specifies values for n, and the associated condition causing the error.
n / Condition / TerseEquivalent
1 / DCE cannot communicate with cellular phone. Reason unknown. / 6001
2 / DCE cannot communicate with cellular phone because the cell-bus is disconnected. / 6002
3 / DCE cannot communicate with cellular phone because phone is powered down. / 6003
Table I-1 Error Codes and Meanings
I.5 Analog Cellular Data Mode Commands
Section I.5 contains descriptions of each of the commands that make up this annex. Note that the only command that is mandatory is the Data over Analog Cellular Commands Query Command, +WDAC. All other commands are optional.
I.5.1 Data over Analog Cellular Commands Query
Action Syntax
+WDAC(display valid commands)
+WDAC=?(test command)
Description
This command allows the DCE to report back to the DTE which of the commands of the Analog Cellular Data Modems annex it has implemented.
When the DTE invokes this action (via +WDAC) the DCE must output the names of implemented Data over Analog Cellular commands. Each name will be delimited by double quotes, the quoted strings being separated by commas. The names will be a subset of the list of valid analog cellular data command names, excluding "+WDAC". These would be the following, in the given order:[*]
+WCTO,+WECR,+WRLK, +WFON,
+WBAL,+WDIR, +WPBA, WPTH
For example, assume the DCE supported only the +WCTO and +WECR analog cellular data commands. The output would be:
"+WCTO","+WECR"<CR<LF>
OK<CR<LF>
The DCE may also present the sub-strings in a multi-line format as follows:
"+WCTO",<CR<LF>
"+WECR"<CR<LF>
OK<CR<LF>
Note that a trailing comma is used to indicate continuation onto another line.
The DTE responds to the action test format (via +WDAC=?) with OK<CR<LF>.
Since +WDAC is an action command, it will return an ERROR<CR<LF> result code if the DTE attempts to set it to a value (via +WDAC=<value>), or to read a value (via +WDAC?).
Defined Values
+WDAC is an action command and therefore has no values.
Recommended Default Setting
+WDAC is an action command and therefore has no default setting.
Implementation
Implementation of this command is mandatory.
I.5.2 Call Session Time Limit
Parameter Syntax
+WSTL=<value>(set time-out)
+WSTL?(display current time-out)
+WSTL=?(display valid time-outs)
Description
Allows the user to specify a call Session Time Limit threshold. Any call that has logged more than this threshold is automatically terminated. The threshold is specified in terms of 10 second segments. For instance, if +WSTL was set to 8, a call time limit of 80 seconds would be configured. The timer begins at the instant after dialing.
The DCE must output the current setting of the +WSTL parameter when the DTE queries for this parameter (via +WSTL?).
The DCE sets the maximum call duration in minutes when the DTE sets this parameter to a valid value (via +WSTL= <value>).
The DCE must output an OK<CR<LF> result code when the DCE tests for this command (via +WSTL=?).
Defined Values
0Disables the automatic time-out feature.
1<=+WSTL<=255Sets the call duration time-out to the specified value.
Recommended Default Setting
The recommended default setting of +WSTL is 0, which defaults it to disabled.
Implementation
Implementation of this command is optional.
I.5.3 Enable Cellular Result Codes
Parameter Syntax
+WECR=<value>(enable/disable cellular result codes)
+WECR?(display current cellular result codes setting)
+WECR=?(display valid cellular result codes settings)
Description
The analog cellular system may present the DCE with signaling beyond what is common in the GSTN. For instance, when there is no channel available for a requested link, the cellular system responds with a 'REORDER' message. It may be desired to relay this information from the cellular phone all the way back to the DTE. Some user applications designed to interface with standard modems are expecting standard result codes. Defaulting to non-cellular result codes permits the DCE to interface with these existing communications packages.
Implementation of the Enable Cellular Responses command affords the more informative cellular specific result codes to analog cellular data compatible applications. Table I-2 lists the extended result codes, the terse extended result codes, and the GSTN result codes that will be used as substitutes when the extended result codes are disabled (via +WECR=0)
Extended VerboseResult Code / Extended Terse
Result Code / GSTN Verbose
Result Code
+WLOCKED / 5888 / NO DIALTONE
+WINTERCEPT / 5889 / BUSY
+WREORDER / 5890 / BUSY
+WDROPPED CALL / 5891 / NO CARRIER
+WCALL TIMEOUT / 5892 / NO CARRIER
+WROAM LOCKOUT / 5893 / NO DIALTONE
+WNO SERVICE / 5894 / NO DIALTONE
+WLOW RSSI / 5895 / NO DIALTONE
Table I-2 Cellular Responses and GSTN Responses
The DCE must output the current setting of the +WECR parameter when the DTE queries for this parameter (via +WECR?).
The DCE enables or disables the cellular result codes when the DTE sets this parameter to a valid value (via +WECR= <value>).
The DCE must output the list of valid +WECR settings when the DCE tests for this command (via +WECR=?).
Defined Values
0Use GSTN result codes.
1Use Cellular result codes.
Recommended Default Setting
The default setting is 0, to use GSTN result codes.
Implementation
Implementation of this command is optional. Regardless of whether the +WECR command is implemented, the standard GSTN result codes are mandatory.
I.5.4 Roam Lockout[*]
Parameter Syntax
+WRLK=<value>(enable/disable roam lockout)
+WRLK?(display current roam lockout setting)
+WRLK=?(display valid roam lockout settings)
Description
Enabling the Roam Lockout feature disallows answering or originating calls when the cellular transceiver is in the roam mode.
The DCE must output the current setting of the +WRLK parameter when the DTE queries for this parameter (via +WRLK?). The DCE must output a list of valid +WRLK settings when the DTE tests for this parameter (via +WRLK=?).
Defined Values
0Disables Roam Lockout. Allows originating and answering calls in Roam mode.
1Allows originating and answering calls in non-Roam mode only.
Recommended Default Setting
The default setting is 0, disabling Roam Lockout.
Implementation
Implementation of this command is optional.
I.5.5 Phone Specification
Parameter Syntax
+WFON=<"string">(set phone ID)
+WFON?(display current phone ID)
+WFON=?(display valid phone IDs)
Description
This command is used to specify to the DCE the type of cellular phone that it is connected to via its cellular specific connection. The parameter is set to a string type setting. For example, +WFON= "XYZ52"<CR>. ÊThe parameter is limited to 16 characters maximum in length. Vendors are recommended to keep the parameter strings much shorter than that.
When the DTE sets this parameter to a valid string (via +WFON= <"string">) the DCE may use this information in any way the manufacturer sees fit. For instance, transmit levels may be adjusted appropriately, or keypad emulation may be tailored to the specified phone.
For devices that integrate a modem and cellular phone hard-wired, +WFON will beset to the sting "INTERNAL".
The DCE must output the current string setting of the +WFON parameter when the DTE queries for this parameter (via +WFON?).
The DCE must output a list of valid +WFON string settings when the DTE tests for this parameter (via +WFON=?).
The DCE will return an ERROR<CR<LF> result code if the DCE determines that it is unable to support the requested phone type.
Defined String Values
Defined string values are vendor specific.
Recommended Default Setting
The default setting is vendor specific.
Implementation
Implementation of this command is optional.
I.5.6 Bias Modem Audio Gain
Parameter Syntax
+WBAG=<value>(set gain level)
+WBAG?(display current gain level)
+WBAG=?(display valid gain levels)
Description
The +WBAG command is used to Bias the DCE Audio output Gain. (Please note that this has nothing to do with the wireless transceiver RF output power level.) Since audio interface impedance varies from vendor to vendor, dBm units are inappropriate. The command will therefore be used to bias on a relative basis in 1 dB steps from the vendor suggested (default) audio output level. For example, if the DTE sets the value of +WBAG to 2, (via +WBAG=2) the modem audio output level to the phone would be 2 dB above the vendor suggested level.
In on-line command mode, a vendor suggested level is determined after the modulation technique has been selected during data mode. This becomes the current vendor suggested level. The current allowable biasing range is now based on the current vendor suggested level, and may therefore differ from the off-line range. If the off-line setting is outside the current valid bias range, the actual biasing is limited to the current range, but +WBAG is not changed.
In either off-line or on-line command mode, the DTE may set this parameter to a valid value via +WBAG= <value>. An ERROR <CR<LF>result code is returned if the command is not supported in the current mode, or if the +WBAG value specified by the DTE is outside the current valid range. If this command is implemented in the current mode, the DCE must output a list of valid +WBAG settings when the DTE tests for this parameter (via +WBAG=?).
The DCE must output the current string setting of the +WBAG parameter when the DTE queries for this parameter (via +WBAG?).
If the +WBAG parameter is modified during on-line command mode, that setting carries over to the following off-line command mode.
Defined Values
The valid range of decimal settings is vendor specific and may be both positive and negative.
Recommended Default Setting
The default setting is 0.
Implementation
The vendor may opt to implement +WBAG as:
1) Off-line command mode only,
2) Both off-line and on-line modes
3) Not at all.
I.5.7 Keypad Emulation
Action Syntax
+WKPD(enter keypad emulation mode)
+WKPD <"string">(interpret "string" as keypad input)
+WKPD=?(test command)
Description
The keypad emulation command allows the DTE to drive the cellular phone as if the DTE had access to the handset KeyPaD. This is initiated by the DTE sending to the DCE an ASCII character to represent each keystroke desired. The DCE then sends the appropriate command(s) via the cell-bus to the cellular phone to carry out the functions requested by the DTE.
The DTE command string may be supplied as an argument to the +WKPD command (via +WKPD <"string">). If the +WKPD command is entered without an argument (via +WKPD <CR>) the commands are entered interactively. A second <CR> terminates the interactive session.
Table I-3 defines the standardized codes. PCCA reserves the right to add to this table in the future. Character strings delimited by single quotes ("'"ASCII 27H) are interpreted as alpha entries. For instance while CS is interpreted as the command pair <Clear Send>, 'CS' is interpreted as the character pair "CS".
The DCE may also (vendor option) emulate the handset LCD/LED display by sending back to the DTE those display responses that would be shown on the cellular phone's display panel in response to command input. Each phone display response is followed by the line terminator characters stored in the S3 and S4 registers, typically <CR> and <LF>. If the vendor supplies the display emulation option, it defaults to being on. The display emulation is disabled by enclosing the command(s) within brackets ([] ASCII 5BH and 5DH).
Command entry and response may be done in an interactive mode. The interactive mode is initiated by typing +WKPD<CR> without an argument. The interactive session is terminated by entering another <CR>.
A sample interactive session is shown below. Note that since the digits of the phone number are enclosed in brackets there is no LCD emulation for this portion of the command. Had the brackets not been used, each digit of the phone number would be echoed back twice: once by the DCE, and once by the LCD emulator. The S (Send) character, being non-enclosed, displays back the IN USE<CR<LF> message. (Display Emulation responses are vendor defined.)