
API operation
9XTend-PKG-R RS-232/485 RF Modem User Guide
67
•
In point-to-multipoint systems, the application must send extra information so that the receiving modem(s) can
distinguish between data coming from different remotes.
As an alternative to the default Transparent Operation, API (Application Programming Interface) Operations are
available. API operation requires that communication with the modem be done through a structured interface (data is
communicated in frames in a defined order). The API specifies how commands, command responses and modem
status messages are sent and received from the modem using a UART Data Frame.
API frame specifications
Two API modes are supported and both can be enabled using the AP (API Enable) command. Use the following AP
parameter values to configure the modem to operate in a particular mode:
•
AP = 0 (default): Transparent Operation (UART Serial line replacement)
API modes are disabled.
•
AP = 1: API Operation
•
AP = 2: API Operation (with escaped characters)
Any data received prior to the start delimiter is silently discarded. If the frame is not received correctly or if the
checksum fails, the data is silently discarded.
API Operation (AP parameter = 1)
When this API mode is enabled (AP = 1), the UART data frame structure is defined as follows:
MSB = Most Significant Byte, LSB = Least Significant Byte
API Operation - with Escape Characters (AP parameter = 2)
When this API mode is enabled (AP = 2), the UART data frame structure is defined as follows::
MSB = Most Significant Byte, LSB = Least Significant Byte
Escape characters
When sending or receiving a UART data frame, specific data values must be escaped (flagged) so they do not interfere
with the UART or UART data frame operation. To escape an interfering data byte, insert 0x7D and follow it with the
byte to be escaped XOR’d with 0x20.
Data bytes that need to be escaped:
•
0x7E – Frame Delimiter
•
0x7D – Escape
Start Delimiter
(Byte 1)
Length
(Bytes 2-3)
Frame Data
(Bytes 4-n)
Checksum
(Byte n + 1)
0x7E
MSB
LSB
API-specific Structure
1 Byte
Start Delimiter
(Byte 1)
Length
(Bytes 2-3)
Frame Data
(Bytes 4-n)
Checksum
(Byte n + 1)
0x7E
MSB
LSB
API-specific Structure
1 Byte
Characters Escaped If Needed