GPS Receiver User Manual

A TRIMBLE STANDARD INTERFACE PROTOCOL (TSIP)
120 Copernicus GPS Receiver
Interface Scope
The Trimble Standard Interface Protocol is used extensively in Trimble receiver
designs. The protocol was originally created for the Trimble Advanced Navigation
Sensor (TANS) and is colloquially known as the TANS protocol even though the
protocol applies to many other devices.
The Lassen IQ GPS Receiver has two serial I/O communications ports. These are bi-
directional control and data ports. The data I/O port characteristics, protocol
definitions, and other options are user programmable and can be stored in non-
volatile FLASH memory.
The TSIP protocol is based on the transmission of packets of information between the
user equipment and the unit. Each packet includes an identification code (1 byte,
representing 2 hexadecimal digits) that identifies the meaning and format of the data
that follows. Each packet begins and ends with control characters.
This document describes in detail the format of the transmitted data, the packet
identification codes, and all available information over the output channel to allow
the user to choose the data required for his particular application. As will be
discussed, the receiver transmits some of the information (position and velocity
solutions, etc.) automatically when it is available, while other information is
transmitted only on request. Additional packets may be defined for particular
products and these will be covered in the specifications for those products as
necessary.
The Copernicus Monitor included in the Tool Kit is designed to exercise many of the
TSIP packets.
Run Mode Packet Structure
TSIP packet structure is the same for both commands and reports. The packet format
is:
<DLE> <id> <data string bytes> <DLE> <ETX>
Where:
<DLE> is the byte 0x10
<ETX> is the byte 0x03
<id> is a packet identifier byte, which can have any value excepting <ETX>
and
<DLE>.
The bytes in the data string can have any value. To prevent confusion with the frame
sequences
<DLE> <ID> and <DLE> <ETX>, every <DLE> byte in the data string is
preceded by an extra
<DLE> byte ('stuffing'). These extra <DLE> bytes must be added
('stuffed') before sending a packet and removed after receiving the packet. Notice that
a simple
<DLE> <ETX> sequence does not necessarily signify the end of the packet,
as these can be bytes in the middle of a data string. The end of a packet is
<ETX>
preceded by an odd number of
<DLE> bytes.