Chapter 6 – Voice Commands
SocketModem Global MT5634SMI Developer’s Guide 57
Interface Configuration Commands
The commands in this section are used to define the interface between the PC and the modem.
Command: +VBT=<deassert>,<assert> Set Modem Flow Control Assert and Deassert Points
Values: <assert> and <deassert> are buffer offsets from the start of the buffer. The buffer's first position is
0. The offset units are octets.
Result Codes: OK if the modem accepts the command; ERROR if either the <assert> or <deassert> parameter is
greater than the buffer size, or if the <de-assert> parameter is greater than or equal to the <assert>
value.
Description: The +VBT= command is used to set the flow control assert and deassert points inside the modem's
internal transmit buffer. As data is sent from the PC to the modem and is stored in the modem's
buffer, when the number of octets in the buffer equals the <assert> value, the modem asserts flow
control to the PC (e.g., turns off CTS circuits, or sends an XOFF character). As the modem
removes data from the buffer and processes the data, when the number of octets in the buffer
equals the <deassert> value, the modem de-asserts flow control (e.g., turns on CTS circuits, or
sends an XON character). The modem may inform the PC (using the +VBT=? command) that the
PC does not permit the modifying of the flow control assert and deassert points by returning a
single value, not in the range of values, for each control point.
The +VBT= command controls the amount of "skid" in the modem's voice buffer, where "skid" is the
amount of octets that the modem could accept before losing data after the modem asserts an off
flow control signal to the PC.
You can use the +VBT= command to balance performance versus robustness. For example, if the
PC knows there are only 16450 UARTs present, a small "skid" is probably sufficient. If there are
16550 UARTs present, a larger "skid" is probably required.
Command: +VBT=? Report Modem Flow Control Assert and Deassert Points
Description: The +VBT=? command displays the possible <assert> and <deassert> values set by the +VBT=
command, followed by the OK result code.
Example: In the lines below, the +VBT=? command is used to ask about the modem's flow control and buffer
size ranges. The modem reports the deassert point is adjustable between 20 and 100 octets, the
assert point is adjustable between 150 and 180 octets, and the transmit buffer size is 200 octets.
AT+VBT=?
(20-100) , (150-180) , (200
OK
Command: +VPP=<enable> Enable or Disable Voice Mode Packet Protocol
Values: 0, 1; (2–255 reserved for future standards)
Result Codes: OK if the modem accepts the command; ERROR if the <enable> value is out of range.
Description: The +VPP= command enables and disables the Packet protocol for Voice mode operation, and
handles the new unsolicited Voice mode result codes. The Packet protocol is used to detect lost
octets on the modem-to-PC serial link, and to recover the lost octets by requesting retransmission.
The Packet protocol assumes that the data corruption is not a problem on the communications link,
the last octet sent will never be lost due to data overrun (i.e., that the newer octets always overwrite
previous octets in the communications input buffer, a common UART design feature).
Several PC processes can cause serial input channel neglect for longer than the Protocol time
between asynchronous characters (typically less than 521 microseconds), and data loss can occur.
If a character is lost in the received data, the playback of the voice data may be impaired or lost. If
a character is lost in the final result code, the connection may fail. The Packet protocol permits
recovery from such data loss.