SIM508
GPS COMMAND
SPECIFICATION
SIMCOM Ltd,.
28th Apr 2006
SIM508 GPS Command Specification
Confidential
Document Name:
SIM508 GPS Command Specification
Version:
1.01
Date:
2006-04-28
Doc Id:
SIM508_GPS_COMMAND_V1.01
Status:
Released
General Notes
Simcom offers this information as a service to its customers, to support application and engineering
efforts that use the products designed by Simcom. The information provided is based upon
requirements specifically provided to Simcom by the customers. Simcom has not undertaken any
independent search for additional relevant information, including any information that may be in the
customer’s possession. Furthermore, system validation of this product designed by Simcom within a
larger electronic system remains the responsibility of the customer or the customer’s system integrator.
All specifications supplied herein are subject to change.
Copyright
This document contains proprietary technical information which is the property of
SIMCOM Limited., copying of this document and giving it to others and the using or
communication of the contents thereof, are forbidden without express authority. Offenders
are liable to the payment of damages. All rights reserved in the event of grant of a patent or
the registration of a utility model or design. All specification supplied herein are subject to
change without notice at any time.
Copyright © SIMCOM Limited. 2006
SIM508 GPS Command_V1.01
Page 2 of 66
SIM508 GPS Command Specification
Confidential
Contents
Contents ................................................................................................................................................. 3
Version History....................................................................................................................................... 7
1 NMEA Input/Output Messages............................................................................................................ 8
1.1 NMEA Input Messages .............................................................................................................. 8
1.1.1 100—SetSerialPort........................................................................................................... 9
1.1.2 101—NavigationInitialization.......................................................................................... 9
1.1.3 102—SetDGPSPort ........................................................................................................ 10
1.1.4 103—Query/Rate Control .............................................................................................. 10
1.1.5 104—LLANavigationInitialization ................................................................................ 11
1.1.6 105—Development Data On/Off ................................................................................... 12
1.1.7 106—Select Datum ........................................................................................................ 12
1.2 NMEA Output Messages ......................................................................................................... 13
1.2.1 GGA —Global Positioning System Fixed Data ............................................................. 13
1.2.2 GLL—Geographic Position - Latitude/Longitude.......................................................... 14
1.2.3 GSA—GNSS DOP and Active Satellites....................................................................... 14
1.2.4 GSV—GNSS Satellites in View .................................................................................... 15
1.2.5 RMC—Recommended Minimum Specific GNSS Data................................................. 15
1.2.6 VTG—Course Over Ground and Ground Speed............................................................ 16
2 SIRF Binary Protocol......................................................................................................................... 17
2.1 Protocol Layers ........................................................................................................................ 17
2.2 Input Messages Of SiRF Binary Protocol ................................................................................ 18
2.2.1Initialize Data Source - Message ID 128......................................................................... 18
2.2.2 Switch To NMEA Protocol - Message ID 129............................................................... 19
2.2.3 Set Almanac - Message ID 130 ...................................................................................... 20
2.2.4 Handle Formatted Dump Data - Message ID 131 .......................................................... 20
2.2.5 Set Main Serial Port - Message ID 134 .......................................................................... 22
2.2.6 Mode Control - Message ID 136 .................................................................................... 23
2.2.7 DOP Mask Control - Message ID 137............................................................................ 24
2.2.8 Elevation Mask - Message ID 139 ................................................................................. 24
2.2.9 Power Mask - Message ID 140 ...................................................................................... 25
2.2.10 Static Navigation - Message ID 143............................................................................. 25
2.2.11 Poll Clock Status - Message ID 144............................................................................. 25
2.2.12 Poll Almanac - Message ID 146................................................................................... 26
2.2.13 Poll Ephemeris - Message ID 147 ................................................................................ 26
2.2.14 Set Ephemeris - Message ID 149 ................................................................................. 27
2.2.15 Switch Operating Modes - Message ID 150................................................................. 27
2.2.16 Set TricklePower Parameters - Message ID 151 .......................................................... 27
2.2.17 Poll Navigation Parameters - Message ID 152............................................................. 29
2.2.18 Set UART Configuration - Message ID 165 ................................................................ 29
2.2.19 Set Message Rate - Message ID 166 ............................................................................ 30
2.2.20 Set Low Power Acquisition Parameters - Message ID 167.......................................... 31
2.2.21 Poll Command Parameters - Message ID 168.............................................................. 31
2.2.22 Set SBAS Parameters - Message ID 170...................................................................... 32
2.2.23 Initialize GPS/DR Navigation - Message ID 172 (Sub ID 1)....................................... 32
2.2.24 Set GPS/DR Navigation Mode - Message ID 172 (Sub ID 2)...................................... 33
2.2.25 Set DR Gyro Factory Calibration - Message ID 172 (Sub ID 3).................................. 33
SIM508 GPS Command_V1.01
Page 3 of 66
SIM508 GPS Command Specification
Confidential
2.2.26 Set DR Sensors’ Parameters - Message ID 172 (Sub ID 4) ......................................... 33
2.2.27 Poll DR Gyro Factory Calibration - Message ID 172 (Sub ID 6) ................................ 34
2.2.28 Poll DR Sensors’ Parameters - Message ID 172 (Sub ID 7) ........................................ 34
2.3 Output Messages Of SiRF Binary Protocol ............................................................................. 34
2.3.1 Measure Navigation Data Out - Message ID 2............................................................... 34
2.3.2 Measured Tracker Data Out - Message ID 4 .................................................................. 36
2.3.3 Software Version String (Response to Poll) - Message ID 6 ......................................... 37
2.3.4 Response: Clock Status Data - Message ID 7 ................................................................ 38
2.3.5 50 BPS Data - Message ID 8.......................................................................................... 38
2.3.6 CPU Throughput - Message ID 9 ................................................................................... 39
2.3.7 Error ID Data - Message ID 10 ...................................................................................... 39
2.3.8 Command Acknowledgment - Message ID 11............................................................... 48
2.3.9 Command NAcknowledgment - Message ID 12............................................................ 48
2.3.10 Visible List – Message ID 13 ....................................................................................... 48
2.3.11 Almanac Data - Message ID 14.................................................................................... 49
2.3.12 Ephemeris Data (Response to Poll) – Message ID 15.................................................. 50
2.3.13 OkToSend - Message ID 18 ......................................................................................... 51
2.3.14 Navigation Parameters (Response to Poll) - Message ID 19........................................ 51
2.3.15 Navigation Library Measurement Data - Message ID 28............................................. 53
2.3.16 Navigation Library SV State Data - Message ID 30 .................................................... 56
2.3.17 Navigation Library Initialization Data - Message ID 31 .............................................. 57
2.3.18 Geodetic Navigation Data - Message ID 41 ................................................................. 58
2.3.18 Queue Command Parameters - Message ID 43............................................................ 61
2.3.19 Test Mode 3/4 - Message ID 46 ................................................................................... 61
2.3.20 Test Mode 4 Track Data - Message ID 55.................................................................... 63
2.3.21 Reserved - Message ID 225.......................................................................................... 64
2.3.22 Statistic Channel - Message ID 225 (Sub ID 6) ........................................................... 64
2.3.23 Development Data - Message ID 255........................................................................... 66
Table index:
Table 1 Transport Message parameters................................................................................................... 8
Table 2 NMEA Input Messages.............................................................................................................. 8
Table 3 Set Serial Port Data Format ....................................................................................................... 9
Table 4 Navigation Initialization Data Format ....................................................................................... 9
Table 5 Reset Configuration - Non SiRFLoc Platforms ....................................................................... 10
Table 6 Reset Configuration - SiRFLoc Specific.................................................................................. 10
Table 7 Set DGPS Port Data Format..................................................................................................... 10
Table 8 Query/Rate Control Data Format (See example 1) .................................................................. 11
Table 9 Messages .................................................................................................................................. 11
Table 10 LLA Navigation Initialization Data Format........................................................................... 12
Table 11 Reset Configuration ............................................................................................................... 12
Table 12 Development Data On/Off Data Format ................................................................................ 12
Table 13 Select Datum Data Format..................................................................................................... 13
Table 14 GGA Data Format.................................................................................................................. 13
Table 15 Position Fix Indicator............................................................................................................. 14
Table 16 GLL Data Format................................................................................................................... 14
Table 17 GSA Data Format .................................................................................................................. 14
Table 18 Mode 1 ................................................................................................................................... 15
Table 19 Mode 2 ................................................................................................................................... 15
Table 20 GSV Data Format .................................................................................................................. 15
Table 21 RMC Data Format.................................................................................................................. 16
Table 22 VTG Data Format .................................................................................................................. 16
Table 23 Initialize data source .............................................................................................................. 18
SIM508 GPS Command_V1.01
Page 4 of 66
SIM508 GPS Command Specification
Confidential
Table 24 Reset Configuration Bit Map ................................................................................................. 18
Table 25 Switch To NMEA Protocol.................................................................................................... 19
Table 26 Mode Values .......................................................................................................................... 20
Table 27 Set Almanac Message ............................................................................................................ 20
Table 28 Set Send Command String Parameters .................................................................................. 21
Table 29 Member Size Data Type ........................................................................................................ 21
Table 30 DGPS Source Selection (Example 1)..................................................................................... 21
Table 31 DGPS Source Selection (Example 2)..................................................................................... 22
Table 32 DGPS Source Selections........................................................................................................ 22
Table 33 Internal Beacon Search Settings ............................................................................................ 22
Table 34 Set Main Serial Port ............................................................................................................... 22
Table 35 Mode Control ......................................................................................................................... 23
Table 36 Degraded Mode...................................................................................................................... 23
Table 37 Altitude Hold Mode ............................................................................................................... 23
Table 38 DOP Mask Control ................................................................................................................ 24
Table 39 DOP Selection........................................................................................................................ 24
Table 40 Elevation Mask ...................................................................................................................... 24
Table 41 Power Mask ........................................................................................................................... 25
Table 42 Static Navigation.................................................................................................................... 25
Table 43 Clock Status ........................................................................................................................... 26
Table 44 Almanac ................................................................................................................................. 26
Table 45 Ephemeris .............................................................................................................................. 26
Table 46 Ephemeris .............................................................................................................................. 27
Table 47 Switch Operating Modes........................................................................................................ 27
Table 48 Set Trickle Power Parameters ................................................................................................ 28
Table 49 Example of Selections for TricklePower Mode of Operation................................................ 28
Table 50 Duty Cycles for Supported TricklePower Settings ................................................................ 28
Table 51 Poll Receiver for Navigation Parameters ............................................................................... 29
Table 52 Set UART Configuration ....................................................................................................... 29
Table 53 Set Message Rate ................................................................................................................... 30
Table 54 Set Low Power Acquisition Parameters................................................................................. 31
Table 55 Poll Command Parameters..................................................................................................... 32
Table 56 Set SBAS Parameters............................................................................................................. 32
Table 57 Set SBAS Parameters............................................................................................................. 32
Table 58 Measured Navigation Data Out - Message Data Format ....................................................... 34
Table 59 Mode 2 ................................................................................................................................... 35
Table 60 Mode 2 ................................................................................................................................... 36
Table 61 Measured Tracker Data Out................................................................................................... 36
Table 62 State Values for Each Channel............................................................................................... 37
Table 63 Software Version String......................................................................................................... 37
Table 64 Clock Status Data Message.................................................................................................... 38
Table 65 50 BPS Data........................................................................................................................... 38
Table 66 CPU Throughput.................................................................................................................... 39
Table 67 Message ID 10 Overall Format.............................................................................................. 39
Table 68 Error ID 2 Message ................................................................................................................ 39
Table 69 Error ID 2 Message Description ............................................................................................ 40
Table 70 Error ID 9 Message ................................................................................................................ 40
Table 71 Error ID 9 Message Description ............................................................................................ 40
Table 72 Error ID 10 Message.............................................................................................................. 40
Table 73 Error ID 10 Message Description .......................................................................................... 41
Table 74 Error ID 11 Message.............................................................................................................. 41
Table 75 Error ID 11 Message Description .......................................................................................... 41
Table 76 Error ID 12 Message.............................................................................................................. 41
SIM508 GPS Command_V1.01
Page 5 of 66
SIM508 GPS Command Specification
Confidential
Table 77 Error ID 12 Message Description .......................................................................................... 42
Table 78 Error ID 13 Message.............................................................................................................. 42
Table 79 Error ID 13 Message Description .......................................................................................... 42
Table 80 Error ID 4097 Message .......................................................................................................... 42
Table 81 Error ID 4097 Message Description ...................................................................................... 43
Table 82 Error ID 4099 Message .......................................................................................................... 43
Table 83 Error ID 4099 Message Description ...................................................................................... 43
Table 84 Error ID 4104 Message .......................................................................................................... 44
Table 85 Error ID 4104 Message Description ...................................................................................... 44
Table 86 Error ID 4105 Message .......................................................................................................... 45
Table 87 Error ID 4105 Message Description ...................................................................................... 45
Table 88 Error ID 4106 Message .......................................................................................................... 45
Table 89 Error ID 4106 Message Description ...................................................................................... 46
Table 90 Error ID 4107 Message .......................................................................................................... 46
Table 91 Error ID 4107 Message Description ...................................................................................... 46
Table 92 Error ID 8193 Message .......................................................................................................... 46
Table 93 Error ID 8193 Message Description ...................................................................................... 47
Table 94 Error ID 8194 Message .......................................................................................................... 47
Table 95 Error ID 8194 Message Description ...................................................................................... 47
Table 96 Error ID 8195 Message .......................................................................................................... 47
Table 97 Error ID 8195 Message Description ...................................................................................... 48
Table 98 Command Acknowledgment.................................................................................................. 48
Table 99 Command N’Acknowledgment ............................................................................................. 48
Table 100 Visible List........................................................................................................................... 49
Table 101 Contents of Message ID 14.................................................................................................. 49
Table 102 Byte Positions Between Navigation Message and Data Array ............................................ 49
Table 103 Contents of Message ID 14.................................................................................................. 50
Table 104 Byte Positions Between Navigation Message and Data Array ............................................ 50
Table 105 Almanac Data....................................................................................................................... 51
Table 106 Navigation Parameters ......................................................................................................... 52
Table 107 Horizontal/Vertical Error ..................................................................................................... 53
Table 108 Measurement Data ............................................................................................................... 53
Table 109 Sync Flag Fields................................................................................................................... 54
Table 110 Detailed Description of the Measurement Data ................................................................... 55
Table 111 SV State Data....................................................................................................................... 56
Table 112 Measurement Data ............................................................................................................... 57
Table 113 Geodetic Navigation Data.................................................................................................... 58
Table 114 Queue Command Parameters............................................................................................... 61
Table 115 Test Mode 3/4 Message ID 46 ............................................................................................. 62
Table 116 Detailed Description of Test Mode 3/4 Message ID 46....................................................... 62
Table 117 Test Mode 4 Message ID 55 ................................................................................................ 63
Table 118 Statistic Channel Parameters Message................................................................................. 64
Table 119 Description of the Navigation Mode Parameters ................................................................. 65
Table 120 Description of the Position Mode Parameters...................................................................... 65
Table 121 Description of the Status for Navigation LSQ fix Mode...................................................... 65
Table 122 Description of the Status for Navigation KF Mode ............................................................. 66
Table 123 Description of the Start Mode .............................................................................................. 66
Table 124 Development Data................................................................................................................ 66
SIM508 GPS Command_V1.01
Page 6 of 66
SIM508 GPS Command Specification
Confidential
Version History
Data
2006-04-28
Version
1.01
SIM508 GPS Command_V1.01
Description of change
Origin
Page 7 of 66
Author
Ronald
SIM508 GPS Command Specification
Confidential
1 NMEA Input/Output Messages
1.1 NMEA Input Messages
NMEA input messages enable you to control the Evaluation Receiver while in NMEA protocol mode.
The Evaluation Receiver may be put into NMEA mode by sending the SiRF binary protocol message
“Switch to NMEA Protocol - Message I.D. 129” (see the SiRF Binary Protocol Reference Manual).
This can be done by using a user program or by using the SiRFSDemo software and selecting Switch to
NMEA Protocol from the Action menu (see the SiRF Evaluation Kit User Guide or the SiRFDemo User
Guide). If the receiver is in SiRF binary mode, all NMEA input messages are ignored. Once the receiver
is put into NMEA mode, the following messages may be used to command the module.
Transport Message
Table 1 describes the transport message parameters.
Table 1 Transport Message parameters
Start
Sequence
$PSRF<MID>1
Data2
Payload
*CKSUM3
Checksum
<CR> <LF>4
1. Message Identifier consisting of three numeric characters. Input messages begin at MID 100.
2. Message specific data. Refer to a specific message section for <data>...<data> definition.
3. CKSUM is a two-hex character checksum as defined in the NMEA specification,
NMEA-0183Standard For Interfacing Marine Electronic Devices. Use of checksums is required on all
input messages.
4. Each message is terminated using Carriage Return (CR) Line Feed (LF) which is \r\n which is hex 0D
0A. Because \r\n are not printable ASCII characters, they are omitted from the example strings, but must
be sent to terminate the message and cause the receiver to process that input message.
Note – All fields in all proprietary NMEA messages are required, none are optional.
All NMEA messages are comma delimited.
NMEA Input Messages
Table 2 describes the NMEA input messages.
Table 2 NMEA Input Messages
Message
MID1
SetSerialPort
100
NavigationInitialization
101
SetDGPSPort
102
Query/Rate Control
103
LLANavigationInitialization 104
Development Data On/Off
105
Select Datum
106
1. Message Identification (MID).
2. Input coordinates must be WGS84.
3. Input coordinates must be WGS84.
Description
Set PORT A parameters and protocol
Parameters required for start using X/Y/Z2
Set PORT B parameters for DGPS input
Query standard NMEA message and/or set output
rate
Parameters required for start using Lat/Lon/Alt3
Development Data messages On/Off
Selection of datum to be used for coordinate
Note – NMEA input messages 100 to 106 are SiRF proprietary NMEA messages. The
MSK NMEA string is as defined by the NMEA 0183 standard.
SIM508 GPS Command_V1.01
Page 8 of 66
SIM508 GPS Command Specification
Confidential
1.1.1 100—SetSerialPort
This command message is used to set the protocol (SiRF binary or NMEA) and/or the communication
parameters (Baud, data bits, stop bits, and parity). Generally, this command is used to switch the module
back to SiRF binary protocol mode where a more extensive command message set is available. When a
valid message is received, the parameters are stored in battery-backed SRAM and the Evaluation
Receiver restarts using the saved parameters.
Table 3 contains the input values for the following example:
Switch to SiRF binary protocol at 9600,8,N,1
$PSRF100,0,9600,8,1,0*0C
Table 3 Set Serial Port Data Format
Name
Example
Units
Description
Message ID
$PSRF100
PSRF100 protocol header
Protocol
0
0=SiRF binary, 1=NMEA
Baud
9600
4800, 9600, 19200, 38400
DataBits
8
8,71
StopBits
1
0,1
Parity
0
0=None, 1=Odd, 2=Even
Checksum
*0C
<CR> <LF>
End of message termination
1. SiRF protocol is only valid for 8 data bits, 1stop bit, and no parity.
1.1.2 101—NavigationInitialization
This command is used to initialize the Evaluation Receiver by providing current position (in X, Y, Z
coordinates), clock offset, and time. This enables the Evaluation Receiver to search for the correct
satellite signals at the correct signal parameters. Correct initialization parameters enable the Evaluation
Receiver to acquire signals quickly.
Table 4 contains the input values for the following example:
Start using known position and time.
$PSRF101,-2686700,-4304200,3851624,96000,497260,921,12,3*1C
Table 4 Navigation Initialization Data Format
Name
Example
Units
Description
Message ID
$PSRF101
PSRF101 protocol header
ECEF X
-2686700
meters
X coordinate position
ECEF Y
-4304200
meters
Y coordinate position
ECEF Z
3851624
meters
Z coordinate position
ClkOffset
96000
Hz
Clock Offset of the Evaluation Receiver1
TimeOfWeek
497260
seconds
GPS Time Of Week
WeekNo
921
GPS Week Number
ChannelCount
12
Range 1 to 12
ResetCfg
3
See Table 5 and Table 6
Checksum
*1C
<CR> <LF>
End of message termination
1. Use 0 for last saved value if available.If this is unavailable, a default value of 96,000 is used.
SIM508 GPS Command_V1.01
Page 9 of 66
SIM508 GPS Command Specification
Confidential
Table 5 Reset Configuration - Non SiRFLoc Platforms
Hex
Description
0x01
Hot Start— All data valid
0x02
Warm Start—Ephemeris cleared
0x03
Warm Start (with Init)—Ephemeris cleared, initialization data loaded
0x04
Cold Start—Clears all data in memory
0x08
Clear Memory—Clears all data in memory and resets the receiver back to
factory defaults
Table 6 Reset Configuration - SiRFLoc Specific
Hex
Description
0x00
Perform a hot start using internal RAM data. No initialization data is used.
0x01
Use initialization data and begin in start mode. Uncertainties are 5 seconds time accuracy and
300 km position accuracy. Ephemeris data in SRAM is used.
0x02
No initialization data is used, ephemeris data is cleared, and warm start performed using
remaining data in RAM.
0x03
Initialization data is used, ephemeris data is cleared, and warm start performed using
remaining data in RAM.
0x04
No initialization data is used. Position, time and ephemeris are cleared and a cold start is
performed.
0x08
No initialization data is used. Internal RAM is cleared and a factory reset is performed.
1.1.3 102—SetDGPSPort
This command is used to control the serial port used to receive RTCM differential corrections.
Differential receivers may output corrections using different communication parameters. If a DGPS
receiver is used that has different communication parameters, use this command to allow the receiver to
correctly decode the data. When a valid message is received, the parameters are stored in battery-backed
SRAM and the receiver restarts using the saved parameters.
Table 7 contains the input values for the following example:
Set DGPS Port to be 9600,8,N,1.
$PSRF102,9600,8,1,0*12
Table 7 Set DGPS Port Data Format
Name
Example
Message ID
$PSRF102
Baud
9600
DataBits
8
StopBits
1
Parity
0
Checksum
*12
<CR> <LF>
Units
Description
PSRF102 protocol header
4800, 9600, 19200, 38400
8,7
0,1
0=None, 1=Odd, 2=Even
End of message termination
1.1.4 103—Query/Rate Control
This command is used to control the output of standard NMEA messages GGA, GLL, GSA, GSV, RMC,
and VTG. Using this command message, standard NMEA messages may be polled once, or setup for
periodic output. Checksums may also be enabled or disabled depending on the needs of the receiving
program. NMEA message settings are saved in battery-backed memory for each entry when the
message is accepted. Table 8 contains the input values for the following examples:
SIM508 GPS Command_V1.01
Page 10 of 66
SIM508 GPS Command Specification
Confidential
1. Query the GGA message with checksum enabled
$PSRF103,00,01,00,01*25
2. Enable VTG message for a 1 Hz constant output with checksum enabled
$PSRF103,05,00,01,01*20
3. Disable VTG message
$PSRF103,05,00,00,01*21
Table 8 Query/Rate Control Data Format (See example 1)
Name
Example
Units
Description
Message ID
$PSRF103
PSRF103 protocol header
Msg
00
See Table 9
Mode
01
0=SetRate, 1=Query
Rate
00
seconds
Output—off=0, max=255
CksumEnable
01
0=Disable Checksum, 1=Enable Checksum
Checksum
*25
<CR> <LF>
End of message termination
Table 9 Messages
Value
Description
0
GGA
1
GLL
2
GSA
3
GSV
4
RMC
5
VTG
6
MSS (If internal beacon is supported)
7
Not defined
8
ZDA (if 1PPS output is supported)
9
Not defined
Note – In TricklePower mode, update rate is specified by the user. When switching to NMEA protocol,
the message update rate is also required. The resulting update rate is the product of the TricklePower
Update rate and the NMEA update rate (i.e., TricklePower update rate = 2 seconds, NMEA update rate
= 5 seconds, resulting update rate is every 10 seconds, (2 X 5 = 10)).
1.1.5 104—LLANavigationInitialization
This command is used to initialize the Evaluation Receiver by providing current position (in latitude,
longitude, and altitude coordinates), clock offset, and time. This enables the receiver to search for the
correct satellite signals at the correct signal parameters. Correct initialization parameters enable the
receiver to acquire signals quickly.
Table 10 contains the input values for the following example:
Start using known position and time.
$PSRF104,37.3875111,-121.97232,0,96000,237759,1946,12,1*07
SIM508 GPS Command_V1.01
Page 11 of 66
SIM508 GPS Command Specification
Confidential
Table 10 LLA Navigation Initialization Data Format
Name
Example
Units
Description
Message ID
$PSRF104
PSRF104 protocol header
Lat
37.3875111
degrees
Latitude position (Range 90 to -90)
Lon
-121.97232
degrees
Longitude position (Range 180 to -180)
Alt
0
meters
Altitude position
ClkOffset
96000
Hz
Clock Offset of the Evaluation Receiver1
TimeOfWeek
237759
seconds
GPS Time Of Week
WeekNo
1946
Extended GPS Week Number (1024 added)
ChannelCount
12
Range 1 to 11
ResetCfg
1
See Table 11
Checksum
*07
<CR> <LF>
End of message termination
1. Use 0 for last saved value if available. If this is unavailable, a default value of 96,000 is used.
Table 11 Reset Configuration
Hex
Description
0x01
Hot Start— All data valid
0x02
Warm Start—Ephemeris cleared
0x03
Warm Start (with Init)—Ephemeris cleared, initialization data loaded
0x04
Cold Start—Clears all data in memory
0x08
Clear Memory—Clears all data in memory and resets receiver back to factory
defaults
1.1.6 105—Development Data On/Off
Use this command to enable development data information if you are having trouble getting commands
accepted. Invalid commands generate debug information that enables you to determine the source of the
command rejection. Common reasons for input command rejection are invalid checksum or parameter
out of specified range.
Table 12 contains the input values for the following examples:
1. Debug On
$PSRF105,1*3E
2. Debug Off
$PSRF105,0*3F
Table 12 Development Data On/Off Data Format
Name
Example
Units
Message ID
$PSRF105
Debug
1
Checksum
*3E
<CR> <LF>
Description
PSRF105 protocol header
0=Off, 1=On
End of message ermination
1.1.7 106—Select Datum
GPS receivers perform initial position and velocity calculations using an earth-centered earth-fixed
(ECEF) coordinate system. Results may be converted to an earth model (geoid) defined by the selected
datum. The default datum is WGS 84 (World Geodetic System 1984) which provides a worldwide
common grid system that may be translated into local coordinate systems or map datums. (Local map
datums are a best fit to the local shape of the earth and not valid worldwide.)
SIM508 GPS Command_V1.01
Page 12 of 66
SIM508 GPS Command Specification
Confidential
Table 13 contains the input values for the following examples:
1. Datum select TOKYO_MEAN
$PSRF106,178*32
Table 13 Select Datum Data Format
Name
Example
Message ID
$PSRF106
Datum
178
Checksum
<CR> <LF>
Units
Description
PSRF106 protocol header
21=WGS84
178=TOKYO_MEAN
179=TOKYO_JAPAN
180=TOKYO_KOREA
181=TOKYO_OKINAWA
*32
End of message termination
1.2 NMEA Output Messages
The following table lists each of the NMEA output messages specifically developed and defined by
SiRF for use within SiRF products.
----------------------------------------------------------------------------------------------------------------------------------------Option Description
-----------------------------------------------------------------------------------------------------------------------------------------GGA
Time, position and fix type data.
GLL
Latitude, longitude, UTC time of position fix and status.
GSA
GPS receiver operating mode, satellites used in the position solution, and DOP values.
GSV
The number of GPS satellites in view satellite ID numbers, elevation, azimuth, and SNR values.
RMC
Time, date, position, course and speed data.
VTG
Course and speed information relative to the ground.
---------------------------------------------------------------------------------------------------------------------------------------------
A full description of the listed NMEA messages are provided in the following sections.
1.2.1 GGA —Global Positioning System Fixed Data
Table14 contains the values for the following example:
$GPGGA,161229.487,3723.2475,N,12158.3416,W,1,07,1.0,9.0,M, , , ,0000*18
Table 14 GGA Data Format
Name
Example
Message ID
$GPGGA
UTC Time
161229.487
Latitude
3723.2475
N/S Indicator
N
Longitude
12158.3416
E/W Indicator
W
Position Fix Indicator
1
Satellites Used
07
HDOP
1.0
MSL Altitude
9.0
Units
M
SIM508 GPS Command_V1.01
Units
Description
GGA protocol header
hhmmss.sss
ddmm.mmmm
N=north or S=south
dddmm.mmmm
E=east or W=west
See Table 15
Range 0 to 12
Horizontal Dilution of Precision
meters
meters
Page 13 of 66
SIM508 GPS Command Specification
Confidential
Geoid Separation
Units
Age of Diff. Corr.
Diff. Ref. Station ID
Checksum
<CR> <LF>
M
meters
meters
second
Null fields when DGPS is not used
0000
*18
End of message termination
Table 15 Position Fix Indicator
Value
Description
0
Fix not available or invalid
1
GPS SPS Mode, fix valid
2
Differential GPS, SPS Mode, fix valid
3-5
Not supported
6
Dead Reckoning Mode, fix valid
Note – A valid position fix indicator is derived from the SiRF Binary M.I.D. 2 position mode 1. See the
SiRF Binary Protocol Reference Manual.
1.2.2 GLL—Geographic Position - Latitude/Longitude
Table 16 contains the values for the following example:
$GPGLL,3723.2475,N,12158.3416,W,161229.487,A,A*41
Table 16 GLL Data Format
Name
Example
Message ID
$GPGLL
Latitude
3723.2475
N/S Indicator
N
Longitude
12158.3416
E/W Indicator
W
UTC Time
161229.487
Status
A
Mode
A
Checksum
*41
CR> <LF>
Units
Description
GLL protocol header
ddmm.mmmm
N=north or S=south
dddmm.mmmm
E=east or W=west
hhmmss.sss
A=data valid or V=data not valid
A=Autonomous, D=DGPS, E=DR
End of message termination
1.2.3 GSA—GNSS DOP and Active Satellites
Table 17 contains the values for the following example:
$GPGSA,A,3,07,02,26,27,09,04,15, , , , , ,1.8,1.0,1.5*33
Table 17 GSA Data Format
Name
Example
Message ID
$GPGSA
Mode 1
A
Mode 2
3
1
Satellite Used
07
Satellite Used1
02
....
Satellite Used1
SIM508 GPS Command_V1.01
Units
Description
GSA protocol header
See Table 18
See Table 19
Sv on Channel 1
Sv on Channel 2
....
Sv on Channel 12
Page 14 of 66
SIM508 GPS Command Specification
Confidential
PDOP
1.8
HDOP
1.0
VDOP
1.5
Checksum
*33
<CR> <LF>
1. Satellite used in solution.
Position Dilution of Precision
Horizontal Dilution of Precision
Vertical Dilution of Precision
End of message termination
Table 18 Mode 1
Value
Description
M
Manual—forced to operate in 2D or 3D mode
A
2D Automatic—allowed to automatically switch 2D/3D
Table 19 Mode 2
Value
1
2
3
Description
Fix not available
2D (<4 SVs used)
3D (>3 SVs used)
1.2.4 GSV—GNSS Satellites in View
Table 20 contains the values for the following example:
$GPGSV,2,1,07,07,79,048,42,02,51,062,43,26,36,256,42,27,27,138,42*71
$GPGSV,2,2,07,09,23,313,42,04,19,159,41,15,12,041,42*41
Table 20 GSV Data Format
Name
Example
Units
Description
Message ID
$GPGSV
GSV protocol header
Number of Messages 1
2
Range 1 to 3
Message Number1
1
Range 1 to 3
Satellites in View
07
Satellite ID
07
Channel 1 (Range 1 to 32)
Elevation
79
degrees
Channel 1 (Maximum 90)
Azimuth
048
degrees
Channel 1 (True, Range 0 to 359)
SNR (C/No)
42
dBHz
Range 0 to 99, null when not tracking
....
....
Satellite ID
27
Channel 4 (Range 1 to 32)
Elevation
27
degrees
Channel 4 (Maximum 90)
Azimuth
138
degrees
Channel 4 (True, Range 0 to 359)
SNR (C/No)
42
dBHz
Range 0 to 99, null when not tracking
Checksum
*71
<CR> <LF>
End of message termination
1. Depending on the number of satellites tracked, multiple messages of GSV data may be required.
1.2.5 RMC—Recommended Minimum Specific GNSS Data
Table 21 contains the values for the following example:
$GPRMC,161229.487,A,3723.2475,N,12158.3416,W,0.13,309.62,120598, ,*10
SIM508 GPS Command_V1.01
Page 15 of 66
SIM508 GPS Command Specification
Confidential
Table 21 RMC Data Format
Name
Example
Units
Description
Message ID
$GPRMC
RMC protocol header
UTC Time
161229.487
hhmmss.sss
Status1
A
A=data valid or V=data not valid
Latitude
3723.2475
ddmm.mmmm
N/S Indicator
N
N=north or S=south
Longitude
12158.3416
dddmm.mmmm
E/W Indicator
W
E=east or W=west
Speed Over Ground
0.13
knots
Course Over Ground
309.62
degrees
True
Date
120598
ddmmyy
Magnetic Variation2
degrees
E=east or W=west
Mode
A
A=Autonomous, D=DGPS, E=DR
Checksum
*10
<CR> <LF>
End of message termination
1. A valid status is derived from the SiRF Binary M.I.D 2 position mode 1. See the SiRF Binary Protocol
Reference Manual.
2. SiRF Technology Inc. does not support magnetic declination. All “course over ground” data are
geodetic WGS84 directions.
1.2.6 VTG—Course Over Ground and Ground Speed
Table 22 contains the values for the following example:
$GPVTG,309.62,T, ,M,0.13,N,0.2,K,A*23
Table 22 VTG Data Format
Name
Example
Units
Description
Message ID
$GPVTG
VTG protocol header
Course
309.62
degrees
Measured heading
Reference
T
True
Course
degrees
Measured heading
Reference
M
Magnetic1
Speed
0.13
knots
Measured horizontal speed
Units
N
Knots
Speed
0.2
km/hr
Measured horizontal speed
Units
K
Kilometers per hour
Mode
A
A=Autonomous, D=DGPS, E=DR
Checksum
*23
<CR> <LF>
End of message termination
1. SiRF Technology Inc. does not support magnetic declination. All “course over ground” data are
geodetic WGS84 directions.
SIM508 GPS Command_V1.01
Page 16 of 66
SIM508 GPS Command Specification
Confidential
2 SIRF Binary Protocol
2.1 Protocol Layers
The SiRF Binary protocol is the standard interface protocol used by all SiRF-based products.
This serial communication protocol is designed to include:
• Reliable transport of messages
• Ease of implementation
• Efficient implementation
• Independence from payload.
Transport Message
Start
Payload
Payload
Message
Sequence
Length
Checksum
0xA01,
Two-bytes
Up to 210 -1
Two-bytes
0xA2
(15-bits)
(<1023)
(15-bits)
1. Characters preceded by “0x” denotes a hexadecimal value. 0xA0 equals 160.
End
Sequence
0xB0,
0xB3
Transport
The transport layer of the protocol encapsulates a GPS message in two start characters and two stop
characters. The values are chosen to be easily identifiable and unlikely to occur frequently in the data. In
addition, the transport layer prefixes the message with a two-byte (15-bit) message length and a
two-byte (15-bit) checksum. The values of the start and stop characters and the choice of a 15-bit value
for length and checksum ensure message length and checksum can not alias with either the stop or start
code.
Message Validation
The validation layer is of part of the transport, but operates independently. The byte count refers to the
payload byte length. The checksum is a sum on the payload.
Payload Length
The payload length is transmitted high order byte first followed by the low byte.
High Byte
Low Byte
< 0x7F
Any value
Even though the protocol has a maximum length of (215-1) bytes, practical considerations require the
SiRF GPS module implementation to limit this value to a smaller number. The SiRF receiving programs
(e.g., SiRFdemo) may limit the actual size to something less than this maximum.
Payload Data
The payload data follows the payload length. It contains the number of bytes specified by the payload
length. The payload data may contain any 8-bit value. Where multi-byte values are in the payload data
neither the alignment nor the byte order are defined as part of the transport although SiRF payloads will
use the big-endian order.
Checksum
The checksum is transmitted high order byte first followed by the low byte. This is the so-called
big-endian order.
SIM508 GPS Command_V1.01
Page 17 of 66
SIM508 GPS Command Specification
Confidential
High Byte
< 0x7F
Low Byte
Any value
The checksum is 15-bit checksum of the bytes in the payload data. The following pseudo code defines
the algorithm used. Let message to be the array of bytes to be sent by the transport.
Let msgLen be the number of bytes in the message array to be transmitted.
Index = first
checkSum = 0
while index < msgLen
checkSum = checkSum + message[index]
checkSum = checkSum AND (215-1).
2.2 Input Messages Of SiRF Binary Protocol
2.2.1Initialize Data Source - Message ID 128
Table 23 contains the input values for the following example:
Command a Warm Start with the following initialization data: ECEF XYZ (-2686727 m, -4304282 m,
3851642 m), Clock Offset (75,000 Hz), Time of Week (86,400 sec), Week Number (924), and Channels
(12). Raw track data enabled, Debug data enabled.
Example:
A0A20019—Start Sequence and Payload Length
80FFD700F9FFBE5266003AC57A000124F80083D600039C0C33—Payload
0A91B0B3—Message Checksum and End Sequence
Table 23 Initialize data source
Name
Bytes
Message ID
ECEF X
ECEF Y
ECEF Z
Clock Offset
Time of Week
Week Number
1
4
4
4
4
4
2
Channels
1
Reset Configuration Bit Map 1
Payload length: 25 bytes
Binary (Hex)
Scale Example
80
FFD700F
FFBE5266
003AC57A
000124F8
*100 0083D600
51F
0C
33
Units
Description
Decimal 128
meters
meters
meters
Hz
seconds
Extended week number
(0 - no limit)
Range 1-12
See Table 24
Table 24 Reset Configuration Bit Map
Bit Description
0
1
2
3
Data valid flag -- 1=Use data in ECEF X, Y, Z, Clock Offset, Time of Week and Week
number to initialize the receiver; 0=Ignore data fields.
Clear ephemeris from memory -- blocks Snap or Hot Start from occurring.
Clear all history (except clock drift) from memory -- blocks Snap, Hot, and Warm Starts.
Factory Reset -- clears all GPS memory including clock drift. Also clears almanac
storedin flash memory.
SIM508 GPS Command_V1.01
Page 18 of 66
SIM508 GPS Command Specification
Confidential
4
Enable Nav Lib data (YES=1, NO=0).1
5
Enable debug data (YES=1, NO=0).
6
Indicate that RTC is bad -- blocks Snap Start.
7
Clear user data in memory.
1. If Nav Lib data are enabled, then the resulting messages are enabled: Clock Status (MID 7), 50BPS
(MID 8), Raw DGPS (MID 17), NL Measurement Data (MID 28), DGPS Data (MID 29), SV State Data
(MID 30), and NL Initialized Data (MID 31). All messages are sent at 1 Hz. If SiRFdemo is used to
enable Nav Lib data, the baud rate will be automatically set to 57600 by SiRFdemo.
2.2.2 Switch To NMEA Protocol - Message ID 129
Table 25 contains the input values for the following example:
Request the following NMEA data at 9600 baud:
GGA – ON at 1 sec, GLL – OFF, GSA - ON at 1sec,
GSV – ON at 5 sec, RMC – ON at 1sec, VTG-OFF, MSS – OFF, ZDA-OFF.
Example:
A0A20018—Start Sequence and Payload Length
810201010001010105010101000100010001000100012580—Payload
013AB0B3—Message Checksum and End Sequence
Table 25 Switch To NMEA Protocol
Name
Bytes
Message ID
1
Mode
1
GGA Message1
1
Checksum2
1
GLL Message
1
Checksum
1
GSA Message
1
Checksum
1
GSV Message
1
Checksum
1
RMC Message
1
Checksum
1
VTG Message
1
Checksum
1
MSS Message
1
Checksum
1
Unused Field3
1
Unused Field3
1
ZDA Message
1
Checksum
1
Unused Field3
1
Unused Field3
1
Baud Rate
2
Payload length: 24 bytes
Example
0x81
0x02
0x01
0x01
0x00
0x01
0x01
0x01
0x05
0x01
0x01
0x01
0x00
0x01
0x00
0x01
0x00
0x00
0x00
0x01
0x00
0x00
0x2580
Units
sec
Description
Decimal 129
See Table 26
See NMEA Protocol Reference Manual for format.
Send checksum with GGA message
See NMEA Protocol Reference Manual for format.
sec
See NMEA Protocol Reference Manual for format.
sec
See NMEA Protocol Reference Manual for format.
sec
See NMEA Protocol Reference Manual for format.
sec
See NMEA Protocol Reference Manual for format.
sec
See NMEA Protocol Reference Manual for format.
sec
See NMEA Protocol Reference Manual for format.
sec
38400, 19200, 9600, 4800, or 2400
1. A value of 0x00 implies NOT to send message, otherwise data is sent at 1 message every X seconds
requested (e.g., to request a message to be sent every 5 seconds, request the message using a value of
0x05). Maximum rate is 1/255 sec.
2. A value of 0x00 implies the checksum NOT transmitted with the message (not recommended). A
value of 0x01 will have a checksum calculated and transmitted as part of the message (recommended).
3. These fields are available if additional messages have been implemented in the NMEA protocol.
SIM508 GPS Command_V1.01
Page 19 of 66
SIM508 GPS Command Specification
Confidential
Table 26 Mode Values
Value
0
1
2
Meaning
Enable NMEA debug messages
Disable NMEA debug messages
Do not change last-set value for NMEA debug messages
In TricklePower mode, update rate is specified by the user. When you switch to NMEA protocol,
message update rate is also required. The resulting update rate is the product of the TricklePower update
rate and the NMEA update rate (e.g., TricklePower update rate = 2 seconds, NMEA update rate = 5
seconds, resulting update rate is every 10 seconds, (2 X 5 = 10)).
Note – To switch back to the SiRF Binary protocol, you must send a SiRF NMEA message to revert to
SiRF binary mode. (See SiRF NMEA Reference Manual for more information).
2.2.3 Set Almanac - Message ID 130
This command enables the user to upload an almanac file to the receiver.
Example:
A0A20380 – Start Sequence and Payload Length
82xx…………………. – Payload
xxxxB0B3 – Message Checksum and End Sequence
Table 27 Set Almanac Message
Name
Bytes
Binary (Hex)
Scale
Example
Units
Message ID
1
Almanac
896
Payload length: 897 bytes
Description
Decimal 130
Reserved
The almanac data is stored in the code as a 448-element array of INT16 values. These elements are
partitioned as a 32 x 14 two-dimensional array where the row represents the satellite ID minus 1 and the
column represents the number of INT16 values associated with this satellite. The data is actually packed
and the exact format of this representation and packing method can be extracted from the ICD-GPS-200
document.
The ICD-GPS-200 document describes the data format of each GPS navigation subframe and is
available on the web at http://www.arinc.com/gps
2.2.4 Handle Formatted Dump Data - Message ID 131
This command outputs formatted data. It is designed to handle complex data type up to an array of
structures.
Table 28 contains the input values for the following example. This example shows how to output an
array of elements. Each element structure appears as follows:
Typedef structure // structure size = 9 bytes
{
UINT8 Element 1
UINT16 Element 2
UINT8 Element 3
UINT8 Element 4
UINT32 Element 5
SIM508 GPS Command_V1.01
Page 20 of 66
SIM508 GPS Command Specification
Confidential
} tmy_struct
tmy_struc my_struct [3]
Example:
A0A2002F—Start Sequence and Payload Length
8331E5151B81A—Payload
1F19B0B3—Message Checksum and End Sequence
Table 28 Set Send Command String Parameters
Name
Bytes
Message ID
Elements
1
1
Binary (Hex)
Example
83
3
Data address
Members
4
1
0x60xx xxxx
5
Member Size
Elements
01 02 01 01 04
Header
string length+ 1
“Hello”0
Format
string length+ 1
“%2d %2d %2d
%2d %10.1lf”0
Trailer
string length+ 1
Payload length: Variable
Units
Description
Decimal 131.
Number of elements in array to dump
(minimum 1).
Address of the data to be dumped.
Number of items in the structure to be
dumped.
List of element sizes in the structure. See
Table 29 for definition of member size
(total of 5 for this example).
String to print out before data dump
(total of 8 bytes in this example).
Format string for one line of output (total
of 26 bytes in this example) with 0
termination.
Not used.
Bytes
0
Table 29 defines the values associated with the member size data type.
Table 29 Member Size Data Type
Data Type
char, INT8, UINT8
short int, INT16, UINT16, SINT16, BOOL16
long int, float, INT32, UINT32, SINT32, BOOL32,
FLOAT32
long long, double INT64, DOUBLE64
Value for Member Size (Bytes)
1
2
4
8
Table 30 DGPS Source Selection (Example 1)
Name
Bytes Scale Hex
Units
Message ID
1
85
DGPS Source
1
00
Internal Beacon Frequency 4
00000000 Hz
Internal Beacon Bit Rate
1
0
BPS
Payload length: 7 bytes
Example 2:
Set the DGPS source to Internal DGPS Beacon Receiver
Search Frequency 310000, Bit Rate 200
A0A200007—Start Sequence and Payload Length
85030004BAF0C802—Payload
02FEB0B3—Checksum and End Sequence
SIM508 GPS Command_V1.01
Page 21 of 66
Decimal
133
0
0
0
Description
Message Identification
See Table 32.
See Table 33
See Table 33.
SIM508 GPS Command Specification
Confidential
Table 31 DGPS Source Selection (Example 2)
Name
Bytes
Scale Hex
Message ID
1
85
DGPS Source
1
Internal Beacon
4
Frequency
Internal Beacon Bit 1
Rate
Payload length: 7 bytes
Units
03
0004BAF0
C8
Table 32 DGPS Source Selections
DGPS
Source
None
00
Hex
0
SBAS
External RTCM Data
01
02
1
2
Internal DGPS Beacon
Receiver
User Software
03
3
04
4
Decimal
133
Hz
3
310000
Description
Message
Identification.
See Table 32.
See Table 33.
BPS
200
See Table 33.
Decimal
DGPS corrections are not used (even if
available).
Uses SBAS Satellite (subject to availability).
External RTCM input source (i.e., Coast Guard
Beacon).
Internal DGPS beacon receiver.
Corrections provided using a module interface
routine in a custom user application.
Table 33 Internal Beacon Search Settings
Search Type
Frequency1 Bit Rate2
Auto Scan
0
0
Full Frequency
scan
Full Bit Rate Scan
0
Non-zero
Non-zero
0
Specific Search
Non-zero
Non-zero
Description
Auto scanning of all frequencies and bit rates are
performed.
Auto scanning of all frequencies and specified bit rate
are performed.
Auto scanning of all bit rates and specified frequency
are performed.
Only the specified frequency and bit rate search are
performed.
1. Frequency Range is 283500 to 325000 Hz.
2. Bit Rate selection is 25, 50, 100, and 200 BPS.
2.2.5 Set Main Serial Port - Message ID 134
Table 34 contains the input values for the following example:
Set Main Serial port to 9600,n,8,1.
Example:
A0A20009—Start Sequence and Payload Length
860000258008010000—Payload
0134B0B3—Message Checksum and End Sequence
Table 34 Set Main Serial Port
Name
Bytes
Message ID
Baud
Data Bits
1
4
1
Binary (Hex)
Scale
Example
86
00002580
08
SIM508 GPS Command_V1.01
Units
Description
Decimal 134
115.2k, 57.6k, 38.4k, 19.2k, 9600, 4800, 2400, 1200
8
Page 22 of 66
SIM508 GPS Command Specification
Confidential
Stop Bit
1
Parity
1
Pad
1
Payload length: 9 bytes
01
00
00
1=1 Stop Bit
None=0, Odd=1, Even=2
Reserved
2.2.6 Mode Control - Message ID 136
Table 35 contains the input values for the following example:
3D Mode = Always, Alt Constraining = Yes, Degraded Mode = clock then direction, TBD=1, DR Mode
= Yes, Altitude = 0, Alt Hold Mode = Auto, Alt Source =Last Computed, Coast Time Out = 20,
Degraded Time Out=5, DR Time Out = 2, Track Smoothing = Yes
Example:
A0A2000E—Start Sequence and Payload Length
8800000100000000000000050201—Payload
0091B0B3—Message Checksum and End Sequence
Table 35 Mode Control
Binary (Hex)
Scale
Example
88
0000
01
0000
0000
00
00
Units
Name
Bytes
Message ID
TBD
Degraded Mode
TBD
Altitude
Alt Hold Mode
Alt Hold Source
1
2
1
2
2
1
1
TBD
Degraded Time Out
1
1
00
05
seconds
DR Time Out
1
02
seconds
Track Smoothing
1
Payload length: 14 bytes
01
meters
Description
Decimal 136
Reserved
See Table 36
Reserved
User specified altitude, range -1,000 to +10,000
See Table 37
0=Use last computed altitude, 1=Use user-input
altitude
Reserved
0=disable degraded mode, 1-120 seconds degraded
mode time limit
0=disable dead reckoning, 1-120 seconds dead
reckoning mode time limit
0=disable, 1=enable
Table 36 Degraded Mode
Byte Value
Description
0
Allow 1 SV navigation, freeze direction for 2 SV fix, then freeze clock drift for 1 SV fix
1
Allow 1 SV navigation, freeze direction for 2 SV fix, then freeze clock drift for 1 SV fix
2
Allow 2 SV navigation, freeze direction
3
Allow 2 SV navigation, freeze direction
4
Do not allow Degraded Modes (2 SV and 1 SV navigation)
Table 37 Altitude Hold Mode
Byte Value
Description
0
Automatically determine best available altitude to use
1
Always use input altitude
2
Do not use altitude hold
SIM508 GPS Command_V1.01
Page 23 of 66
SIM508 GPS Command Specification
Confidential
2.2.7 DOP Mask Control - Message ID 137
Table 38 contains the input values for the following example:
Auto PDOP/HDOP, GDOP=8 (default), PDOP=8,HDOP=8
Example:
A0A20005—Start Sequence and Payload Length
8900080808—Payload
00A1B0B3—Message Checksum and End Sequence
Table 38 DOP Mask Control
Name
Bytes
Message ID
1
DOP Selection
1
GDOP Value
1
PDOP Value
1
HDOP Value
1
Payload length: 5 bytes
Binary (Hex)
Scale
Example
89
00
08
08
08
Units
Description
Decimal 137
See Table 39
Range 1 to 50
Range 1 to 50
Range 1 to 50
Table 39 DOP Selection
Byte Value
Description
0
Auto: PDOP for 3-D fix; HDOP for 2-D fix
1
PDOP
2
HDOP
3
GDOP
4
Do Not Use
2.2.8 Elevation Mask - Message ID 139
Table 40 contains the input values for the following example:
Set Navigation Mask to 15.5 degrees (Tracking Mask is defaulted to 5 degrees).
Example:
A0A20005—Start Sequence and Payload Length
8B0032009B—Payload
0158B0B3—Message Checksum and End Sequence
Table 40 Elevation Mask
Name
Bytes
Message ID
1
Tracking Mask
2
Navigation Mask
2
Payload length: 5 bytes
Binary (Hex)
Scale
Example
8B
*10
0032
*10
009B
Units
Description
degrees
degrees
Decimal 139
Not implemented
Range -20.0 to 90.0
Note – Satellite with elevation angle relative to the local horizon that is below the specified navigation
mask angle will not be used in the navigation solution.
SIM508 GPS Command_V1.01
Page 24 of 66
SIM508 GPS Command Specification
Confidential
2.2.9 Power Mask - Message ID 140
Table 41 contains the input values for the following example:
Navigation mask to 33 dB-Hz (tracking default value of 28)
Example:
A0A20003—Start Sequence and Payload Length
8C1C21—Payload
00C9B0B3—Message Checksum and End Sequence
Table 41 Power Mask
Name
Bytes
Message ID
1
Tracking Mask
1
Navigation Mask
1
Payload length: 3 bytes
Binary (Hex)
Scale
Example
8C
1C
21
Units
Description
dBHz
dBHz
Decimal 140
Not implemented
Range 20 to 50
Note – Satellite with received signal strength below the specified navigation mask signal level will not
used in the navigation solution.
2.2.10 Static Navigation - Message ID 143
This command allows the user to enable or disable static navigation to the receiver.
Example:
A0A20002 – Start Sequence and Payload Length
8F01 – Payload
0090B0B3 – Message Checksum and End Sequence
Table 42 Static Navigation
Name
Bytes
Message ID
Static Navigation Flag
Payload length: 2 bytes
1
1
Binary (Hex)
Scale
Example
8F
01
Units
Description
Decimal 143
1 = enable; 0 = disable
Note – Static navigation is a position filter designed to be used with motor vehicles. When the vehicle’s
velocity falls below a threshold, the position and heading are frozen, and velocity is set to zero. This
condition will continue until the computed velocity rises above 1.2 times the threshold or until the
computed position is at least a set distance from the frozen place. The threshold velocity and set distance
may vary with software versions.
2.2.11 Poll Clock Status - Message ID 144
Table 43 contains the input values for the following example:
Poll the clock status.
Example:
A0A20002—Start Sequence and Payload Length
9000—Payload
0090B0B3—Message Checksum and End Sequence
SIM508 GPS Command_V1.01
Page 25 of 66
SIM508 GPS Command Specification
Confidential
Table 43 Clock Status
Name
Message ID
Control
Payload length: 2 bytes
Bytes
1
1
Binary (Hex)
Scale
Example
90
00
Units
Description
Decimal 144
Not used
Note – Returned message will be MID 7. See “Response: Clock Status Data – Message ID 7”.
2.2.12 Poll Almanac - Message ID 146
Table 44 contains the input values for the following example:
Poll for the almanac.
Example:
A0A20002—Start Sequence and Payload Length
9200—Payload
0092B0B3—Message Checksum and End Sequence
Table 44 Almanac
Name
Message ID
Control
Payload length: 2 bytes
Bytes
1
1
Binary (Hex)
Scale
Example
92
00
Units
Description
Decimal 146
Not used
Note – Returned message will be MID 14. See “Almanac Data - Message ID 14” .
2.2.13 Poll Ephemeris - Message ID 147
Table 45 contains the input values for the following example:
Poll for Ephemeris Data for all satellites.
Example:
A0A20003—Start Sequence and Payload Length
930000—Payload
0092B0B3—Message Checksum and End Sequence
Table 45 Ephemeris
Name
Bytes
Binary (Hex)
Scale
Example
93
00
00
Units
Description
Message ID
1
Decimal 147
Sv ID1
1
Range 0 to 32
Control
1
Not used
Payload length: 3 bytes
1. A value of zero requests all available ephemeris records. This will result in a maximum of twelve
output messages. A value of 1 - 32 will request only the ephemeris of that SV. Payload length: 3 bytes
Note – Returned message will be MID 15. See “Ephemeris Data (Response to Poll) – Message ID 15” .
SIM508 GPS Command_V1.01
Page 26 of 66
SIM508 GPS Command Specification
Confidential
2.2.14 Set Ephemeris - Message ID 149
This command enables the user to upload an ephemeris file to the receiver.
Example:
A0A2005B – Start Sequence and Payload Length
95…………………. – Payload
xxxxB0B3 – Message Checksum and End Sequence
Table 46 Ephemeris
Name
Message ID
Ephemeris Data
Payload length: 91 bytes
Bytes
1
90
Binary (Hex)
Scale
Example
95
00
Unit
s
Description
Decimal 149
Reserved
The ephemeris data for each satellite is stored as a two dimensional array of [3][15] UNIT16 elements.
The row represents three separate sub-frames. See MID 15 (“Ephemeris Data (Response to Poll) –
Message ID 15” ) for a detailed description of this data format.
2.2.15 Switch Operating Modes - Message ID 150
This command sets the receiver into either production test or normal operating mode.
Table 47 contains the input values for the following example:
Sets the receiver to track SV ID 6 on all channels and to collect test mode performance statistics for 30
seconds.
Example:
A0A20007—Start Sequence and Payload Length
961E510006001E—Payload
0129B0B3—Message Checksum and End Sequence
Table 47 Switch Operating Modes
Name
Bytes
Binary (Hex)
Scale
Example
Message ID 1
96
Mode
2
1E51
SvID
2
Period
2
Payload length: 7 bytes
0006
001E
Units
Description
seconds
Decimal 150
0=normal, 1E51=Testmode1,
1E52=Testmode2,
1E53=Testmode3,
1E54=Testmode4
Satellite to Track
Duration of Track
2.2.16 Set TricklePower Parameters - Message ID 151
Table 48 contains the input values for the following example:
Sets the receiver into low power modes.
Example: Set receiver into TricklePower at 1 Hz update and 200 ms on-time.
A0A20009—Start Sequence and Payload Length
97000000C8000000C8—Payload
0227B0B3—Message Checksum and End Sequence
SIM508 GPS Command_V1.01
Page 27 of 66
SIM508 GPS Command Specification
Confidential
Table 48 Set Trickle Power Parameters
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
97
Push-to-Fix
2
0000
Mode
Duty Cycle
2
*10
00C8
Units
Description
Decimal 151
ON = 1, OFF = 0
%
% Time ON. A duty cycle of 1000 (100%)
means continuous operation.
range 200 - 900 msec
On-Time1
4
000000C8 msec
Payload length: 9 bytes
1. On-time of 700, 800, or 900 ms is invalid if an update rate of 1 second is selected.
Computation of Duty Cycle and On-Time
The Duty Cycle is the desired time to be spent tracking. The On-Time is the duration of each tracking
period (range is 200 - 900 msec). To calculate the TricklePower update rate as a function of Duty Cycle
and On Time, use the following formula:
Update Rate = On-Time (in sec)
Duty Cycle
Note – It is not possible to enter an on-time > 900 msec.
Following are some examples of selections:
Table 49 Example of Selections for TricklePower Mode of Operation
Mode
On Time (ms)
Duty Cycle (%)
Interval Between Updates (sec)
Continuous1
1000
100
1
TricklePower
200
20
1
TricklePower
200
10
2
TricklePower
300
10
3
TricklePower
500
5
10
1. Continuous duty cycle is activated by setting Duty Cycle to 0 or 100%.
Table 50 Duty Cycles for Supported TricklePower Settings
On-Time (ms)
200
300
400
500
600
700
800
900
Update Rates (sec)
1
2
3
200
100
67
300
150
100
400
200
133
500
250
167
600
300
200
*
350
233
*
400
267
*
450
300
4
50
75
100
125
150
175
200
225
5
40
60
80
100
120
140
160
180
6
33
50
67
83
100
117
133
150
7
29
43
57
71
86
100
114
129
8
25
37
50
62
75
88
100
112
9
22
33
44
56
67
78
89
100
10
20
30
40
50
60
70
80
90
Note – Values are in% times 10 as needed for the duty cycle field. For 1 second update rate, on-times
greater than 600 ms are not allowed.
Push-to-Fix
In this mode the receiver will turn on every cycle period to perform a system update consisting of an
RTC calibration and satellite ephemeris data collection if required (i.e., a new satellite has become
visible) as well as all software tasks to support Snap Start in the event of an NMI (Non-Maskable
Interrupt). Ephemeris collection time in general takes 18 to 36 seconds. If ephemeris data is not required
then the system will re-calibrate and shut down. In either case, the amount of time the receiver remains
off will be in proportion to how long it stayed on:
SIM508 GPS Command_V1.01
Page 28 of 66
SIM508 GPS Command Specification
Confidential
Off period = On Period*(1-Duty Cycle)
Duty Cycle
The off period has a possible range between 10 and 7200 seconds. The default is 1800 seconds.
Push-to-Fix cycle period is set using message MID 167.
2.2.17 Poll Navigation Parameters - Message ID 152
Table 51 contains the input values for the following example:
Example: Poll receiver for current navigation parameters.
A0A20002—Start Sequence and Payload Length
9800—Payload
0098B0B3—Message Checksum and End Sequence
Table 51 Poll Receiver for Navigation Parameters
Name
Bytes Binary (Hex)
Scale
Example
Message ID
1
98
Reserved
1
00
Payload length: 2 bytes
Units
Description
Decimal 152
Reserved
Note – Returned message will be MID 19. See “Navigation Parameters (Response to Poll) - Message ID
19”.
2.2.18 Set UART Configuration - Message ID 165
Table 52 contains the input values for the following example:
Example: Set port 0 to NMEA with 9600 baud, 8 data bits, 1 stop bit, no parity. Set port 1 to SiRF binary
with 57600 baud, 8 data bits, 1 stop bit, no parity. Do not configure ports 2 and 3.
Example:
A0A20031—Start Sequence and Payload Length
A50001010000258008010000000100000000E1000801000000FF050500000000000
0000000FF0505000000000000000000—Payload
0452B0B3—Message Checksum and End Sequence
Table 52 Set UART Configuration
Binary (Hex)
Name
Bytes
Scale
Example
Message ID
1
A5
Port1
1
00
In Protocol2
1
01
Out Protocol
1
01
Baud Rate3
4
00002580
4
Data Bits
1
08
Stop Bits5
1
01
Parity6
1
00
Reserved
1
00
Reserved
1
00
Port
1
01
SIM508 GPS Command_V1.01
Units
Page 29 of 66
Description
Decimal 165
For UART 0
For UART 0
For UART 0(Set to in protocol)
For UART 0
For UART 0
For UART 0
For UART 0
For UART 0
For UART 0
For UART 1
SIM508 GPS Command Specification
Confidential
In Protocol
1
00
For UART 1
Out Protocol
1
00
For UART 1
Baud Rate
4
0000E100
For UART 1
Data Bits
1
08
For UART1
Stop Bits
1
01
For UART 1
Parity
1
00
For UART1
Reserved
1
00
For UART 1
Reserved
1
00
For UART 1
Port
1
FF
For UART 2
In Protocol
1
05
For UART 2
Out Protocol
1
05
For UART 2
Baud Rate
4
00000000
For UART 2
Data Bits
1
00
For UART 2
Stop Bits
1
00
For UART 2
Parity
1
00
For UART 2
Reserved
1
00
For UART 2
Reserved
1
00
For UART 2
Port
1
FF
For UART 3
In Protocol
1
05
For UART 3
Out Protocol
1
05
For UART 3
Baud Rate
4
00000000
For UART 3
Data Bits
1
00
For UART 3
Stop Bits
1
00
For UART 3
Parity
1
00
For UART 3
Reserved
1
00
For UART 3
Reserved
1
00
For UART 3
Payload length: 49 bytes
1. 0xFF means to ignore this port; otherwise, put the port number in this field (e.g., 0 or 1).
2. 0 = SiRF Binary, 1 = NMEA, 2 = ASCII, 3 = RTCM, 4 = User1, 5 = No Protocol.
3. Valid values are 1200, 2400, 4800, 9600, 19200, 38400, and 57600.
4. Valid values are 7 and 8.
5. Valid values are 1 and 2.
6. 0 = None, 1 = Odd, 2 = Even.
Note – While this message supports four UARTs, the specific baseband chip in use may contain fewer.
2.2.19 Set Message Rate - Message ID 166
Table 53 contains the input values for the following example:
Set MID 2 to output every 5 seconds starting immediately.
Example:
A0A20008—Start Sequence and Payload Length
A600020500000000—Payload
00ADB0B3—Message Checksum and End Sequence
Table 53 Set Message Rate
Name
Bytes Binary (Hex)
Scale Example
Message ID
1
A6
Send Now1
1
00
SIM508 GPS Command_V1.01
Units
Page 30 of 66
Description
Decimal 166
Poll message; 0 = No, 1 = Yes
SIM508 GPS Command Specification
Confidential
MID to be set
1
02
Update Rate2
1
05
sec
Range = 0 - 30
Reserved
1
00
Not used, set to zero
Reserved
1
00
Not used, set to zero
Reserved
1
00
Not used, set to zero
Reserved
1
00
Not used, set to zero
Payload length:8 bytes
1. 0 = No, set update rate; 1 = Yes, poll message now and ignore update rate.
2. A value of 0 means to stop sending the message. A value in the range of 1 - 30 specifies the cycle
period.
Payload Length: 8 bytes
2.2.20 Set Low Power Acquisition Parameters - Message ID 167
Table 54 contains the input values for the following example:
Set maximum time for sleep mode and maximum satellite search time to default values. Also set
Push-to-Fix cycle time to 60 seconds and disable Adaptive TricklePower.
Example:
A0A2000F—Start Sequence and Payload Length
A7000075300001D4C00000003C0000—Payload
031DB0B3—Message Checksum and End Sequence
Table 54 Set Low Power Acquisition Parameters
Name
Bytes Binary (Hex)
Scale Example
Message ID
1
A7
Max Off Time
4
00007530
Units
msec
Max Search Time
4
0001D4C0
msec
Push-to-Fix Period
Adaptive Trickle
Power
4
2
0000003C
0001
sec
Description
Decimal 167
Maximum time for sleep mode.
Default value: 30 seconds.
Max. satellite search time.
Default value: 120 seconds.
Push-to-Fix cycle period
To enable Adaptive
TricklePower
0 = off; 1 = on
Payload length: 15 bytes
2.2.21 Poll Command Parameters - Message ID 168
This command queries the receiver to send specific response messages for one of the following
messages: 0x80, 0x85, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8F, 0x97 and 0xAA (see Table 55 message ID
168).
Table 55 contains the input values for the following example:
Query the receiver for current settings of low power parameters set by MID 0x97.
Example:
A0A20002–Start Sequence and Payload Length
A897-Payload
013FB0B3-Message Checksum and End Sequence
SIM508 GPS Command_V1.01
Page 31 of 66
SIM508 GPS Command Specification
Confidential
Table 55 Poll Command Parameters
Name
Bytes Binary (Hex)
Units
Description
Scale Example
Message ID
1
A8
Decimal 168
Poll Msg ID
1
97
Requesting Msg ID 0x971
Payload length: 2 bytes
1. Valid message IDs are 0x80, 0x85, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8F, 0x97, and 0xAA.
2.2.22 Set SBAS Parameters - Message ID 170
This command allows the user to set the SBAS parameters.
Table 56 contains the input values for the following example:
Set automatic SBAS search and testing operating mode.
Example:
A0A20006—Start Sequence and Payload Length
AA0000010000—Payload
01B8B0B3—Message Checksum and End Sequence
Table 56 Set SBAS Parameters
Name
Bytes Binary (Hex)
Scale Example
Message ID 1
AA
SBAS PRN 1
00
SBAS Mode
1
Units
Description
Decimal 170
0=Auto mode
PRN 120-138= Exclusive
0=Testing, 1=Integrity
Integrity mode will reject SBAS corrections if the
SBAS satellite is transmitting in a test mode.
Testing mode will accept/use SBAS corrections
even if satellite is transmitting in a test mode.
00
Payload length: 3 bytes
Table 57 Set SBAS Parameters
Binary (Hex)
Name
Bytes
Scale
Example
Flag Bits1
1
Units
Description
Bit 0: Timeout; 0=Default 1=User
Bit 1: Health; Reserved
Bit 2: Correction; Reserved
Bit 3: SBAS PRN; 0=Default 1=User
Spare
2
0000
Payload length:3 bytes
1. If Bit 0 = 1, user-specified timeout from message ID 138 is used. If Bit 0 = 0, timeout specified by the
SBAS satellite will be used (this is usually 18 seconds). If Bit 3 = 1, the SBAS PRN specified in the
SBAS PRN field will be used. If Bit 3 = 0, the system will search for any SBAS PRN.
2.2.23 Initialize GPS/DR Navigation - Message ID 172 (Sub ID 1)
Set the navigation initialization parameters and command a software reset based onthose parameters.
Name
MID
Sub ID
Latitude
Bytes
1
1
4
SIM508 GPS Command_V1.01
Scale
Units
deg
Description
=0xAC
=0x01
for Warm Start with user input
Page 32 of 66
SIM508 GPS Command Specification
Confidential
Longitude
Altitude (ellipsoid)
True heading
Clock drift
GPS time of week
GPS week number
Channel count
Reset configuration
bits1
4
4
2
4
4
2
1
1
100
deg
m
deg
Hz
sec
for Warm Start with user input
for Warm Start with user input
for Warm Start with user input
for Warm Start with user input
for Warm Start with user input
for Warm Start with user input
for Warm Start with user input
Bit 0: use initial data provided in this message
for start-up.
Bit 1: clear ephemeris in memory.
Bit 2: clear all memory.
Bit 3: perform Factory Reset.
Bit 4: enable SiRF Binary output messages for
raw track data, navigation library, 50-bps info,
RTCM data, clock status, and DR status.
Bit 5: enable debug output messages.
Bit 6: Reserved.
Bit 7: Reserved.
Payload length: 28 bytes
1. Bits 0 - 3 determine the reset mode: 0000=Hot; 0010=Warm; 0011=Warm with user input; 0100=Cold; 1000=Factory.
2.2.24 Set GPS/DR Navigation Mode - Message ID 172 (Sub ID 2)
Set the GPS/DR navigation mode control parameters.
Name
Bytes
Description
MID
1
=AC
Sub ID
1
=0x02
Mode
1
Bit 0 : GPS-only navigation.
Bit 1 : DR nav acceptable with stored/default calibration.
Bit 2 : DR nav acceptable with current GPS calibration.
Bit 3 : DR-only navigation.
Reserved
1
2.2.25 Set DR Gyro Factory Calibration - Message ID 172 (Sub ID 3)
Set DR gyro’s factory calibration parameters.
Name
Bytes Scale
Units
MID
1
Sub ID
1
Calibration
1
Description
=0xAC
=0x03
Bit 0 : Start gyro bias calibration.
Bit 1 : Start gyro scale factor calibration.
Bits 2 - 7 : Reserved.
Reserved
1
Payload length: 4 bytes
2.2.26 Set DR Sensors’ Parameters - Message ID 172 (Sub ID 4)
Set DR sensors’ parameters.
Name
Bytes
MID
1
Sub ID
1
Base speed scale factor 1
SIM508 GPS Command_V1.01
Scale
Units
ticks/m
Page 33 of 66
Description
=0xAC
=0x04
SIM508 GPS Command Specification
Confidential
Base gyro bias
2
Base gyro scale factor
2
Payload length: 74 bytes
104
103
mV
mV/deg/s
2.2.27 Poll DR Gyro Factory Calibration - Message ID 172 (Sub ID 6)
Poll the DR gyro’s factory calibration status.
Name
Bytes
MID
1
Sub ID
1
Payload length: 2 bytes
Description
=AC
=0x06
2.2.28 Poll DR Sensors’ Parameters - Message ID 172 (Sub ID 7)
Poll the DR sensors’ parameters.
Name
MID
Sub ID
Payload length: 2 bytes
Bytes
1
1
Description
=AC
=0x07
2.3 Output Messages Of SiRF Binary Protocol
2.3.1 Measure Navigation Data Out - Message ID 2
Output Rate: 1 Hz
Table 58 lists the message data format for the measured navigation data.
Example:
A0A20029—Start Sequence and Payload Length
02FFD6F78CFFBE536E003AC004000000030001040A00036B039780E3
0612190E160F04000000000000—Payload
09BBB0B3—Message Checksum and End Sequence
Table 58 Measured Navigation Data Out - Message Data Format
Name
Bytes Binary (Hex)
Units
Scale
Example
Message ID 1
02
X-position
4
FFD6F78C
m
Y-position
4
FFBE536E
m
Z-position
4
003AC004
m
X-velocity
2
*8
0000
m/sec
Y-velocity
2
*8
0003
m/sec
Z-velocity
2
*8
0001
m/sec
Mode 1
1
04
Bitmap1
HDOP2
1
*5
0A
Mode 2
1
00
Bitmap3
GPS Week4 2
036B
GPS TOW
4
*100
039780E3
seconds
SVs in Fix
1
06
CH 1 PRN5 1
12
CH 2 PRN5 1
19
SIM508 GPS Command_V1.01
Page 34 of 66
ASCII (Decimal)
Scale
Example
2
-2689140
-4304018
3850244
Vx÷8
0
Vy÷8
0.375
Vz÷8
0.125
4
÷5
2.0
0
875
÷100
602605.79
6
18
25
SIM508 GPS Command Specification
Confidential
CH 3 PRN5 1
0E
CH 4 PRN5 1
16
CH 5 PRN5 1
0F
CH 6 PRN5 1
04
CH 7 PRN5 1
00
CH 8 PRN5 1
00
CH 9 PRN5 1
00
CH 10
1
00
PRN5
CH 11
1
00
PRN5
CH 12
1
00
PRN5
Payload length: 41 bytes
1. For further information, go to Table 59.
2. HDOP value reported has a maximum value of 50.
3. For further information, go to Table 60.
4. GPS week reports only the ten LSBs of the actual week number.
5. PRN values are reported only for satellites used in the navigation solution.
14
22
15
4
0
0
0
0
0
0
Note – Binary units scaled to integer values need to be divided by the scale value to receive true decimal
value (i.e., decimal Xvel = binary Xvel ÷ 8).
Table 59 Mode 2
Bit
7
Bit(s) Name DGPS
Bit(s) Name
PMODE
6
DOP-Mask
5
4
ALTMODE
3
TPMODE
2
PMODE
1
0
Name
Position mode
Value
Description
0
No navigation solution
1
1-SV solution (Kalman filter)
2
2-SV solution (Kalman filter)
3
3-SV solution (Kalman filter)
4
> 3-SV solution (Kalman filter)
5
2-D point solution (least squares)
6
3-D point solution (least squares)
7
Dead-Reckoning1solution (no satellites)
TPMODE
TricklePower mode
0
Full power position
1
TricklePower position
ALTMODE
Altitude mode
0
No altitude hold applied
1
Holding of altitude from KF
2
Holding of altitude from user input
3
Always hold altitude (from user input)
DOPMASK
DOP mask status
0
DOP mask not exceeded
1
DOP mask exceeded
DGPS
DGPS status
0
No differential corrections applied
1
Differential corrections applied
1. In standard software, Dead Reckoning solution is computed by taking the last valid position and
velocity and projecting the position using the velocity and elapsed time
Note – Mode 1 of Message ID 2 is a bit-mapped byte with five sub-values in it. The first table above
SIM508 GPS Command_V1.01
Page 35 of 66
SIM508 GPS Command Specification
Confidential
shows the location of the sub-values while the table directly above shows the interpretation of each
sub-value.
Table 60 Mode 2
Bit
Description
0
1 = sensor DR in use
0 = velocity DR if PMODE sub-value in Mode 1 = 7;
else check Bits 6 and 7 for DR error status
1
If set, solution is validated (5 or more SVs used)1
2
If set, velocity DR timeout
3
If set, solution edited by UI (e.g., DOP Mask exceeded)
4
If set, velocity is invalid
5
Altitude hold mode:
0 = enabled
1 = disabled (3-D fix only)
7,6
Sensor DR error status:
00 = GPS-only navigation
01 = DR in calibration
10 = DR sensor errors
11 = DR in test mode
1. From an unvalidated state, a 5-SV fix must be achieved to become a validated position. If the receiver
continues to navigate in a degraded mode (less than 4 SVs), the validated status will remain. If
navigation is lost completely, an unvalidated status will result.
Note – Mode 2 of MID 2 is used to define the Fix field of the Measured Navigation Message View. It
should be used only as an indication of the current fix status of the navigation solution and not as a
measurement of TTFF.
2.3.2 Measured Tracker Data Out - Message ID 4
Output Rate: 1 Hz
Table 61 lists the message data format for the measured tracker data.
Example:
A0A200BC—Start Sequence and Payload Length
04036C0000937F0C0EAB46003F1A1E1D1D191D1A1A1D1F1D59423F1A1A...—Payload
....B0B3—Message Checksum and End Sequence
Table 61 Measured Tracker Data Out
Binary (Hex)
Name
Bytes
Scale
Example
Message ID
1
04
GPS Week1
2
036C
GPS TOW
4
s*100
0000937F
Chans
1
0C
1st SVid
1
0E
Azimuth
1
Az*[2/3]
AB
Elev
1
El*2
46
State
2
003F
C/No 1
1
1A
C/No 2
1
1E
C/No 3
1
1D
SIM508 GPS Command_V1.01
Page 36 of 66
Units
sec
deg
deg
Bitmap2
dB-Hz
dB-Hz
dB-Hz
ASCII (Decimal)
Scale
Example
4
876
s÷100
37759
12
14
÷[2/3]
256.5
÷2
35
0 x 3F
26
30
29
SIM508 GPS Command Specification
Confidential
C/No 4
1
1D
dB-Hz
C/No 5
1
19
dB-Hz
C/No 6
1
1D
dB-Hz
C/No 7
1
1A
dB-Hz
C/No 8
1
1A
dB-Hz
C/No 9
1
1D
dB-Hz
C/No 10
1
1F
dB-Hz
2nd SVid
1
1D
Azimuth
1
Az*[2/3]
59
deg
÷[2/3]
Elev
1
El*2
42
deg
÷2
State
2
3F
Bitmap2
C/No 1
1
1A
dB-Hz
C/No 2
1
1A
dB-Hz
...
Payload length: 188 bytes
1. GPS week number is reported modulo 1024 (ten LSBs only).
2. For further information, see Table 62 for state values for each channel.
29
25
29
26
26
29
31
29
89
66
63
26
63
Table 62 State Values for Each Channel
Bit
Description When Bit is Set to 1
0x0001
Acquisition/re-acquisition has been completed successfully
0x0002
The integrated carrier phase is valid
0x0004
Bit synchronization has been completed
0x0008
Subframe synchronization has been completed
0x0010
Carrier pullin has been completed
0x0020
Code has been locked
0x0040
Satellite acquisition has failed
0x0080
Ephemeris data is available
2.3.3 Software Version String (Response to Poll) - Message ID 6
Output Rate: Response to polling message
Example:
A0A20015—Start Sequence and Payload Length
06322E332E322D475358322D322E30352E3032342D4331464C4558312E3200000
00000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000—Payload
0631B0B3—Message Checksum and End Sequence
Table 63 Software Version String
Name
Bytes
Binary (Hex)
Units
Scale
Example
Message ID 1
06
Character
80
1
Payload length: 81 bytes
1. Repeat the payload sequence above minus the starting 0x06 byte.
2. 2.3.2-GSW2-2.05.024-C1FLEX1.2
ASCII (Decimal)
Scale
Example
6
2
Note – Convert ASCII to symbol to assemble message (i.e., 0x4E is ‘N’). This is a low priority task and
is not necessarily outputted at constant intervals. Effective with version GSW 2.3.2, message length
was increased from 21 to 81 bytes to allow for up to 80-character version string.
SIM508 GPS Command_V1.01
Page 37 of 66
SIM508 GPS Command Specification
Confidential
2.3.4 Response: Clock Status Data - Message ID 7
Output Rate: 1 Hz or response to polling message
Example:
A0A20014—Start Sequence and Payload Length
0703BD0215492408000122310000472814D4DAEF—Payload
0598B0B3—Message Checksum and End Sequence
Table 64 Clock Status Data Message
Binary (Hex)
ASCII (Decimal)
Name
Bytes
Units
Scale
Example
Scale
Example
Message ID
1
07
7
Extended GPS Week1
2
03BD
957
GPS TOW
4
*100
02154924
sec
÷100
349494.12
2
SVs
1
08
8
Clock Drift
4
00012231
Hz
74289
Clock Bias
4
00004728
ns
18216
Estimated GPS Time
4
14D4DAEF ms
349493999
Payload length: 20 bytes
1. GPS week has been resolved to the full week number (1024-week ambiguity has been resolved).
2. Number of satellites used in the solution for clock drift, clock bias, and estimated GPS time.
2.3.5 50 BPS Data - Message ID 8
Output Rate: Approximately every 6 seconds for each channel
Example:
A0A2002B—Start Sequence and Payload Length
08001900C0342A9B688AB0113FDE2D714FA0A7FFFACC5540157EFFEEDFFFA
80365A867FC67708BEB5860F4—Payload
15AAB0B3—Message Checksum and End Sequence
Table 65 50 BPS Data
Name
Bytes
Binary (Hex)
Scale
Example
08
00
19
Message ID
1
Channel
1
SV ID
1
Word[10]
40
Payload length: 43 bytes per sub-frame (5 subframes per page)
Units
ASCII (Decimal)
Scale
Example
8
0
25
Note – Data is logged in ICD-GPS-200C format (available from www.navcen.uscg.mil). The 10 words
together comprise a complete subframe of navigation message data. Within the word, the 30 bits of the
navigation message word are right justified, complete with 24 data bits and 6 parity bits. Any inversion
of the data has been removed. The 2 MSBs of the word contain parity bits 29 and 30 from the previous
navigation message word.
SIM508 GPS Command_V1.01
Page 38 of 66
SIM508 GPS Command Specification
Confidential
2.3.6 CPU Throughput - Message ID 9
Output Rate: 1 Hz
Example:
A0A20009—Start Sequence and Payload Length
09003B0011001601E5—Payload
0151B0B3—Message Checksum and End Sequence
Table 66 CPU Throughput
Name
Bytes
Message ID
1
SegStatMax
2
SegStatLat
2
AveTrkTime
2
Last Millisecond
2
Payload length: 9 bytes
Binary (Hex)
Scale
Example
09
*186
003B
*186
0011
*186
0016
01E5
Units
ms
ms
ms
ms
ASCII (Decimal)
Scale
Example
9
÷186
0.3172
÷186
0.0914
÷186
0.1183
485
2.3.7 Error ID Data - Message ID 10
Output Rate: As errors occur
MID 10 messages have a different format from other messages. Rather than one fixed format, there are
several formats, each designated by an error ID. However, the format is standardize as indicated in
Table 67. The specific format of each error ID message follows.
Table 67 Message ID 10 Overall Format
Name
Bytes
Description
Message ID
1
Message ID number - 10.
Error ID
2
Sub-message type.
Count
2
Count of number of 4-byte values that follow.
Data[n]
4*n
Actual data for the message, n is equal to Count.
Error ID: 2
Code Define Name: ErrId_CS_SVParity
Error ID Description: Satellite subframe # failed parity check.
Example:
A0A2000D – Start Sequence and Payload Length
0A000200020000000100000002 – Payload
0011B0B3 – Message Checksum and End Sequence
Table 68 Error ID 2 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
0002
Count
2
0002
Satellite ID
4
00000001
Subframe No
4
00000002
Payload Length: 13 bytes
SIM508 GPS Command_V1.01
Page 39 of 66
Units
ASCII (Decimal)
Scale
Example
10
2
2
1
2
SIM508 GPS Command Specification
Confidential
Table 69 Error ID 2 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
Satellite ID
Satellite Pseudo-random Noise (PRN) number.
Subframe No
The associated subframe number that failed the parity check. Valid
Error ID: 9
Code Define Name: ErrId_RMC_GettingPosition
Error ID Description: Failed to obtain a position for acquired satellite ID.
Example:
A0A20009 – Start Sequence and Payload Length
0A0009000100000001 – Payload
0015B0B3 – Message Checksum and End Sequence
Table 70 Error ID 9 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
0009
Count
2
0002
Satellite ID
4
00000001
Payload Length: 9 bytes
Units
ASCII (Decimal)
Scale
Example
10
9
2
1
Table 71 Error ID 9 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
Satellite ID
Satellite Pseudo-random Noise (PRN) number.
Error ID: 10
Code Define Name: ErrId_RXM_TimeExceeded
Error ID Description: Conversion of Nav Pseudo Range to Time of Week (TOW) for tracker exceeds
limits: Nav Pseudo Range > 6.912e5 (1 week in seconds) || Nav Pseudo Range < -8.64e4.
Example:
A0A20009 – Start Sequence and Payload Length
0A000A000100001234 – Payload
005BB0B3 – Message Checksum and End Sequence
Table 72 Error ID 10 Message
Binary (Hex)
Name
Bytes
Scale
Example
Message ID
1
0A
Error ID
2
000A
Count
2
0001
Pseudorange
4
00001234
Payload Length: 9 bytes
SIM508 GPS Command_V1.01
Page 40 of 66
Units
ASCII (Decimal)
Scale
Example
10
10
1
4660
SIM508 GPS Command Specification
Confidential
Table 73 Error ID 10 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
Pseudorange
Pseudo Range
Error ID: 11
Code Define Name: ErrId_RXM_TDOPOverflow
Error ID Description: Convert pseudorange rate to Doppler frequency exceeds limit.
Example:
A0A20009 – Start Sequence and Payload Length
0A000B0001xxxxxxxx – Payload
xxxxB0B3 – Message Checksum and End Sequence
Table 74 Error ID 11 Message
Binary (Hex)
Name
Bytes
Scale
Example
Message ID
1
0A
Error ID
2
000B
Count
2
0001
Doppler
4
xxxxxxxx
Frequency
Payload Length: 9 bytes
Units
ASCII (Decimal)
Scale
Example
10
11
1
xxxxxxxx
Table 75 Error ID 11 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
Doppler Frequency
Doppler Frequency
Error ID: 12
Code Define Name: ErrId_RXM_ValidDurationExceeded
Error ID Description: Satellite’s ephemeris age has exceeded 2 hours (7200 s).
Example:
A0A2000D – Start Sequence and Payload Length
0A000C0002xxxxxxxxaaaaaaaa – Payload
xxxxB0B3 – Message Checksum and End Sequence
Table 76 Error ID 12 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
000C
Count
2
0002
Satellite ID
4
xxxxxxxx
Age Of
4
aaaaaaaa
Ephemeris
Payload Length: 13 bytes
SIM508 GPS Command_V1.01
Page 41 of 66
Units
seconds
ASCII (Decimal)
Scale
Example
10
12
2
xxxxxxxx
aaaaaaaa
SIM508 GPS Command Specification
Confidential
Table 77 Error ID 12 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
Satellite ID
Satellite Pseudo-random Noise (PRN) number
Age of Ephemeris
The Satellite’s Ephemeris Age in seconds.
Error ID: 13
Code Define Name: ErrId_STRTP_BadPostion
Error ID Description: SRAM position is bad during a cold start.
Example:
A0A20011 – Start Sequence and Payload Length
0A000D0003xxxxxxxxaaaaaaaabbbbbbbb – Payload
xxxxB0B3 – Message Checksum and End Sequence
Table 78 Error ID 13 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
000D
Count
2
0003
X
4
xxxxxxxx
Y
4
aaaaaaaa
Z
4
bbbbbbbb
Payload Length: 17 bytes
Units
ASCII (Decimal)
Scale
Example
10
13
3
xxxxxxxx
aaaaaaaa
bbbbbbbb
Table 79 Error ID 13 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
X
X position in ECEF.
Y
Y position in ECEF.
Z
Z position in ECEF.
Error ID: 4097 (0x1001)
Code Define Name: ErrId_MI_VCOClockLost
Error ID Description: VCO lost lock indicator.
Example:
A0A20009 – Start Sequence and Payload Length
0A1001000100000001 – Payload
001DB0B3 – Message Checksum and End Sequence
Table 80 Error ID 4097 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
1001
Count
2
0001
SIM508 GPS Command_V1.01
Page 42 of 66
Units
ASCII (Decimal)
Scale
Example
10
4097
1
SIM508 GPS Command Specification
Confidential
VCOLost
4
Payload Length: 9 bytes
00000001
1
Table 81 Error ID 4097 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
VCOLost
VCO lock lost indicator. If VCOLost != 0, then send failure message.
Error ID: 4099 (0x1003)
Code Define Name: ErrId_MI_FalseAcqReceiverReset
Error ID Description: Nav detect false acquisition, reset receiver by calling NavForceReset routine.
Example:
A0A20009 – Start Sequence and Payload Length
0A1003000100000001 – Payload
001FB0B3 – Message Checksum and End Sequence
Table 82 Error ID 4099 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
1003
Count
2
0001
InTrkCount
4
00000001
Payload Length: 9 bytes
Units
ASCII (Decimal)
Scale
Example
10
4099
1
1
Table 83 Error ID 4099 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
InTrkCount
False acquisition indicator. If InTrkCount <= 1, then send failure message and
reset receiver.
Error ID: 4104 (0x1008)
Code Define Name: ErrId_STRTP_SRAMCksum
Error ID Description: Failed SRAM checksum during startup.
• Four field message indicates receiver control flags had checksum failures.
• Three field message indicates clock offset's checksum failure or clock offset value
is out of range.
• Two field message indicates position and time checksum failure forces a cold start.
Example:
A0A2xxxx – Start Sequence and Payload Length
0A10080004xxxxxxxaaaaaaaa00000000cccccccc – Payload
xxxxB0B3 – Message Checksum and End Sequence
SIM508 GPS Command_V1.01
Page 43 of 66
SIM508 GPS Command Specification
Confidential
Table 84 Error ID 4104 Message
Name
Bytes
Message ID
Error ID
Count
1
2
2
Computed Receiver
4
Control Checksum
Battery-Backed
4
Receiver Control
Checksum
Battery-Backed
4
Receiver Control
OpMode
Battery-Backed
4
Receiver Control
Channel Count
Compute Clock Offset 4
Checksum
Battery-Backed Clock
4
Offset Checksum
Battery-Backed Clock
4
Offset
Computed Position
4
Time Checksum
Battery-Backed
4
Position Time
Checksum
Payload length: 21, 17, or 11 bytes
Binary (Hex)
Scale
Example
0A
1008
0004 or
0003 or
0002
xxxxxxxx
Units
ASCII (Decimal)
Scale
Example
10
4104
4 or
3 or
2
xxxx
aaaaaaaa
aaaa
00000000
0
cccccccc
cccc
xxxxxxxx
xxxx
aaaaaaaa
aaaa
bbbbbbbb
bbbb
xxxxxxxx
xxxx
aaaaaaaa
aaaa
Table 85 Error ID 4104 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
Computed Receiver
Computed receiver control checksum of SRAM.Data.Control
Control Checksum
structure.
Battery-Backed Receiver Battery-backed receiver control checksum stored in SRAM.
Control Checksum
Data. DataBuffer. CntrlChkSum.
Battery-Backed Receiver Battery-backed receiver control checksum stored in
Control OpMode
SRAM.Data.Control.OpMode. Valid OpMode values are as
follows:
OP_MODE_NORMAL = 0,
OP_MODE_TESTING = 0x1E51,
OP_MODE_TESTING2 = 0x1E52,
OP_MODE_TESTING3 = 0x1E53.
Battery-Backed Receiver Battery-backed receiver control channel count in SRAM. Data.
Control Channel Count
Control. ChannelCnt. Valid channel count values are 0-12.
Compute Clock Offset
Computed clock offset checksum of SRAM. Data. DataBuffer.
Checksum
clkOffset.
SIM508 GPS Command_V1.01
Page 44 of 66
SIM508 GPS Command Specification
Confidential
Battery-Backed Clock
Offset Checksum
Battery-Backed Clock
Offset
Computed Position Time
Checksum
Battery-Backed Position
Time Checksum
Computed clock offset checksum of SRAM. Data. DataBuffer.
clkOffset.
Battery-backed clock offset value stored in SRAM. Data.
DataBuffer, clkOffset.
Computed position time checksum of SRAM. Data. DataBuffer.
postime[1].
Battery-backed position time checksum of SRAM. Data.
DataBuffer. postimeChkSum[1].
Error ID: 4105 (0x1009)
Code Define Name: ErrId_STRTP_RTCTimeInvalid
Error ID Description: Failed RTC SRAM checksum during startup. If one of the double buffered
SRAM.Data.LastRTC elements is valid and RTC days is not 255 days, then GPS time and week number
computed from the RTC is valid. If not, this RTC time is invalid.
Example:
A0A2000D – Start Sequence and Payload Length
0A10090002xxxxxxxaaaaaaaa – Payload
xxxxB0B3 – Message Checksum and End Sequence
Table 86 Error ID 4105 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
1009
Count
2
0002
TOW
4
xxxxxxxx
Week Number
4
aaaaaaaa
Payload Length: 13 bytes
Units
seconds
ASCII (Decimal)
Scale
Example
10
4105
2
xxxx
aaaa
Table 87 Error ID 4105 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
TOW
GPS time of week in seconds. Range 0 to 604800 seconds.
Week Number
GPS week number.
Error ID: 4106 (0x100A)
Code Define Name: ErrId_KFC_BackupFailed_Velocity
Error ID Description: Failed battery-backing position because of ECEF velocity sum was greater than
equal to 3600.
Example:
A0A20005 – Start Sequence and Payload Length
0A100A0000 – Payload
0024B0B3 – Message Checksum and End Sequence
Table 88 Error ID 4106 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
100A
SIM508 GPS Command_V1.01
Page 45 of 66
Units
ASCII (Decimal)
Scale
Example
10
4106
SIM508 GPS Command Specification
Confidential
Count
2
Payload Length: 5 bytes
0000
0
Table 89 Error ID 4106 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
Error ID: 4107 (0x100B)
Code Define Name: ErrId_KFC_BackupFailed_NumSV
Error ID Description: Failed battery-backing position because current navigation mode is not KFNav
and not LSQFix.
Example:
A0A20005 – Start Sequence and Payload Length
0A100B0000 – Payload
0025B0B3 – Message Checksum and End Sequence
Table 90 Error ID 4107 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
100B
Count
2
0000
Payload Length: 5 bytes
Units
ASCII (Decimal)
Scale
Example
10
4107
0
Table 91 Error ID 4107 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
Error ID: 8193 (0x2001)
Code Define Name: ErrId_MI_BufferAllocFailure
Error ID Description: Buffer allocation error occurred. Does not appear to be active because
uartAllocError variable never gets set to a non-zero value in the code.
Example:
A0A20009 – Start Sequence and Payload Length
0A2001000100000001 – Payload
002DB0B3 – Message Checksum and End Sequence
Table 92 Error ID 8193 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
2001
Count
2
0001
uartAllocError
4
00000001
Payload Length: 9 bytes
SIM508 GPS Command_V1.01
Page 46 of 66
Units
ASCII (Decimal)
Scale
Example
10
8193
1
1
SIM508 GPS Command Specification
Confidential
Table 93 Error ID 8193 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
uartAllocError
Contents of variable used to signal UART buffer allocation error.
Error ID: 8194 (0x2002)
Code Define Name: ErrId_MI_UpdateTimeFailure
Error ID Description: PROCESS_1SEC task was unable to complete upon entry. Overruns are
occurring.
Example:
A0A2000D – Start Sequence and Payload Length
0A200200020000000100000064 – Payload
0093B0B3 – Message Checksum and End Sequence
Table 94 Error ID 8194 Message
Name
Bytes
Message ID
Error ID
Count
Number of in process errors.
Millisecond errors
Payload Length: 13 bytes
1
2
2
4
4
Binary (Hex)
Scale
Example
0A
2002
0002
00000001
00000064
Units
ASCII (Decimal)
Scale
Example
10
8194
2
1
100
Table 95 Error ID 8194 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
Number of in process errors. Number of one second updates not complete on entry.
Millisecond errors
Millisecond errors caused by overruns.
Error ID: 8195 (0x2003)
Code Define Name: ErrId_MI_MemoryTestFailed
Error ID Description: Failure of hardware memory test. Does not appear to be active because
MemStatus variable never gets set to a non-zero value in the code.
Example:
A0A20005 – Start Sequence and Payload Length
0A20030000 – Payload
002DB0B3 – Message Checksum and End Sequence
Table 96 Error ID 8195 Message
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0A
Error ID
2
2003
Count
2
0000
Payload Length: 5 bytes
SIM508 GPS Command_V1.01
Page 47 of 66
Units
ASCII (Decimal)
Scale
Example
10
8195
0
SIM508 GPS Command Specification
Confidential
Table 97 Error ID 8195 Message Description
Name
Description
Message ID
Message ID number.
Error ID
Error ID (see Error ID description above).
Count
Number of 32 bit data in message.
2.3.8 Command Acknowledgment - Message ID 11
Output Rate: Response to successful input message
This is a successful almanac request (message ID 0x92) example:
A0A20002—Start Sequence and Payload Length
0B92—Payload
009DB0B3—Message Checksum and End Sequence
Table 98 Command Acknowledgment
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0x0B
ACK ID
1
0x92
Payload Length: 2 bytes
Units
ASCII (Decimal)
Scale
Example
11
146
2.3.9 Command NAcknowledgment - Message ID 12
Output Rate: Response to rejected input message
This is an unsuccessful almanac request (message ID 0x92) example:
A0A20002—Start Sequence and Payload Length
0C92—Payload
009EB0B3—Message Checksum and End Sequence
Table 99 Command N’Acknowledgment
Name
Bytes
Binary (Hex)
Scale
Example
Message ID
1
0x0C
N’Ack ID
1
0x92
Payload Length: 2 bytes
Units
ASCII (Decimal)
Scale
Example
12
146
Note – Commands can be Nack’d for several reasons including: failed checksum, invalid arguments,
unknown command, or failure to execute command.
2.3.10 Visible List – Message ID 13
Output Rate: Updated approximately every 2 minutes
Note – This is a variable length message. Only the number of visible satellites are reported (as defined
by Visible SVs in Table 100).
Example:
A0A2002A—Start Sequence and Payload Length
0D081D002A00320F009C0032....—Payload
....B0B3—Message Checksum and End Sequence
SIM508 GPS Command_V1.01
Page 48 of 66
SIM508 GPS Command Specification
Confidential
Table 100 Visible List
Name
Bytes
Binary (Hex)
Scale
Example
0D
08
10
002A
Units
ASCII (Decimal)
Scale
Example
13
8
16
42
Message ID
1
Visible SVs
1
Ch 1 - SV ID
1
Ch 1 - SV
2
degrees
Azimuth
Ch 1 - SV
2
0032
degrees
50
Elevation
Ch 2 - SV ID
1
0F
15
Ch 2 - SV
2
009C
degrees
156
Azimuth
Ch 2 - SV
2
0032
degrees
50
Elevation
...
Payload length: variable (2 + 5 times number of visible SVs up to maximum of 62 bytes)
2.3.11 Almanac Data - Message ID 14
Output Rate: Response to poll
Table 101 Contents of Message ID 14
Name
Bytes Description
Message ID
1
Hex 0x0E (decimal 14)
SV ID
1
SV PRN code, hex 0x01..0x02, decimal 1..32
Almanac Week &
2
10-bit week number in 10 MSBs, status in 6 LSBs (1 =good;
Status
0 = bad)
Data1
24
UINT16[12] array with sub-frame data.
Checksum
2
Payload length: 30 bytes
1. The data area consists of an array of 12 16-bit words consisting of the data bytes from the navigation
message sub-frame. Table 102 shows how the actual bytes in the navigation message corresponds to the
bytes in this data array. Note that these are the raw navigation message data bits with any inversion
removed and the parity bits removed.
Table 102 Byte Positions Between Navigation Message and Data Array
Navigation Message Data Array
Navigation Message Data Array
Word
Byte
Word
Byte
Word
Byte
Word
Byte
3
MSB
[0]
LSB
7
MSB
[6]
MSB
3
Middle
[0]
MSB
7
Middle
[6]
LSB
3
LSB
[1]
LSB
7
LSB
[7]
MSB
4
MSB
[1]
MSB
8
MSB
[7]
LSB
4
Middle
[2]
LSB
8
Middle
[8]
MSB
4
LSB
[2]
MSB
8
LSB
[8]
LSB
5
MSB
[3]
LSB
9
MSB
[9]
MSB
5
Middle
[3]
MSB
9
Middle
[9]
LSB
5
LSB
[4]
LSB
9
LSB
[10]
MSB
6
MSB
[4]
MSB
10
MSB
[10]
LSB
6
Middle
[5]
LSB
10
Middle
[11]
MSB
6
LSB
[5]
MSB
10
LSB
[11]
LSB
SIM508 GPS Command_V1.01
Page 49 of 66
SIM508 GPS Command Specification
Confidential
Note – Message ID 130 uses a similar format but sends an array of 14 16-bit words for each SV and a
total of 32 SVs in the message (almanac for SVs 1..32, in ascending order). For that message, a total of
448 words constitutes the data area. For each of 32 SVs, that corresponds to 14 words per SV. Those 14
words consist of one word containing the week number and status bit (described in Table 101 above as
Almanac Week & Status), 12 words of the same data as described for the data area above, then a single
16-bit checksum of the previous 13 words. The SV PRN code is not included in the message 130 since
the SV ID is inferred from the location in the array.
2.3.12 Ephemeris Data (Response to Poll) – Message ID 15
The ephemeris data that is polled from the receiver is in a special SiRF format based on the
ICD-GPS-200 format for ephemeris data.
Output Rate: Response to poll
Table 103 Contents of Message ID 14
Name
Bytes
Description
Message ID
1
Hex 0x0E (decimal 14)
SV ID
1
SV PRN code, hex 0x01..0x02, decimal 1..32
Data1
90
UINT16 [3][15] array with sub-frames 1..3 data.
Payload length: 92 bytes
1. The data area consists of a 3x15 array of unsigned integers, 16 bits long. The first word of each row in
the array ([0][0], [1][0], and [2][0]) will contain the SV ID. The remaining words in the row will contain
the data from the navigation message sub-frame, with row [0] containing sub-frame 1, row [1]
containing sub-frame 2, and row [2] containing sub-frame 3. Data from the sub-frame is stored in a
packed format, meaning that the 6 parity bits of each 30-bit navigation message word have been
removed, and the remaining 3 bytes are stored in 1.5 16-bit words. Since the first word of the sub-frame,
the telemetry word (TLM), does not contain any data needed by the receiver, it is not saved. Thus, there
are 9 remaining words, with 3 bytes in each sub-frame. This total of 27 bytes is stored in 14 16-bit words.
The second word of the sub-frame, the handover word (HOW), has its high byte (MSB) stored as the
low byte (LSB) of the first of the 16-bit words. Each following byte is stored in the next available byte of
the array. Table 104 shows where each byte of the sub-frame is stored in the row of 16-bit words.
Table 104 Byte Positions Between Navigation Message and Data Array
Navigation Message
Data Array
Navigation Message
Word
Byte
Word
Byte
Word
Byte
2 (HOW) MSB
[][1]
LSB
7
MSB
2
Middle
[][2]
MSB
7
Middle
2
LSB
[][2]
LSB
7
LSB
3
MSB
[][3]
MSB
8
MSB
3
Middle
[][3]
LSB
8
Middle
3
LSB
[][4]
MSB
8
LSB
4
MSB
[][4]
LSB
9
MSB
4
Middle
[][5]
MSB
9
Middle
4
LSB
[][5]
LSB
9
LSB
5
MSB
[][6]
MSB
10
MSB
5
Middle
[][6]
LSB
10
Middle
5
LSB
[][7]
MSB
10
LSB
6
MSB
[][7]
LSB
6
Middle
[][8]
MSB
6
LSB
[][8]
LSB
SIM508 GPS Command_V1.01
Page 50 of 66
Data Array
Word
[][9]
[][9]
[][10]
[][10]
[][11]
[][11]
[][12]
[][12]
[][13]
[][13]
[][14]
[][14]
Byte
MSB
LSB
MSB
LSB
MSB
LSB
MSB
LSB
MSB
LSB
MSB
LSB
SIM508 GPS Command Specification
Confidential
Note – Message ID 149 uses the same format, except the SV ID (the second byte in Message ID 15) is
omitted. Message ID 149 is thus a 91-byte message. The SV ID is still embedded in elements [0][0],
[1][0], and [2][0] of the data array.
2.3.13 OkToSend - Message ID 18
Output Rate: Two messages per power-saving cycle
Example:
A0A20002—Start Sequence and Payload Length
1200—Payload
0012B0B3—Message Checksum and End Sequence
Table 105 Almanac Data
Name
Bytes
Binary (Hex)
Scale
Example
Unit
s
ASCII
(Decimal)
Scal Exampl
e
e
18
00
Message ID
1
12
Send Indicator1 1
00
Payload Length: 2 bytes
1. 0 implies that CPU is about to go OFF, OkToSend==NO, 1 implies CPU has just come ON,
OkToSend==YES
Note – This message is sent when the receiver is in a power-saving mode. One message is sent just
before the receiver’s power is turned off (with Send Indicator set to 0), and one is sent once the power
has been restored (with Send Indicator set to 1).
2.3.14 Navigation Parameters (Response to Poll) - Message ID 19
Output Rate: Response to Poll (See Message ID 152)
Example:
A0 A2 00 41 —Start Sequence and Payload Length
13 00 00 00 00 00 00 00 00 01 1E 0F 01 00 01 00 00 00 00 04 00 4B 1C 00 00 00
00 02 00 1E 00 00 00 00 00 00 00 03 E8 00 00 03 E8 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00—Payload
02 A4 B0 B3—Message Checksum and End Sequence
SIM508 GPS Command_V1.01
Page 51 of 66
SIM508 GPS Command Specification
Confidential
Table 106 Navigation Parameters
Name
Bytes
Binary (Hex)
Scale
Message ID
Sub ID1
Reserved
Altitude Hold Mode2
Altitude Hold Source2
Altitude Source Input2
Degraded Mode2
Degraded Timeout2
DR Timeout2
Track Smooth Mode2
Static Navigation3
3SV Least Squares4
Reserved
DOP Mask Mode5
Navigation Elevation Mask6
Navigation Power Mask7
Reserved
DGPS Source8
DGPS Mode9
DGPS Timeout9
Reserved
LP Push-to-Fix10
LP On-time10
LP Interval10
User Tasks Enabled4
User Task Interval4
LP Power Cycling Enabled11
LP Max. Acq. Search Time12
LP Max. Off Time12
APM Enabled/Power Duty
Cycle13,14
Number of Fixes14
Time Between Fixes14
Horizontal/Vertical Error Max15
Response Time Max14
Time/Accu & Time/Duty Cycle
Priority16
Payload length: 65 bytes
1
1
3
1
1
2
1
1
1
1
1
1
4
1
2
1
4
1
1
4
1
4
4
1
4
1
4
4
1
2
Example
13
00
00
00
00
0000
00
00
01
1E
0F
01
00000000
04
004B
1C
00000000
02
00
1E
00000000
00
000003E8
000003E8
00
00000000
00
00000000
00000000
00
2
1
1
1
1
0000
0000
00
00
00
Units
ASCII
(Decimal)
Scale Example
19
m
sec
sec
sec
sec
sec
sec
m
sec
1. 00 = GSW2 definition; 01 = SiRF Binary APM definition; other values reserved.
2. These values are set by message ID 136. See description of values in Table 35.
3. These values are set by message ID 143. See description of values in Table 42.
4. These parameters are set in the software and are not modifiable via the User Interface.
5. These values are set by message ID 137. See description of values in Table 38.
6. These values are set by message ID 139. See description of values in Table 40.
7. These values are set by message ID 140. See description of values in Table 41.
10. These values are set by message ID 151. See description of values in Table 48.
SIM508 GPS Command_V1.01
Page 52 of 66
SIM508 GPS Command Specification
Confidential
11. This setting is derived from the LP on-time and LP interval.
12. These values are set by message ID 167. See description of values in Table 54.
13. Bit 7: APM Enabled, 1=enabled, 0=disabled; Bits 0-4: Power Duty Cycle, range: 1-20 scaled to 5%,
1=5%, 2=10%...
14. Only used in SiRFLoc software.
15. See .
16. Bits 2-3: Time Accuracy, 0x00=no priority imposed, 0x01=RESP_TIME_MAX has higher priority,
0x02=HORI_ERR_MAX has higher priority, Bits 0-1: Time Duty Cycle, 0x00=no priority imposed,
0x01=time between two consecutive fixes has priority, 0x02=power duty cycle has higher priority.
Table 107 Horizontal/Vertical Error
Value
Position Error
0x00
< 1 meter
0x01
< 5 meter
0x02
< 10 meter
0x03
< 20 meter
0x04
< 40 meter
0x05
< 80 meter
0x06
< 160 meter
0x07
No Maximum (disabled)
0x08 - 0xFF
Reserved
2.3.15 Navigation Library Measurement Data - Message ID 28
Output Rate: Every measurement cycle (full power / continuous: 1Hz)
Example:
A0A20038—Start Sequence and Payload Length
1C00000660D015F143F62C4113F42F417B235CF3FBE95E468C6964B8FBC582415
CF1C375301734.....03E801F400000000—Payload
1533B0B3—Message Checksum and End Sequence
Table 108 Measurement Data
Name
Bytes Binary (Hex)
Scale Example
Message ID
1
1C
Channel
1
00
Time Tag
4
000660D0
Satellite ID
1
15
GPS Software Time 8
41740B0B48353F7D
Pseudorange
8
7D3F354A0B0B7441
Carrier Frequency
4
89E98246
Carrier Phase1
8
A4703D4A0B0B7441
Time in Track
2
7530
Sync Flags
1
17
C/No 1
1
34
C/No 2
1
C/No 3
1
C/No 4
1
C/No 5
1
C/No 6
1
SIM508 GPS Command_V1.01
Page 53 of 66
Units
ms
sec
m
M/s
m
ms
dB-Hz
dB-Hz
dB-Hz
dB-Hz
dB-Hz
dB-Hz
ASCII (Decimal)
Scale Example
28
0
135000
20
2.4921113696e+005
2.1016756638e+007
1.6756767578e+004
2.1016756640e+007
10600
23
43
43
43
43
43
43
SIM508 GPS Command Specification
Confidential
C/No 7
1
C/No 8
1
C/No 9
1
C/No 10
1
Delta Range Interval 2
03E801F4
Mean Delta Range
2
01F4
Time
Extrapolation Time 2
0000
Phase Error Count
1
00
Low Power Count
1
00
Payload length: 56 bytes
1. GSW3 software does not report the Carrier Phase.
dB-Hz
dB-Hz
dB-Hz
dB-Hz
ms
ms
43
43
43
43
1000
500
ms
0
0
Note – For GPS Software Time, Pseudorange, Carrier Frequency, and Carrier Phase, the fields are either
floating point (4-byte fields) or double-precision floating point (8-byte fields), per IEEE-754 format.
The byte order may have to be changed to be interpreted properly on some computers. Also, the byte
order differs between GPS software versions 2.2.0 and earlier, and versions 2.3.0 and later.
To convert the data to be properly interpreted on a PC-compatible computer, do the following: For
double-precision (8-byte) values: Assume the bytes are transmitted in the order of B0, B1, ... , B7. For
version 2.2.0 and earlier software, rearrange them to B3, B2, B1, B0, B7, B6, B5. B4 For version 2.3.0
and later software, rearrange them to B7, B6, B5, ... , B0 For single-precision (4-byte) values: Assume
bytes are transmitted in the order of B0, B1, B2 , B3 Rearrange them to B3, B2, B1, B0 (that is, byte
B3 goes into the lowest memory address, B0 into the highest).
With these remappings, the values should be correct. To verify, compare the same field from several
satellites tracked at the same time. The reported exponent should be similar (within 1 power of 10)
among all satellites. The reported Time of measurement, Pseudorange and Carrier Phase are all
uncorrected values.
Message ID 7 contains the clock bias which must be considered. Adjust the GPS Software time by
subtracting clock bias, adjust pseudorange by subtracting clock bias times the speed of light, and
adjust carrier phase by subtracting clock bias times speed of light/GPS L1 frequency. To adjust the
reported carrier frequency do the following: Corrected Carrier Frequency (m/s) = Reported Carrier
Frequency (m/s) - Clock Drift (Hz) / 1575420000 Hz For a nominal clock drift value of 96.25 kHz
(equal to a GPS Clock frequency of 24.5535 MHz), the correction value is 18315.766 m/s.
Table 109 Sync Flag Fields
Bit Fields
[0]
[2:1]
[4:3]
SIM508 GPS Command_V1.01
Description
Coherent Integration Time
0 = 2ms
1 = 10ms
Synch State
00 = Not aligned
01 = Consistent code epoch alignment
10 = Consistent data bit alignment
11 = No millisecond errors
Autocorrelation Detection State
00 = Verified not an autocorrelation
01 = Testing in progress
10 = Strong signal, autocorrelation detection not run
11 = Not used
Page 54 of 66
SIM508 GPS Command Specification
Confidential
Table 110 Detailed Description of the Measurement Data
Name
Description
Message ID
Message ID number.
Channel
Receiver channel number for a given satellite being searched or
tracked. Range of 0-11 for channels 1-12, respectively.
This is the Time Tag in milliseconds of the measurement block in
the receiver software time. Time tag is an internal millisecond
Time Tag
counter which has no direct relationship to GPS time, but is started
as the receiver is turned on or reset.
Satellite ID
Pseudo-random Noise (PRN) number.
This is GPS Time of Week (TOW) estimated by the software in
GPS Software Time
milliseconds.
This is the generated pseudorange measurement for a particular SV.
Pseudorange
When carrier phase is locked, this data is smoothed by carrier
phase.
This is can be interpreted in two ways:
1) The delta pseudorange normalized by the reciprocal of the delta
pseudorange measurement interval.
Carrier Frequency
2) The frequency from the AFC loop. If, for example, the delta
pseudorange interval computation for a particular channel is zero,
then it can be the AFC measurement, otherwise it is a delta
pseudorange computation.1
The integrated carrier phase (meters), which initially is made equal
to pseudorange, is integrated as long as carrier lock is retained.
Carrier Phase
Discontinuity in this value generally means a cycle slip and
renormalizatoin to pseudorange.
The Time in Track counts how long a particular SV has been in
track.
Time in Track
For any count greater than zero (0), a generated pseudo range is
present for a particular channel. The length of time in track is a
measure of how large the pull-in error may be.
This byte contains two 2-bit fields and 1-bit field that describe the
Sync Flags
Autocorrelation Detection State, Synch State and Coherent
Integration Time. Refer to Table 110 for more details.
This array of Carrier To Noise Ratios is the average signal power in
dB-Hz for each of the 100-millisecond intervals in the previous
second or last epoch for each particular SV being track in a
channel.
C/No 1
First 100 millisecond measurement
C/No 2
Second 100 millisecond measurement
C/No 3
Third 100 millisecond measurement
C/No 4
Fourth 100 millisecond measurement
C/No 5
Fifth 100 millisecond measurement
C/No 6
Sixth 100 millisecond measurement
C/No 7
Seventh 100 millisecond measurement
C/No 8
Eighth 100 millisecond measurement
C/No 9
Ninth 100 millisecond measurement
C/No 10
Tenth 100 millisecond measurement
This is the delta-pseudo range measurement interval for the
preceding second. A value of zero indicated that the receiver has an
Delta Range Interval
AFC measurement or no measurement in the Carrier Frequency
field for a particular channel.
SIM508 GPS Command_V1.01
Page 55 of 66
SIM508 GPS Command Specification
Confidential
This is the mean calculated time of the delta-pseudo range interval
in
milliseconds measured from the end of the interval backwards
This is the pseudo range extrapolation time in milliseconds, to
Extrapolation Time
reach the common Time tag value.
This is the count of the phase errors greater than 60 Degrees
Phase Error Count
measured in the preceding second as defined for a particular
channel.
This is the low power measurements for signals less than 28 dB-Hz
Low Power Count
in the preceding second as defined for a particular channel
1. Carrier frequency may be interpreted as the measured Doppler on the received signal. The value is
reported in metres per second but can be converted to hertz using the Doppler equation: Doppler
frequency / Carrier frequency = Velocity / Speed of light, where Doppler frequency is in Hz; Carrier
frequency = 1,575,420,000 Hz; Velocity is in m/s; Speed of light = 299,792,458 m/s. Note that the
computed Doppler frequency will contain a bias equal to the current clock drift as reported in message
ID 7. This bias, nominally 96.250 kHz, is equivalent to over 18 km/s.
Mean
Time
Delta
Range
2.3.16 Navigation Library SV State Data - Message ID 30
The data in Message ID 30 reports the computed satellite position and velocity at the specified GPS
time.
Output Rate: Every measurement cycle (full power / continuous: 1Hz)
Example:
A0A20053—Start Sequence and Payload Length
1E15....2C64E99D01....408906C8—Payload
2360B0B3—Message Checksum and End Sequence
Table 111 SV State Data
Name
Bytes
Binary (Hex)
Scale
Example
1E
15
Units
ASCII (Decimal)
Scale
Example
30
21
Message ID
1
Satellite ID
1
GPS Time
8
sec
Position X
8
m
Position Y
8
m
Position Z
8
m
Velocity X
8
m/sec
Velocity Y
8
m/sec
Velocity Z
8
m/sec
Clock Bias
8
sec
Clock Drift
4
2C64E99D
s/s
744810909
1
Ephemeris Flag
1
01
1
Reserved
4
Reserved
4
Ionospheric Delay
4
408906C8
m
1082721992
Payload length: 83 bytes
1. 0 = no valid SV state, 1 = SV state calculated from ephemeris, 2 = Satellite state calculated from
almanac
SIM508 GPS Command_V1.01
Page 56 of 66
SIM508 GPS Command Specification
Confidential
Note – Each of the 8 byte fields as well as Clock Drift and Ionospheric Delay fields are floating point
values per IEEE-754. To properly interpret these in a PC, the bytes need to be rearranged. See Note in
MID 28 for byte orders.
2.3.17 Navigation Library Initialization Data - Message ID 31
Output Rate: Every measurement cycle (full power / continuous: 1Hz)
Example:
A0A20054—Start Sequence and Payload Length
1F....00000000000001001E000F....00....000000000F....00....02....043402....
....02—Payload
0E27B0B3—Message Checksum and End Sequence
Table 112 Measurement Data
Name
Bytes
Message ID
Reserved
Altitude Mode1
Altitude Source
Altitude
Degraded Mode2
Degraded Timeout
1
1
1
1
4
1
2
Dead-reckoning
Timeout
Reserved
Track Smoothing
Mode3
Reserved
Reserved
Reserved
Reserved
DGPS Selection4
DGPS Timeout
Elevation Nav. Mask
Reserved
Reserved
Reserved
Reserved
Reserved
Static Nav. Mode5
Reserved
Position X
Position Y
Position Z
Position Init. Source6
GPS Time
GPS Week
Binary (Hex)
Scale
Example
1F
Units
ASCII (Decimal)
Scale
Example
31
00
00
00000000
01
001E
0
0
0
1
30
2
000F
15
2
1
00
0
1
2
2
2
1
2
2
2
1
2
1
2
1
2
8
8
8
1
8
2
SIM508 GPS Command_V1.01
2
00
0000
000F
sec
deg
00
0
0
15
0
m
m
m
02
2
sec
0434
Page 57 of 66
1076
SIM508 GPS Command Specification
Confidential
Time Init. Source7
1
02
sec
2
Drift
8
Hz
Drift Init. Source8
1
02
sec
2
Payload length: 84 bytes
1. 0 = Use last know altitude 1 = Use user input altitude 2 = Use dynamic input from external source
2. 0 = Use direction hold and then time hold 1 = Use time hold and then direction hold 2 = Only use
direction hold 3 = Only use time hold 4 = Degraded mode is disabled
3. 0 = True, 1 = False
4. 0 = Use DGPS if available 1 = Only navigate if DGPS corrections are available 2 = Never use DGPS
corrections
5. 0 = True, 1 = False
6. 0 = ROM position 1 = User position 2 = SRAM position 3 = Network assisted position
7. 0 = ROM time 1 = User time 2 = SRAM time 3 = RTC time 4 = Network assisted time
8. 0 = ROM clock 1 = User clock 2 = SRAM clock 3 = Calibration clock 4 = Network assisted clock
Note – Altitude is a single-precision floating point value while position XYZ, GPS time, and drift are
double-precision floating point values per IEEE-754. To properly interpret these values in a PC, the
bytes need to be rearranged. See Note in MID 28 for byte orders.
2.3.18 Geodetic Navigation Data - Message ID 41
Output Rate:Every measurement cycle (full power / continuous: 1Hz)
Example:
A0 A2 00 5B—Start Sequence and Payload Length
29 00 00 02 04 04 E8 1D 97 A7 62 07 D4 02 06 11 36 61 DA 1A 80 01 58 16 47 03
DF B7 55 48 8F FF FF FA C8 00 00 04 C6 15 00 00 00 00 00 00 00 00 00 00 00 00
00 BB 00 00 01 38 00 00 00 00 00 00 6B 0A F8 61 00 00 00 00 00 1C 13 14 00 00
00 00 00 00 00 00 00 00 00 00 08 05 00—Payload
11 03 B0 B3—Message Checksum and End Sequence
Table 113 Geodetic Navigation Data
Name
Bytes
Message ID
1
2
Nav Valid
2
NAV Type
SIM508 GPS Command_V1.01
Description
Hex 0x29 (decimal 41)
0x0000 = valid navigation (any bit set implies
navigation solution is not optimal);
Bit 0 ON: solution not yet overdetermined1 (< 5
SVs),
OFF: solution overdetermined1 (>= 5 SV)
Bits 1 - 2 : Reserved
Bits 8 - 14 : Reserved
(The following are for SiRFDRive only)
Bit 3 ON : invalid DR sensor data
Bit 4 ON : invalid DR calibration
Bit 5 ON : unavailable DR GPS-based calibration
Bit 6 ON : invalid DR position fix
Bit 7 ON : invalid heading
(The following is for SiRFNav only)
Bit 15 ON : no tracker data available
Bits 2 - 0 : GPS position fix type
000 = no navigation fix
001 = 1-SV KF solution
010 = 2-SV KF solution
Page 58 of 66
SIM508 GPS Command Specification
Confidential
Extended Week Number
TOW
UTC Year
UTC Month
UTC Day
UTC Hour
UTC Minute
UTC Second
2
4
2
1
1
1
1
2
4
4
4
4
4
1
2
2
Bit map of SVs used in solution. Bit 0 = SV 1, Bit
31 = SV 32. A bit set ON means the corresponding
SV was used in the solution.
In degrees (+ = North) x 107.
In degrees (+ = East) x 107.
In meters x 102.
In meters x 102.
See footnote.
In m/s x 102.
In degrees clockwise from true north x 102.
2
2
2
Not implemented.
In m/s x 102.
deg/s x 102 (SiRFDRive only).
Satellite ID List
Latitude
Longitude
Altitude from Ellipsoid
Altitude from MSL
Map Datum3
Speed Over Ground (SOG)
Course Over Ground (COG,
True)
Magnetic Variation
Climb Rate
Heading Rate
SIM508 GPS Command_V1.01
011 = 3-SV KF solution
100 = 4 or more SV KF solution
101 = 2-D least-squares solution
110 = 3-D least-squares solution
111 = DR solution (see bits 8, 14-15)
Bit 3 : TricklePower in use
Bits 5 - 4 : altitude hold status
00 = no altitude hold applied
01 = holding of altitude from KF
10 = holding of altitude from user input
11 = always hold altitude (from user input)
Bit 6 ON : DOP limits exceeded
Bit 7 ON : DGPS corrections applied
Bit 8 : Sensor DR solution type (SiRFDRive only)
1 = sensor DR
0 = velocity DR2 if Bits 0 - 2 = 111;
else check Bits 14-15 for DR error status
Bit 9 ON : navigation solution overdetermined1
Bit 10 ON : velocity DR2 timeout exceeded
Bit 11 ON : fix has been edited by MI functions
Bit 12 ON : invalid velocity
Bit 13 ON : altitude hold disabled
Bits 15 - 14 : sensor DR error status (SiRFDRive
only)
00 = GPS-only navigation
01 = DR calibration from GPS
10 = DR sensor error
11 = DR in test
GPS week number; week 0 started January 6 1980.
This value is extended beyond the 10-bit value
reported by the SVs.
GPS time of week in seconds x 103.
UTC time and date. Seconds reported as integer
milliseconds only.
Page 59 of 66
SIM508 GPS Command Specification
Confidential
Estimated
Horizontal
Position Error
Estimated Vertical Position
Error
Estimated Time Error
Estimated
Horizontal
Velocity Error
Clock Bias
Clock Bias Error
Clock Drift
Clock Drift Error
Distance
Distance error
Heading Error
Number of SVs in Fix
HDOP
4
4
4
2
4
4
4
4
4
2
2
1
1
1
AdditionalModeInfo
EHPE in meters x 102.
EVPE in meters x 102 (SiRFDRive only).
ETE in seconds x 102 (SiRFDRive only).
EHVE in m/s x 102 (SiRFDRive only).
In m x 102.
In meters x 102 (SiRFDRive only).
In m/s x 102.
In m/s x 102 (SiRFDRive only).
Distance traveled since reset in meters (SiRFDRive
only).
In meters (SiRFDRive only).
In degrees x 102 (SiRFDRive only).
Count of SVs indicated by SV ID list.
Horizontal Dilution of Precision x 5 (0.2
resolution).
Additional mode information:
Bit 0: map matching mode for Map Matching only
0 = map matching feedback input is disabled
1 = map matching feedback input is enabled
Bit 1: map matching feedback received for Map
Matching only
0 = map matching feedback was not received
1 = map matching feedback was received
Bit 2: map matching in use for Map Matching only
0 = map matching feedback was not used to
calculate position
1 = map matching feedback was used to calculate
position
Bit 3-6: reserved
Bit 7: DR direction for SiRFDRive only
0 = forward
1 = reserve
Payload length: 91 bytes
1. An overdetermined solution (see bit 0 from Nav Valid and bit 9 of Nav Type) is one where at least one
additional satellite has been used to confirm the 4-satellite position solution. Once a solution has been
overdetermined, it remains so even if several satellites are lost, until the system drops to no-navigation
status (Nav Type bits 0-2 = 000).
2. Velocity Dead Reckoning (DR) is a method by which the last solution computed from satellite
measurements is updated using the last computed velocity and time elapsed to project the position
forward in time. It assumes heading and speed are unchanged, and is thus reliable for only a limited time.
Sensor DR is a position update method based on external sensors (e.g., rate gyroscope, vehicle speed
pulses, accelerometers) to supplement the GPS measurements. Sensor DR is only applicable to SiRF’s
SiRFDRive products.
3. Map Datum indicates the datum to which latitude, longitude, and altitude relate. 21 = WGS-84, by
default. Other values will be defined as other datums are implemented. Available datums include: 21 =
WGS-84, 178 = Tokyo Mean, 179 = Tokyo Japan, 180 = Tokyo Korea, 181 = Tokyo Okinawa.
Note – Values are transmitted as integer values. When scaling is indicated in the Description, the
decimal value has been multiplied by the indicated amount and then converted to an integer. Example:
Value transmitted: 2345; indicated scaling: 102; actual value: 23.45.
SIM508 GPS Command_V1.01
Page 60 of 66
SIM508 GPS Command Specification
Confidential
2.3.18 Queue Command Parameters - Message ID 43
Output Rate: Response to poll
This message outputs Packet/Send command parameters under SiRF Binary Protocol.
Example with MID_SET_STAT_NAV message:
A0A20003—Start Sequence and Payload Length
438F00—Payload
00D2B0B3—Message Checksum and End Sequence
Table 114 Queue Command Parameters
Name
Bytes
Scale
MID
1
Polled Msg ID
1
Data
Variable
Units
Description
=0x2B
=0x8F (example)
Depends on the polled message ID
length
Payload length: Variable length bytes (3 bytes in the example))
2.3.19 Test Mode 3/4 - Message ID 46
Message ID 46 is used by GSW2, SiRFDRive, SiRFLoc v3.x, and GSW3 software.
Output Rate: Variable - set by the period as defined in message ID 150.
Example:
A0A20033--Start Sequence and Payload Length
2E0001001E00023F70001F0D2900000000000601C600051B0E000EB41A000000000
00000000000000000000000000000000000--Payload
0316B0B3--Message Checksum and End Sequence
SIM508 GPS Command_V1.01
Page 61 of 66
SIM508 GPS Command Specification
Confidential
Table 115 Test Mode 3/4 Message ID 46
Name
Bytes Binary (Hex)
Scale
Example
Message ID
1
2E
SV ID
2
0001
Period
2
001E
Bit Sync Time1
2
0002
Bit Count1
2
3F70
Poor Status1
2
001F
Good Status1
2
0D29
Parity Error Count1
2
0000
1
Lost VCO Count
2
0000
Frame Sync Time1
2
0006
C/No Mean
2
*10
01C6
C/No Sigma
2
*10
0005
Clock Drift
2
*10
1B0E
Clock Offset
4
*10
000EB41A
Bad 1Khz Bit Count1
2
0000
Abs I20ms2
4
000202D5
Abs Q1ms2
4
000049E1
Phase Lock Indicator
4
00000000
Reserved
4
00000000
Reserved
4
00000000
Payload length: 51 bytes
Units
sec
sec
sec
dB/Hz
dB/Hz
Hz
Hz
Counts
Counts
ASCII (Decimal)
Scale
Example
46
1
30
2
16420
31
3369
0
0
6
÷10
45.4
÷10
0.5
÷10
692.6
÷10
96361.0
0
131797
18913
0
1. Field not filled for GSW3 software in Test Mode 3/4.
2. Phase error = (Q20ms)/(I20ms).
Table 116 Detailed Description of Test Mode 3/4 Message ID 46
Name
Description
Message ID
Message ID number.
SV ID
The number of the satellite being tracked.
The total duration of time (in seconds) that the satellite is tracked.
Period
This field is not filled for GSW3 software in Test Mode 3/4.
The time it takes for channel 0 to achieve the status of 0x37. This field
Bit Sync Time
is not filled for GSW3 software in Test Mode 3/4.
The total number of data bits that the receiver is able to demodulate
during the test period. As an example, for a 20 second test period, the
Bit Count
total number of bits that can be demodulated by the receiver is 12000
(50BPS x 20sec x 12 channels). This field is not filled for GSW3
software in Test Mode 3/4.
This value is derived from phase accumulation time. Phase
accumulation is the amount of time a receiver maintains phase lock.
Every 100msec of loss of phase lock equates to 1 poor status count.
Poor Status
As an example, the total number of status counts for a 60 second
period is 7200 (12 channels x 60 sec x 10 100-ms intervals). This field
is not filled for GSW3 software in Test Mode 3/4.
This value is derived from phase accumulation time. Phase
accumulation is the amount of time a receiver maintains phase lock.
Good Status
Every 100msec of phase lock equates to 1 good status count. This
field is not filled for GSW3 software in Test Mode 3/4.
SIM508 GPS Command_V1.01
Page 62 of 66
SIM508 GPS Command Specification
Confidential
Parity Error Count
Lost VCO Count
Frame Sync
C/No Mean
C/No Sigma
Clock Drift
Clock Offset
Bad 1Khz Bit Count
Abs I20ms
Abs Q1ms
Phase
Indicator
Lock
The number of word parity errors. This occurs when the transmitted
parity word does not match the receivers parity check. This field is
not filled for GSW3 software in Test Mode 3/4.
The number of 1 msec VCO lost lock was detected. This occurs when
the PLL in the RFIC loses lock. A significant jump in crystal
frequency and / or phase will cause a VCO lost lock. This field is not
filled for GSW3 software in Test Mode 3/4.
The time it takes for channel 0 to reach a 0x3F status. This field is not
filled for GSW3 software in Test Mode 3/4.
Calculated average of reported C/No by all 12 channels during the test
period.
Calculated sigma of reported C/No by all 12 channels during the test
period.
Difference in clock drift from start and end of the test period.
The measured internal clock drift.
Errors in 1ms post correlation I count values. This field is not filled
for GSW3 software in Test Mode 3/4.
Absolute value of the 20ms coherent sums of the I count over the
duration of the test period.
Absolute value of the 1ms Q count over the duration of the test period.
Quality of the phase lock loop.
2.3.20 Test Mode 4 Track Data - Message ID 55
Message ID 55 is used by GSW3 and SiRFLoc (v3.0 and above) software.
Table 117 Test Mode 4 Message ID 55
Name
Bytes
Binary (Hex)
Units
ASCII (Decimal)
Scale
Example
Scale
Example
Message ID
1
37
55
SV ID
2
0001
1
Acqclk Lsq
4
12345678
12345678
Code Phase
4
2-11
0000
Chips
0
Carrier Phase
4
2-32
0000
Cycles
0
4
0.000476
0000
Hz
0.00047 0
6
Carrier Frequency
Carrier Acceleration 2
0.476
0000
Hz/sec 0.476
0
Code Corrections
4
0000
0
Code Offset
4
2-11
0000
Chips
2-11
0
1
MSec Number
2
ms
0006
ms
0.001
0.006
1
Bit Number
4
20 ms
01C6
20 ms
0.02
9.08
Reserved
4
0000
Reserved
4
0000
Reserved
4
0000
Reserved
4
0000
Payload length: 51 bytes
1. SiRFLocDemo combines MSec Number and Bit Number for this message output which gives the
GPS time stamp.
SIM508 GPS Command_V1.01
Page 63 of 66
SIM508 GPS Command Specification
Confidential
2.3.21 Reserved - Message ID 225
This output message is SiRF proprietary except for sub ID 6.
2.3.22 Statistic Channel - Message ID 225 (Sub ID 6)
The message is only used by GSW3 and SiRFLoc v3.x software and outputs the TTFF, aiding accuracy
information and navigation status.
Output Rate: Once on every reset
Note – Message ID 225 (sub ID 6) may not be output when the system is not able to compute a
navigation solution. This message is not supported by APM.
Example:
A0A20027—Start Sequence and Payload Length
E161—Message ID and Sub ID
01000000000000000000000000000000000000000000000000000000000010100000
00—Payload
0011B0B3—Message Checksum and End Sequence
Table 118 Statistic Channel Parameters Message
Name
Sub Field
Bytes Binary (Hex)
Scale Example
Message ID
1
E1
Message Sub ID
1
06
TTFF
since reset
2
Position
Aiding
Error
Time Aiding
Error1
Frequency
Aiding
Error1
Position
Uncertainty
Time
Uncertainty1
Frequency
Uncertainty1
Number of
Aided
Ephemeris1
Number of
Aided
since all
aiding
received1
first nav
since reset1
North1
East1
Down1
Horizontal1
Vertical1
SIM508 GPS Command_V1.01
Units
second
ASCII (Decimal)
Scale Example
225
6
0.1
range from
0 to 65535
2
0
2
0
4
4
4
4
0
0
0
0
2
0
1
2
1
0
0
0
1
0
1
0
1
0
Page 64 of 66
SIM508 GPS Command Specification
Confidential
Acquisition
Assistance1
Navigation
and
Position
Status
Navigation
Mode
Position
Mode
Status
Start Mode
1
see Table
119
see Table
120
see Table
121 and
Table 122
see Table
123
1
2
1
Reserved1
1
Payload length: 39 bytes
1. Field not available for GSW3.
Table 119 Description of the Navigation Mode Parameters
Bit Fields
Description
0
No Nav
1
Approximate from SV records.
2
Time transfer.
3
Stationary mode
4
LSQ fix
5
KF nav
6
SiRFDRive
7
DGPS base
Table 120 Description of the Position Mode Parameters
Bit Fields
Description
0
Least Square (LSQ) mode 0 - no bit sync, approximate GPS time
1
LSQ mode 1 - no bit sync, accurate GPS time
2
LSQ mode 2 - bit sync, no frame sync, approximate GPS time
3
LSQ mode 3 - bit sync, no frame sync, accurate GPS time
4
LSQ mode 4 - bit and frame sync, user time (without aiding)
5
KF mode - Kalman Filtering
6
No position
7
Not used
Table 121 Description of the Status for Navigation LSQ fix Mode
Value
Status
0x00
Good solution
0x01
Uncertainty exceeded maximum (UNCER_EXCEED)
0x02
Input information to navigation had error (INPUT_ERR)
0x04
Not sufficient information to have a fix position (UNDER_DETERM)
0x08
Matrix inversion failed (MATR_INVT)
0x010
LSQ iteration exceeds predefined maximum (ITER_OUT)
0x020
Altitude check failed (ALT_OUT)
0x040
GPS time check failed (TIME_OFF)
0x080
Failure found in measurements (FDI_FAIL)
0x100
DOP exceeded threshold (DOP_FAIL)
0x200
Velocity check failed (VEL_FAIL)
SIM508 GPS Command_V1.01
Page 65 of 66
SIM508 GPS Command Specification
Confidential
Table 122 Description of the Status for Navigation KF Mode
Value
Status
0
Solution is good
1
No solution
2
Altitude is out of range
3
Velocity is out of range
Table 123 Description of the Start Mode
Value
Description
0x00
Cold
0x01
Warm
0x02
Hot
0x03
Fast
2.3.23 Development Data - Message ID 255
Output Rate: Receiver generated.
Example:
A0A2....—Start Sequence and Payload Length
FF....—Payload
....B0B3—Message Checksum and End Sequence
Table 124 Development Data
Name
Bytes
Binary (Hex)
Scale
Example
FF
Units
Message ID
1
1
Data
variable
Payload Length: 2 bytes
1. Data area consists of at least 1 byte of ASCII text information.
ASCII (Decimal)
Scale
Example
255
Note – MID 255 is output when SiRF Binary is selected and development data is enabled. The data
output using MID 255 is essential for SiRF-assisted troubleshooting support.
SIM508 GPS Command_V1.01
Page 66 of 66
Open as PDF
Similar pages