SiRFstarIIeLP Evaluation Kit User's Guide

Add to my manuals
99 Pages

advertisement

SiRFstarIIeLP Evaluation Kit User's Guide | Manualzz

SiRF Binary Protocol

Reference Manual

SiRF Technology, Inc.

148 East Brokaw Road

San Jose, CA 95112 U.S.A.

Phone: +1 (408) 467-0410

Fax: +1 (408) 467-0420 www.SiRF.com

1050-0041

September 2004, Revision 1.3

SiRF, SiRFstar, SiRF plus orbit design are registered in the U.S. Patent and Trademark Office. This document contains information on a product under development at SiRF. The information is intended to help you evaluate this product. SiRF reserves the right to change or discontinue work on this product without notice.

SiRF Binary Protocol

Reference Manual

Copyright © 1996-2004 SiRF Technology, Inc. All rights reserved.

No part of this work may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying and recording, or by any information storage or retrieval system without the prior written permission of SiRF Technology, Inc. unless such copying is expressly permitted by United States copyright law. Address inquiries to Legal Department, SiRF Technology,

Inc., 148 East Brokaw Road, San Jose, California 95112, United States of America.

About This Document

This document contains information on SiRF products. SiRF Technology, Inc. reserves the right to make changes in its products, specifications and other information at any time without notice. SiRF assumes no liability or responsibility for any claims or damages arising out of the use of this document, or from the use of integrated circuits based on this document, including, but not limited to claims or damages based on infringement of patents, copyrights or other intellectual property rights. SiRF makes no warranties, either express or implied with respect to the information and specifications contained in this document. Performance characteristics listed in this data sheet do not constitute a warranty or guarantee of product performance. All terms and conditions of sale are governed by the SiRF Terms and Conditions of Sale, a copy of which you may obtain from your authorized SiRF sales representative.

Getting Help

If you have any problems, contact your SiRF representative or call or send an e-mail to the SiRF

Technology support group: phone e-mail

+1 (408) 467-0410 [email protected]

iii

Contents

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

xxi

1. Protocol Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1-1

Transport Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1-1

Transport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1-1

Message Validation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1-1

Payload Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1-2

Payload Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1-2

Checksum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1-2

2. Input Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2-1

Advanced Power Management - Message ID 53 . . . . . . . . . . . . . . . . .

2-3

Initialize Data Source - Message ID 128 . . . . . . . . . . . . . . . . . . . . . . .

2-5

Switch To NMEA Protocol - Message ID 129. . . . . . . . . . . . . . . . . . .

2-6

Set Almanac - Message ID 130 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2-7

Handle Formatted Dump Data - Message ID 131 . . . . . . . . . . . . . . . .

2-8

Poll Software Version - Message ID 132. . . . . . . . . . . . . . . . . . . . . . .

2-9

v

vi

DGPS Source - Message ID 133 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2-9

Set Main Serial Port - Message ID 134 . . . . . . . . . . . . . . . . . . . . . . . . 2-11

Switch Protocol - Message ID 135 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12

Mode Control - Message ID 136 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12

DOP Mask Control - Message ID 137 . . . . . . . . . . . . . . . . . . . . . . . . . 2-13

DGPS Control - Message ID 138. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14

Elevation Mask - Message ID 139 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14

Power Mask - Message ID 140 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15

Editing Residual - Message ID 141 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15

Steady State Detection - Message ID 142 . . . . . . . . . . . . . . . . . . . . . . 2-15

Static Navigation - Message ID 143 . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16

Poll Clock Status - Message ID 144 . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16

Set DGPS Serial Port - Message ID 145 . . . . . . . . . . . . . . . . . . . . . . . 2-17

Poll Almanac - Message ID 146 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17

Poll Ephemeris - Message ID 147 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-18

Flash Update - Message ID 148 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-18

Set Ephemeris - Message ID 149 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19

Switch Operating Modes - Message ID 150 . . . . . . . . . . . . . . . . . . . . 2-19

Set TricklePower Parameters - Message ID 151 . . . . . . . . . . . . . . . . . 2-20

Poll Navigation Parameters - Message ID 152 . . . . . . . . . . . . . . . . . . 2-21

Set UART Configuration - Message ID 165 . . . . . . . . . . . . . . . . . . . . 2-22

Set Message Rate - Message ID 166 . . . . . . . . . . . . . . . . . . . . . . . . . . 2-23

Set Low Power Acquisition Parameters - Message ID 167 . . . . . . . . . 2-24

Poll Command Parameters - Message ID 168 . . . . . . . . . . . . . . . . . . . 2-24

Set SBAS Parameters - Message ID 170 . . . . . . . . . . . . . . . . . . . . . . . 2-25

Initialise GPS/DR Navigation - Message ID 172 (Sub ID 1) . . . . . . . . 2-26

Set GPS/DR Navigation Mode - Message ID 172 (Sub ID 2) . . . . . . . 2-26

Set DR Gyro Factory Calibration - Message ID 172 (Sub ID 3) . . . . . 2-27

Set DR Sensors’ Parameters - Message ID 172 (Sub ID 4) . . . . . . . . . 2-27

Poll DR Gyro Factory Calibration - Message ID 172 (Sub ID 6) . . . . 2-27

Poll DR Sensors’ Parameters - Message ID 172 (Sub ID 7) . . . . . . . . 2-27

SiRF Binary Protocol Reference ManualSeptember 2004

Contents

Reserved - Message ID 228 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-28

3. Output Messages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3-1

Reference Navigation Data - Message ID 1 . . . . . . . . . . . . . . . . . . . . .

3-3

Measure Navigation Data Out - Message ID 2 . . . . . . . . . . . . . . . . . .

3-3

True Tracker Data - Message ID 3. . . . . . . . . . . . . . . . . . . . . . . . . . . .

3-6

Measured Tracker Data Out - Message ID 4 . . . . . . . . . . . . . . . . . . . .

3-6

Raw Tracker Data Out - Message ID 5 . . . . . . . . . . . . . . . . . . . . . . . .

3-7

Software Version String (Response to Poll) - Message ID 6 . . . . . . . .

3-8

Response: Clock Status Data - Message ID 7 . . . . . . . . . . . . . . . . . . .

3-8

50 BPS Data - Message ID 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3-9

CPU Throughput - Message ID 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10

Error ID Data - Message ID 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10

Command Acknowledgment - Message ID 11. . . . . . . . . . . . . . . . . . . 3-21

Command NAcknowledgment - Message ID 12 . . . . . . . . . . . . . . . . . 3-21

Visible List – Message ID 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21

Almanac Data - Message ID 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-22

Ephemeris Data (Response to Poll) – Message ID 15 . . . . . . . . . . . . . 3-23

Test Mode 1 - Message ID 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-24

Differential Corrections - Message ID 17 . . . . . . . . . . . . . . . . . . . . . . 3-25

OkToSend - Message ID 18. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25

Navigation Parameters (Response to Poll) - Message ID 19 . . . . . . . . 3-26

Test Mode 2/3/4 - Message ID 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28

Test Mode 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28

Test Mode 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-29

Test Mode 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-31

Navigation Library Measurement Data - Message ID 28. . . . . . . . . . . 3-32

Navigation Library DGPS Data - Message ID 29 . . . . . . . . . . . . . . . . 3-35

Navigation Library SV State Data - Message ID 30 . . . . . . . . . . . . . . 3-35

Navigation Library Initialization Data - Message ID 31 . . . . . . . . . . . 3-36

Geodetic Navigation Data - Message ID 41. . . . . . . . . . . . . . . . . . . . . 3-38

Queue Command Parameters - Message ID 43 . . . . . . . . . . . . . . . . . . 3-40

vii

DR Raw Data - Message ID 45 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-41

Test Mode 3/4 - Message ID 46. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-41

DR Navigation Status - Message ID 48 (Sub ID 1) . . . . . . . . . . . . . . . 3-43

DR Navigation State - Message ID 48 (Sub ID 2) . . . . . . . . . . . . . . . . 3-46

Navigation Subsystem - Message ID 48 (Sub ID 3) . . . . . . . . . . . . . . 3-46

DR Gyro Factory Calibration - Message ID 48 (Sub ID 6) . . . . . . . . . 3-47

DR Sensors’ Parameters - Message ID 48 (Sub ID 7) . . . . . . . . . . . . . 3-47

DR Data Block - Message ID 48 (Sub ID 8) . . . . . . . . . . . . . . . . . . . . 3-48

SBAS Parameters - Message ID 50 . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-48

PPS Time - Message ID 52 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-49

Reserved - Message ID 225 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-50

Development Data - Message ID 255 . . . . . . . . . . . . . . . . . . . . . . . . . 3-50

4. Additional Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-1

TricklePower Operation in DGPS Mode . . . . . . . . . . . . . . . . . . . . . . .

4-1

GPS Week Reporting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-1

viii SiRF Binary Protocol Reference ManualSeptember 2004

Tables

Table 2-10

Table 2-9

Table 2-11

Table 2-12

Table 2-13

Table 2-14

Table 2-15

Table 2-16

Table 2-1

Table 2-3

Table 2-2

Table 2-4

Table 2-5

Table 2-6

Table 2-7

Table 2-8

SiRF Messages - Input Message List . . . . . . . . . . . . . . . . . . . . . . . . 2-1

Supported Input Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2

Sub IDs for SiRFDRive input MID 172 (0xAC) . . . . . . . . . . . . . . . 2-2

Advanced Power Management Parameters . . . . . . . . . . . . . . . . . . . 2-4

Horizontal/Vertical Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4

Initialize data source. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5

Reset Configuration Bit Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5

Switch To NMEA Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6

Set Almanac Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7

Mode Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7

Set Send Command String Parameters. . . . . . . . . . . . . . . . . . . . . . . 2-8

Member Sizes Data Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9

Software Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9

DGPS Source Selection (Example 1) . . . . . . . . . . . . . . . . . . . . . . . . 2-10

DGPS Source Selection (Example 2) . . . . . . . . . . . . . . . . . . . . . . . . 2-11

DGPS Source Selections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-11

xv

xvi

Table 2-42

Table 2-41

Table 2-43

Table 2-44

Table 3-1

Table 3-3

Table 3-2

Table 3-4

Table 2-33

Table 2-34

Table 2-35

Table 2-36

Table 2-37

Table 2-38

Table 2-40

Table 2-39

Table 2-25

Table 2-27

Table 2-26

Table 2-28

Table 2-29

Table 2-30

Table 2-31

Table 2-32

Table 2-17

Table 2-19

Table 2-18

Table 2-22

Table 2-23

Table 2-20

Table 2-21

Table 2-24

Internal Beacon Search Settings. . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-11

Mode Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12

Set Main Serial Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12

DOP Mask Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13

DOP Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13

Degraded Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13

Altitude Hold Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13

DGPS Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14

DGPS Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-14

Power Mask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15

Elevation Mask. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-15

Static Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16

Clock Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-16

Set DGPS Serial Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17

Almanac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-17

Ephemeris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-18

Flash Update. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-18

Ephemeris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19

Switch Operating Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-19

Set Trickle Power Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-20

Example of Selections for TricklePower Mode of Operation . . . . . 2-20

Duty Cycles for Supported TricklePower Settings . . . . . . . . . . . . . 2-21

Set UART Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-22

Poll Receiver for Navigation Parameters . . . . . . . . . . . . . . . . . . . . . 2-22

Set Low Power Acquisition Parameters . . . . . . . . . . . . . . . . . . . . . . 2-24

Set Message Rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-24

Poll Command Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-25

Set SBAS Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-25

SiRF Binary Messages - Output Message List. . . . . . . . . . . . . . . . . 3-1

Supported output messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2

Sub IDs for SiRFDRive output MID 48 (0x30) . . . . . . . . . . . . . . . . 3-2

Measured Navigation Data Out - Message Data Format . . . . . . . . . 3-3

SiRF Binary Protocol Reference ManualSeptember 2004

Tables

Table 3-29

Table 3-31

Table 3-30

Table 3-32

Table 3-33

Table 3-34

Table 3-35

Table 3-36

Table 3-22

Table 3-23

Table 3-21

Table 3-26

Table 3-27

Table 3-24

Table 3-25

Table 3-28

Table 3-13

Table 3-16

Table 3-17

Table 3-14

Table 3-15

Table 3-18

Table 3-19

Table 3-20

Table 3-5

Table 3-6

Table 3-7

Table 3-8

Table 3-9

Table 3-11

Table 3-10

Table 3-12

Mode 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4

Mode 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6

Measured Tracker Data Out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7

State Values for Each Channel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7

Software Version String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8

50 BPS Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9

Clock Status Data Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9

CPU Throughput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10

Message ID 10 Overall Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10

Error ID 9 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11

Error ID 9 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11

Error ID 2 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11

Error ID 2 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11

Error ID 10 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12

Error ID 10 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12

Error ID 11 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12

Error ID 12 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13

Error ID 12 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13

Error ID 11 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13

Error ID 4097 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14

Error ID 4097 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . 3-14

Error ID 13 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14

Error ID 13 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14

Error ID 4099 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15

Error ID 4099 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . 3-15

Error ID 4104 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . 3-16

Error ID 4104 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16

Error ID 4105 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17

Error ID 4105 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . 3-17

Error ID 4106 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18

Error ID 4106 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . 3-18

Error ID 4107 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18

xvii

xviii

Table 3-61

Table 3-62

Table 3-63

Table 3-64

Table 3-65

Table 3-66

Table 3-67

Table 3-68

Table 3-52

Table 3-54

Table 3-55

Table 3-56

Table 3-57

Table 3-59

Table 3-58

Table 3-60

Table 3-45

Table 3-46

Table 3-47

Table 3-49

Table 3-48

Table 3-51

Table 3-50

Table 3-53

Table 3-38

Table 3-39

Table 3-37

Table 3-42

Table 3-43

Table 3-40

Table 3-41

Table 3-44

Error ID 8193 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19

Error ID 8193 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . 3-19

Error ID 4107 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . 3-19

Error ID 8195 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-20

Error ID 8195 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . 3-20

Error ID 8194 Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-20

Error ID 8194 Message Description. . . . . . . . . . . . . . . . . . . . . . . . . 3-20

Command Acknowledgment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21

Command N’Acknowledgment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21

Visible List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-22

Contents of Message ID 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-22

Contents of Message ID 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-23

Byte Positions Between Navigation Message and Data Array . . . . 3-23

Test Mode 1 Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-24

Byte Positions Between Navigation Message and Data Array . . . . 3-24

RTCM message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25

Detailed Description of Test Mode 1 Data. . . . . . . . . . . . . . . . . . . . 3-25

Almanac Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-26

Navigation Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-26

Horizontal/Vertical Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-27

Test Mode 2 Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28

Test Mode 3 Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-29

Detailed Description of Test Mode 2 Message . . . . . . . . . . . . . . . . 3-29

Detailed Description of Test Mode 3 Message . . . . . . . . . . . . . . . . 3-30

Test Mode 4 Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-31

Detailed Description of Test Mode 4 Message . . . . . . . . . . . . . . . . 3-31

Measurement Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-32

Sync Flag Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-33

Detailed Description of the Measurement Data . . . . . . . . . . . . . . . . 3-33

Measurement Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-35

SV State Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-36

Measurement Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-36

SiRF Binary Protocol Reference ManualSeptember 2004

Table 3-69

Table 3-70

Table 3-71

Table 3-72

Table 3-74

Table 3-73

Table 3-76

Table 3-75

Geodetic Navigation Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-38

Test Mode 3 Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-41

Detailed Description of Test Mode 3 Message . . . . . . . . . . . . . . . . 3-42

SBAS Parameters Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-48

Timing Message Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-49

Detailed Description of SBAS Parameters. . . . . . . . . . . . . . . . . . . . 3-49

Development Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-50

Status Byte Field in Timing Message. . . . . . . . . . . . . . . . . . . . . . . . 3-50

Tables

xix

xx SiRF Binary Protocol Reference ManualSeptember 2004

Preface

The SiRF Binary Protocol Reference Manual provides detailed information about the

SiRF Binary protocol - the standard protocol used by all SiRF architectures.

Who Should Use This Guide

This manual was written assuming the user is familiar with interface protocols, including their definitions and use.

How This Guide Is Organized

Chapter 1, “Protocol Layers” information about SiRF Binary protocol layers.

Chapter 2, “Input Messages” definitions and examples of each available SiRF Binary

input messages.

Chapter 3, “Output Messages” definitions and examples of each available SiRF

Binary output messages.

Chapter 4, “Additional Information” Other useful information pertaining to the

SiRF Binary protocol.

xxi

Troubleshooting/Contacting SiRF Technical Support

Address:

SiRF Technology Inc.

148 East Brokaw Road

San Jose, CA 95112 U.S.A.

SiRF Technical Support:

Phone: +1 (408) 467-0410 (9 am to 5 pm Pacific Standard Time)

Email: [email protected]

General enquiries:

Phone: +1 (408) 467-0410 (9 am to 5 pm Pacific Standard Time)

Email: [email protected]

Helpful Information When Contacting SiRF Technical Support

Receiver Serial Number:

Receiver Software Version:

SiRFdemo Version: xxii SiRF Binary Protocol Reference ManualSeptember 2004

Protocol Layers

1

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

Sequence

0xA0

1

,

0xA2

Payload

Length

Two-bytes

(15-bits)

Payload

Up to 2

10

(<1023)

-1

1. Characters preceded by “0x” denotes a hexadecimal value. 0xA0 equals 160.

Message

Checksum

Two-bytes

(15-bits)

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.

1-1

1

Payload Length

Payload Data

Checksum

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 (2

15

-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.

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 bigendian order.

The checksum is transmitted high order byte first followed by the low byte. This is the so-called big-endian order.

High Byte Low Byte

< 0x7F 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 (2

15

-1).

1-2

SiRF Binary Protocol Reference ManualSeptember 2004

Input Messages

2

The following chapter provides full information about available SiRF Binary input messages. For each message, a full definition and example is provided.

Table 2-1 lists the message list for the SiRF Binary input messages.

Table 2-1 SiRF Messages - Input Message List

92

93

94

95

96

97

Hex Decimal

35 53

Name Description

Advanced Power Management Power management scheme for SiRFLoc and

SiRFXTrac.

80 128 Initialize Data Source

81 129 Switch to NMEA Protocol

Receiver initialization and associated parameters

Enable NMEA messages, output rate and baud rate

82 130 Set Almanac (upload)

84 132 Poll Software Version

85 133 DGPS Source Control

Sends an existing almanac file to the receiver

Polls for the loaded software version

DGPS correction source and beacon receiver information

86

87

88

89

134 Set Main Serial Port

135 Switch Protocol

136 Mode Control

137 DOP Mask Control

8A 138 DGPS Mode

8B 139 Elevation Mask

8C 140 Power Mask

8D 141 Editing Residual

8E

8F

142 Steady-State Detection (Not

Used)

143 Static Navigation

90

91

144 Poll Clock Status

145 Set DGPS Serial Port

Baud rate, data bits, stop bits, and parity

Obsolete

Navigation mode configuration

DOP mask selection and parameters

DGPS mode selection and timeout value

Elevation tracking and navigation masks

Power tracking and navigation masks

Not implemented

Not implemented

Configuration for static operation

Polls the clock status

DGPS port baud rate, data bits, stop bits, and parity

146 Poll Almanac

147 Poll Ephemeris

148 Flash Update

149 Set Ephemeris (upload)

Polls for almanac data

Polls for ephemeris data

On the fly software update

Sends an existing ephemeris to the receiver

150 Switch Operating Mode Test mode selection, SV ID, and period.

151 Set TricklePower Parameters Push to fix mode, duty cycle, and on time

2-1

2

2-2

Table 2-1 SiRF Messages - Input Message List (Continued)

Hex Decimal

98

Name

152 Poll Navigation Parameters

A5 165 Set UART Configuration

A6 166 Set Message Rate

A7 167 Set Low Power Acquisition

Parameters

A8 168 Poll Command Parameters

Description

Polls for the current navigation parameters

Protocol selection, baud rate, data bits, stop bits, and parity

SiRF Binary message output rate

Low power configuration parameters

AA 170 Set SBAS Parameters

AC 172 SiRFDRive-specific Class of

Input Messages

B6 182 Set UART Configuration

E4 228 SiRF internal message

Poll for parameters:

0x80: Receiver initialized & associated params

0x85: DGPS source and beacon receiver info

0x88: Navigation mode configuration

0x89: DOP mask selection and parameters

0x8A: DGPS mode selection and timeout values

0x8B: Elevation tracking and navigation masks

0x8C: Power tracking and navigation masks

0x8F: Static navigation configuration

0x97: Low power parameters

SBAS configuration parameters

The MID is partitioned into messages identified

by Sub IDs. Refer to Table 2-2.

Obsolete

Reserved

Table 2-2 Sub IDs for SiRFDRive input MID 172 (0xAC)

6

7

4

5

2

3

Sub ID Message

1 Initialise GPS/DR Navigation

Set GPS/DR Navigation Mode

Set DR Gyro Factory Calibration

Set DR Sensors’ Parameters

Poll DR Validity (not implemented)

Poll DR Gyro Factory Calibration

Poll DR Sensors’ Parameters

As the SiRF Binary protocol is evolving standard along with continued development of

SiRF software and GPS solutions, not all SiRF Binary messages are supported by all

SiRF GPS solutions.

Table 2-3 identifies the supported input messages for each SiRF architecture.

Table 2-3 Supported Input Messages

Message ID

53

128

129

130

131

132

133

134

GSW2

No

Yes

Yes

Yes

No

Yes

Yes

Yes

SiRFDRive SiRFXTrac SiRFLoc

No Yes No

Yes No Yes

Yes

Yes

Yes

No

No

No

No No No

Yes

Yes

Yes

SiRF Software Options

Yes

No

Yes

Yes

No

Yes

GSW3

No

Yes

Yes

Yes

Yes

No

No

Yes

SiRF Binary Protocol Reference ManualSeptember 2004

2

GSW2

No

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

2.3 or above

No

No

No

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

No

No

No

Message ID

135

136

166

167

168

170

172

175

148

149

150

151

152

165

142

143

144

145

146

147

137

138

139

140

141

182

228

Table 2-3 Supported Input Messages (Continued)

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

No

No

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

No

SiRF Software Options

SiRFDRive SiRFXTrac SiRFLoc

No

Yes

Yes

Yes

No

Yes

Yes

Yes

No

Yes

Yes

Yes

No

Yes

Yes

No

Yes

No

Yes

Yes

No

No

Yes

Yes

No

Yes

Yes

Yes

No

Yes

No

No

Yes

No

Yes

No

Yes

Yes

Yes

Yes

No

No

Yes

Yes

No

Yes

Yes

Yes

No

Yes

No

No

No

No

No

No

No

No

No

No

GSW3

Yes

Yes

Yes

No

Yes

Yes

No

Yes

Yes

No

Yes

Yes

No

No

Yes

Yes

No

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

No

Yes (reserved)

Advanced Power Management - Message ID 53

Used to implement Advanced Power Management (APM). APM will not engage until all information is received.

Example:

The following example sets the receiver to operate in APM mode with 0 cycles before sleep (continuous operation), 20 seconds between fixes, 50 % duty cycle, a time between fixes priority, and no preference for accuracy.

A0A2000C—Start Sequence and Payload Length

3501001400030700000A0100—Payload

005FB0B3—Message Checksum and End Sequence

Input Messages 2-3

2

2-4

Table 2-4 Advanced Power Management Parameters

Name Bytes

Message ID 1

APM Enabled

1

Number Fixes

1

Binary (Hex)

Scale Example

35

01

00

Time Between

Fixes

Spare Byte 1

Maximum

Horizontal Error

1

1

1

Maximum

Vertical Error

Maximum

Response Time

1

1

Time Acc Priority 1

1

1

14

00

03

07

00

00

Units

Sec

Description

decimal 53

1=True, 0=False

Number of requested APM cycles.

Range 0-255

1

Requested time between fixes. Range 0-

255

2

Reserved

Maximum requested horizontal error (See ).

Maximum requested vertical error (See ).

Power Duty Cycle 1

Time Duty Cycle 1

Spare Byte 2 1

Payload length: 12 bytes

5 0A

01

00

Sec Maximum response time.

Not currently used.

0x00=No priority, 0x01=Response Time

Max has higher priority, 0x02=Horizontal

Error Max has higher priority. Not currently used.

% Power Duty Cycle, defined as the time in full power to total operation time. 1->20; duty cycle (%) is this value *5.

3

Time/Power Duty cycle priority. 0x01 = Time between two consecutive fixes has priority

0x02 = Power Duty cycle has higher priority.

Bits 2..7 reserved for expansion.

Reserved.

1. A value of zero indicates that continuous APM cycles is requested.

2. It is bound from 10 - 180 s.

3. If a duty-cycle of 0 is entered, it will be rejected as out of range. If a duty cycle value of 20 is entered, the APM module will be disabled and continuous power operation will resume.

Table 2-5 Horizontal/Vertical Error

Value

0x00

0x01

0x02

0x03

0x04

0x05

0x06

Position Error

< 1 meter

< 5 meter

< 10 meter

< 20 meter

< 40 meter

< 80 meter

< 160 meter

0x07 No Maximum

0x08 - 0xFF Reserved

SiRF Binary Protocol Reference ManualSeptember 2004

2

Initialize Data Source - Message ID 128

Table 2-6 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 2-6 Initialize data source

Message ID

Name

ECEF X

ECEF Y

ECEF Z

Clock Offset

Time of Week

Week Number

Channels 1

Reset Configuration Bit Map. 1

Payload length: 25 bytes

4

2

4

4

4

4

Bytes

1

Binary (Hex)

Scale Example

80

Units Description

Decimal 128

FFD700F meters

FFBE5266 meters

003AC57A meters

000124F8 Hz

*100 0083D600 seconds

039C

0C

33

Range 1-12

See Table 2-7

Table 2-7 Reset Configuration Bit Map

Bit Description

0 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.

1 Clear ephemeris from memory -- blocks Snap or Hot Start from occurring.

2 Clear all history (except clock drift) from memory -- blocks Snap, Hot, and Warm Starts.

3 Factory Reset -- clears all GPS memory including clock drift. Also clears almanac stored in flash memory.

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.

Input Messages 2-5

2

Switch To NMEA Protocol - Message ID 129

Table 2-8 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 2-8 Switch To NMEA Protocol

Name

Message ID

Mode

GGA Message

1

Checksum

2

GLL Message 1

Checksum

GSA Message 1

Checksum

1

1

Bytes Example Units

0x81

0x02

1

1

Decimal 129

Description

See Table 2-9

0x01 sec See NMEA Protocol Reference Manual for format.

0x01

Send checksum with GGA message

1

1

0x00 sec See NMEA Protocol Reference Manual for format.

0x01

0x01 sec See NMEA Protocol Reference Manual for format.

0x01

GSV Message 1

Checksum

RMC Message 1

Checksum

1

1

0x05

0x01 sec See NMEA Protocol Reference Manual for format.

0x01 sec See NMEA Protocol Reference Manual for format.

0x01

VTG Message 1

Checksum 1

MSS Message 1

0x00 sec See NMEA Protocol Reference Manual for format.

0x01

0x00 sec Output rate for MSS message

0x01

Checksum

Unused Field

3

Unused Field

3

1

1

1

0x00

0x00

ZDA Message 1

Checksum

Unused Field

3

Unused Field

3

Baud Rate

1

1

1

2

0x00

0x01

0x00

0x00

0x2580

Payload length: 24 bytes sec See NMEA Protocol Reference Manual for format.

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.

2-6

SiRF Binary Protocol Reference ManualSeptember 2004

2

Table 2-9 Mode Values

Value Meaning

0 Enable NMEA debug messages

1

Disable NMEA debug messages

2 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).

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 2-10 Set Almanac Message

Name Bytes

Message ID 1

Almanac 896

Binary (Hex)

Scale Example

Payload length: 897 bytes

82

00

Units 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

Input Messages 2-7

2

Handle Formatted Dump Data - Message ID 131

This command causes data to bbe output in a formatted manner. It is designed to handle complex data type up to an array of structures.

Table 2-11 contains the input values for the example below.

This example shows how to output an array of elements, where each elelemt is a structure that looks like this:

Typedef structure // structure size = 9 bytes

{

UINT8 Element 1

UINT16 Element 2

UINT8 Element 3

UINT8 Element 4

UINT32 Element 5

} tmy_struct tmy_struc my_struct [3]

2-8

Example:

A0A2002F—Start Sequence and Payload Length

833

1E5151B81A

—Payload

1F19B0B3—Message Checksum and End Sequence

Table 2-11 Set Send Command String Parameters

Name

Message ID 1

Elements 1

Data address 4

Members

Member sizes

Header

Format

1

Bytes

Elements string length

+ 1 string length

+ 1

Trailer string length

+ 1

Payload length: Variable

3

Binary (Hex)

83

Example Units Description

decimal 131

Number of elements in array to dump

(minimum 1)

0x60xx xxxx

5

Address of the data to be dumped

Number of items in the structure to be dumped

01 02 01 01 04 Bytes List of element sizes in the structure. See

Table 2-12 for definition of member sizes

(total of 5 for this example)

“Hello”0

“%2d %2d %2d

%2d %10.1lf”0

0

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)

SiRF Binary Protocol Reference ManualSeptember 2004

Table 2-12 defines the the values associated with the membersize data type.

Table 2-12 Member Sizes 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

2

Poll Software Version - Message ID 132

Table 2-13 contains the input values for the following example:

Poll the software version

Example:

A0A20002—Start Sequence and Payload Length

8400—Payload

0084B0B3—Message Checksum and End Sequence

Table 2-13 Software Version

Name

Message ID

Control

Payload length: 2 bytes

1

1

Bytes

Binary (Hex)

Scale Example

84

00

Units Description

Decimal 132

Not used

DGPS Source - Message ID 133

This command allows the user to select the source for DGPS corrections. Options available are:

External RTCM Data (any serial port)

SBAS (subject to SBAS satellite availability)

Internal DGPS beacon receiver

Example 1: Set the DGPS source to External RTCM Data

A0A200007—Start Sequence and Payload Length

85020000000000—Payload

Input Messages 2-9

2

0087B0B3—Checksum and End Sequence

Table 2-14 DGPS Source Selection (Example 1)

Name

Message ID

DGPS Source

Internal Beacon Frequency 4

Internal Beacon Bit Rate 1

Payload length: 7 bytes

Bytes Scale Hex

1 85

1 00

00000000 Hz

0

Units Decimal Description

133

0

0

BPS 0

Message Identification

See Table 2-16.

See Table 2-17.

See Table 2-17.

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

2-10

SiRF Binary Protocol Reference ManualSeptember 2004

2

Table 2-15 DGPS Source Selection (Example 2)

Name

Message I.D.

DGPS Source 1

Internal Beacon Frequency 4

Bytes Scale Hex

1 85

03

Units Decimal Description

133

3

Message Identification.

See Table 2-16.

0004BAF0 Hz

310000 See Table 2-17.

Internal Beacon Bit Rate 1

Payload length: 7 bytes

C8 BPS 200

See Table 2-17.

Table 2-16 DGPS Source Selections

DGPS Source

None

SBAS

External RTCM Data

Hex Decimal Description

00 0 DGPS corrections are not used (even if available).

01 1

02 2

Internal DGPS Beacon Receiver 03

User Software 04

3

4

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 2-17 Internal Beacon Search Settings

Search Type

Auto Scan

Frequency

1

Bit Rate

2

Description

0

Full Frequency scan 0

0 Auto scanning of all frequencies and bit rates are performed.

Non-zero Auto scanning of all frequencies and specified bit rate are performed.

Full Bit Rate Scan Non-zero

Specific Search Non-zero

0 Auto scanning of all bit rates and specified frequency are performed.

Non-zero 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.

Set Main Serial Port - Message ID 134

Table 2-18 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

Input Messages 2-11

2

Table 2-18 Set Main Serial Port

Name Bytes

Message ID 1

Baud 4

Binary (Hex)

Scale Example

86

00002580

Units

Data Bits 1

Stop Bit

Parity

1

1

08

01

00

Pad 1

Payload length: 9 bytes

00

Description

Decimal 134

115.2k, 57.6k, 38.4k, 19.2k, 9600, 4800, 2400,

1200

8

1=1 Stop Bit

None=0, Odd=1, Even=2

Reserved

Switch Protocol - Message ID 135

This message is obsolete and is no longer used or supported.

Mode Control - Message ID 136

Table 2-19 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 2-19 Mode Control

TBD

TBD

Name

Message ID

Degraded Mode

Altitude

Alt Hold Mode

Alt Hold Source

TBD

DR Time Out

Track Smoothing

2

2

2

1

Bytes

1

Binary (Hex)

Scale Example

88

0000

01

0000

0000

1

1

1

Degraded Time Out 1

1

1

Payload length: 14 bytes

00

00

00

05

02

01

Units

Decimal 136

Reserved

See Table 2-20

Reserved

Description

meters User specified altitude, range -1,000 to

+10,000

See Table 2-21

0=Use last computed altitude, 1=Use user-input altitude

Reserved seconds 0=disable degraded mode, 1-120 seconds degraded mode time limit seconds 0=disable dead reckoning, 1-120 seconds dead reckoning mode time limit

0=disable, 1=enable

2-12

SiRF Binary Protocol Reference ManualSeptember 2004

2

Table 2-20 Degraded Mode

Byte Value

0

1

2

3

4

Description

Allow 1 SV navigation, freeze direction for 2 SV fix, then freeze clock drift for 1

SV fix

Allow 1 SV navigation, freeze clock drift for 2 SV fix, then freeze direction for 1

SV fix

Allow 2 SV navigation, freeze direction

Allow 2 SV navigation, freeze clock drift

Do not allow Degraded Modes (2 SV and 1 SV navigation)

Table 2-21 Altitude Hold Mode

Byte Value

0

1

2

Description

Automatically determine best available altitude to use

Always use input altitude

Do not use altitude hold

DOP Mask Control - Message ID 137

Table 2-22 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 2-22 DOP Mask Control

Name Bytes

Message ID 1

DOP Selection 1

GDOP Value

PDOP Value

1

1

HDOP Value 1

Payload length: 5 bytes

Binary (Hex)

Scale Example

89

00

08

08

08

Units Description

Decimal 137

See Table 2-23

Range 1 to 50

Range 1 to 50

Range 1 to 50

Table 2-23 DOP Selection

Byte Value

0

1

2

3

4

Description

Auto: PDOP for 3-D fix; HDOP for 2-D fix

PDOP

HDOP

GDOP

Do Not Use

Input Messages 2-13

2

DGPS Control - Message ID 138

Table 2-24 contains the input values for the following example:

Set DGPS to exclusive with a time out of 30 seconds.

Example:

A0A20003—Start Sequence and Payload Length

8A011E—Payload

00A9B0B3—Message Checksum and End Sequence

Table 2-24 DGPS Control

Name Bytes

Message ID 1

DGPS Selection 1

DGPS Time Out: 1

Payload length: 3 bytes

Binary (Hex)

Scale Example

8A

01

1E

Units Description

Decimal 138

See Table 2-25

seconds Range 0 to 255

Table 2-25 DGPS Selection

Byte Value

0

1

2

Description

Auto = use corrections when available

Exclusive = include into navigation solution only SVs with corrections

Never Use = ignore corrections

Note – DGPS Timeout interpretation varies with DGPS correction source. For internal beacon receiver or RTCM SC-104 external source, a value of 0 means infinite timeout

(use corrections until another one is available). A value of 1-255 means use the corrections for a maximum of this many seconds. For DGPS corrections from an

SBAS source, the timeout value is ignored unless Message ID 170, Flag bit 0 is set to

1 (User Timeout). If MID 170 specifies User Timeout, a value of 1 to 255 here means that SBAS corrections may be used for the number of seconds specified. A value of 0 means to use the timeout specified in the SBAS satellite message (usually 18 seconds).

Elevation Mask - Message ID 139

Table 2-26 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

2-14

SiRF Binary Protocol Reference ManualSeptember 2004

2

Table 2-26 Elevation Mask

Name

Message ID

Tracking Mask

Bytes

1

2

Navigation Mask 2

Payload length: 5 bytes

Binary (Hex)

Scale Example

8B

*10 0032

*10 009B

Units Description

Decimal 139 degrees Not implemented degrees 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.

Power Mask - Message ID 140

Table 2-27 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 2-27 Power Mask

Name

Message ID

Tracking Mask 1

Navigation Mask 1

Bytes

1

Payload length: 3 bytes

Binary (Hex)

Scale Example

8C

1C

21

Units Description

Decimal 140 dBHz Not implemented dBHz Range 20 to 50

Note – Satellite with received signal strength below the specified navigation mask signal level will not used in the navigation solution.

Editing Residual - Message ID 141

This message has not been implemented.

Steady State Detection - Message ID 142

This message has not been implemented.

Input Messages 2-15

2

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 2-28 Static Navigation

Name Bytes

Message ID 1

Static Navigation Flag 1

Payload length: 2 bytes

Binary (Hex)

Scale Example

8F

01

Units Description

Decimal 143

1 = enable; 0 = disable

Note – Static navigation is a postion 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.

Poll Clock Status - Message ID 144

Table 2-29 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

Table 2-29 Clock Status

Name Bytes

Message ID 1

Control 1

Binary (Hex)

Scale Example

Payload length: 2 bytes

90

00

Units Description

Decimal 144

Not used

Note – Returned message will be MID 7. See “Response: Clock Status Data - Message

ID 7” on page 3-8.

2-16

SiRF Binary Protocol Reference ManualSeptember 2004

2

Set DGPS Serial Port - Message ID 145

Table 2-30 contains the input values for the following example:

Set DGPS Serial port to 9600,n,8,1.

Example:

A0A20009—Start Sequence and Payload Length

910000258008010000—Payload

013FB0B3—Message Checksum and End Sequence

Table 2-30 Set DGPS Serial Port

Name Bytes

Message ID 1

Baud 4

Data Bits 1

Stop Bit

Parity

1

1

Binary (Hex)

Scale Example

91

00002580

08

01

00

Pad 1

Payload length: 9 bytes

00

Units Description

Decimal 145

57.6k, 38.4k, 19.2k, 9600, 4800, 2400, 1200

8,7

0,1

None=0, Odd=1, Even=2

Reserved

Note – Setting the DGPS serial port using MID 145 will affect Com B only regardless of the port being used to communicate with the Evaluation Receiver.

Poll Almanac - Message ID 146

Table 2-31 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 2-31 Almanac

Name Bytes

Binary (Hex)

Scale Example

Message ID 1

Control 1

Payload length: 2 bytes

92

00

Units Description

Decimal 146

Not used

Note – Returned message will be MID 14. See “Almanac Data - Message ID 14” on page 3-22.

Input Messages 2-17

2

Poll Ephemeris - Message ID 147

Table 2-32 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 2-32 Ephemeris

Name

Message ID

Sv ID

1

Control

1

1

1

Bytes

Payload length: 3 bytes

Binary (Hex)

Scale

93

00

00

Example Units Description

Decimal 147

Range 0 to 32

Not used

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.

Note – Returned message will be MID 15. See “Ephemeris Data (Response to Poll) –

Message ID 15” on page 3-23.

Flash Update - Message ID 148

This command allows the user to command the receiver to go into internal boot mode without setting the boot switch. Internal boot mode allows the user to re-flash the embedded code in the receiver.

Note – It is highly recommended that all hardware designs should still provide access to the boot pin in the event of a failed flash upload.

Example:

A0A20001 – Start Sequence and Payload Length

94 – Payload

0094B0B3 – Message Checksum and End Sequence

Table 2-33 Flash Update

Binary (Hex)

Name Bytes

Message ID 1

Scale Example

Payload length: 1 bytes

94

Units Description

Decimal 148

2-18

SiRF Binary Protocol Reference ManualSeptember 2004

2

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 2-34 Ephemeris

Name Bytes

Message ID 1

Ephemeris Data 90

Payload length: 91 bytes

Binary (Hex)

Scale Example

95

00

Units 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” on page 3-23) for a detailed

description of this data format. See

Switch Operating Modes - Message ID 150

This command sets the receiver into either production test or normal operating mode.

Table 2-35 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 2-35 Switch Operating Modes

Name Bytes

Message ID 1

Mode 2

Binary (Hex)

Scale Example

96

1E51

SvID

Period

2

2

Payload length: 7 bytes

0006

001E

Units Description

Decimal 150

0=normal, 1E51=Testmode1, 1E52=Testmode2,

1E53=Testmode3, 1E54=Testmode4

Satellite to Track seconds Duration of Track

Input Messages 2-19

2

Set TricklePower Parameters - Message ID 151

Table 2-36 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

Table 2-36 Set Trickle Power Parameters

Name Bytes

Message ID 1

Push-to-Fix Mode 2

Duty Cycle 2

On-Time

1

4

Payload length: 9 bytes

Binary (Hex)

Scale Example Units Description

97

0000

Decimal 151

ON = 1, OFF = 0

*10 00C8 % % Time ON. A duty cycle of 1000 (100%) means continuous operation.

000000C8 msec range 200 - 900 msec

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 2-37 Example of Selections for TricklePower Mode of Operation

Mode

Continuous

1

TricklePower

TricklePower

TricklePower

TricklePower

On Time (ms) Duty Cycle (%) Interval Between Updates (sec)

1000

200

100

20

1

1

200

300

500

10

10

5

2

3

10

1. Continuous duty cycle is activated by setting Duty Cycle to 0 or 100 %.

2-20

SiRF Binary Protocol Reference ManualSeptember 2004

2

Table 2-38 Duty Cycles for Supported TricklePower Settings

On-Time (ms)

200

300

400

500

600

700

800

900

1

*

*

*

2

200 100

300 150

400 200

500 250

600 300

350

400

450

3

67

100

4

50

75

Update Rates (sec)

5

40

60

133 100 80

167 125 100

200 150 120

233 175 140

267 200 160

300 225 180

6

33

50

67

83

100

117

133

150

7

29

43

100

114

129

57

71

86

50

62

75

8

25

37

9

22

33

44

56

67

88

100

78

89

112 100

40

50

60

70

80

90

10

20

30

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:

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.

Poll Navigation Parameters - Message ID 152

Table 2-39 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

Input Messages 2-21

2

Table 2-39 Poll Receiver for Navigation Parameters

Name Bytes

Message ID 1

Reserved 1

Binary (Hex)

Scale Example

Payload length: 2 bytes

98

00

Units Description

Decimal 152

Reserved

Note – Returned message will be MID 19. See “Navigation Parameters (Response to

Poll) - Message ID 19” on page 3-26.

Set UART Configuration - Message ID 165

Table 2-40 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

Name

Message ID

Port

1

In Protocol

2

Out Protocol

Baud Rate

3

Data Bits

4

Stop Bits

5

Parity

6

Reserved

Reserved

Port

In Protocol

Out Protocol

Baud Rate

Data Bits

Stop Bits

Parity

Reserved

Reserved

Port

Table 2-40 Set UART Configuration

1

1

1

1

1

1

1

1

1

4

1

1

Bytes

1

1

1

1

1

4

1

1

Binary (Hex)

Scale Example

A5

00

01

01

00002580

08

01

00

00

00

01

00

00

00

00

00

FF

0000E100

08

01

Units 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

For UART 1

For UART 1

For UART 1

For UART 1

For UART 1

For UART 1

For UART 1

For UART 1

For UART 2

2-22

SiRF Binary Protocol Reference ManualSeptember 2004

2

Table 2-40 Set UART Configuration (Continued)

Parity

Name

In Protocol

Out Protocol

Baud Rate

Data Bits

Stop Bits

Reserved

Reserved

Bytes

1

1

4

1

1

1

1

1

Port

In Protocol

Out Protocol

Baud Rate

Data Bits

Stop Bits

Parity

Reserved

1

1

1

4

1

1

1

1

Reserved 1

Payload length: 49 bytes

Binary (Hex)

Scale Example

00

00

00

05

05

00000000

00

00

00

00

00

FF

05

05

00000000

00

00

Units Description

For UART 2

For UART 2

For UART 2

For UART 2

For UART 2

For UART 2

For UART 2

For UART 2

For UART 3

For UART 3

For UART 3

For UART 3

For UART 3

For UART 3

For UART 3

For UART 3

For UART 3

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.

Set Message Rate - Message ID 166

Table 2-41 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

Input Messages 2-23

2

Table 2-41 Set Message Rate

Name

Message ID

Send Now

1

MID to be set

Update Rate

2

Reserved

Reserved

Reserved

Reserved

1

1

1

Payload Length: 8 bytes

1

1

1

Bytes

1

1

Binary (Hex)

Scale Example

A6

00

02

05

00

00

00

00

Units Description

decimal 166

Poll message; 0 = No, 1 = Yes sec Range = 0 - 30

Not used, set to zero

No used, set to zero

Not used, set to zero

Not used, set to zero

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.

Set Low Power Acquisition Parameters - Message ID 167

Table 2-42 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 2-42 Set Low Power Acquisition Parameters

Name

Message ID

Max Off Time

Max Search Time

Push-to-Fix Period 4

Adaptive TricklePower 2

Bytes

1

4

4

Binary (Hex)

Scale Example Units Description

A7 decimal 167

00007530 msec Maximum time for sleep mode.

Default value: 30 seconds.

0001D4C0 msec Max. satellite search time. Default value: 120 seconds.

0000003C sec Push-to-Fix cycle period

0001 To enable Adaptive TricklePower

0 = off; 1 = on

Payload length: 15 bytes

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 2-1 message ID 168).

Table 2-43 contains the input values for the following example:

2-24

SiRF Binary Protocol Reference ManualSeptember 2004

2

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

Table 2-43 Poll Command Parameters

Name Bytes

Message ID 1

Poll Msg ID 1

Payload length: 2 bytes

Binary (Hex)

Scale Example

A8

97

Units Description

Decimal 168

Requesting Msg ID 0x97

1

1. Valid message IDs are 0x80, 0x85, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8F, 0x97, and 0xAA.

Set SBAS Parameters - Message ID 170

This command allows the user to set the SBAS parameters.

Table 2-44 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 2-44 Set SBAS Parameters

Name Bytes

Message ID 1

SBAS PRN 1

Binary (Hex)

Scale Example

AA

00

SBAS Mode 1

Flag Bits

1

1

00

01

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.

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

Payload length: 6 bytes

0000

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.

Input Messages 2-25

2

Initialise GPS/DR Navigation - Message ID 172 (Sub ID 1)

Set the navigation initialisation parameters and command a software reset based on those parameters.

Name

MID

Sub ID

Latitude

Longitude

Altitude (ellipsoid)

True heading

Clock drift

GPS time of week

GPS week number

Channel count

Reset configuration bits

1

1

1

4

2

2

4

4

4

1

4

Bytes Scale Units Description

1 =0xAC deg

=0x01 for Warm Start with user input deg m for Warm Start with user input for Warm Start with user input deg for Warm Start with user input

Hz for Warm Start with user input

100 sec 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.

Set GPS/DR Navigation Mode - Message ID 172 (Sub ID 2)

Set the GPS/DR navigation mode control parameters.

Name

MID

Sub ID

Mode

Reserved

Bytes Description

1

1

1

=AC

=0x02

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.

1

2-26

SiRF Binary Protocol Reference ManualSeptember 2004

Set DR Gyro Factory Calibration - Message ID 172 (Sub ID 3)

Set DR gyro’s factory calibration parameters.

Name

MID

Sub ID

Calibration

Reserved

Payload length: 4 bytes

1

Bytes Scale Units Description

1

1

1

=0xAC

=0x03

Bit 0 : Start gyro bias calibration.

Bit 1 : Start gyro scale factor calibration.

Bits 2 - 7 : Reserved.

Set DR Sensors’ Parameters - Message ID 172 (Sub ID 4)

Set DR sensors’ parameters.

Name

MID

Sub ID 1

Base speed scale factor 1

Bytes Scale Units

1 ticks/m

Base gyro bias 2

Base gyro scale factor 2

10

4

10

3 mV mV/deg/s

Description

=0xAC

=0x04

Payload length: 7 bytes

Poll DR Gyro Factory Calibration - Message ID 172 (Sub ID 6)

Poll the DR gyro’s factory calibration status.

Name

MID

Sub ID

Payload length: 2 bytes

Bytes Description

1 =AC

1 =0x06

Poll DR Sensors’ Parameters - Message ID 172 (Sub ID 7)

Poll the DR sensors’ parameters.

Name

MID

Sub ID

Payload length: 2 bytes

Bytes Description

1 =AC

1 =0x07

2

Input Messages 2-27

2

Reserved - Message ID 228

This input message is SiRF proprietary.

2-28

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

The following chapter provides full information about available SiRF Binary output messages. For each message, a full definition and example is provided.

Table 3-1 SiRF Binary Messages - Output Message List

1E

1F

29

2D

2E

30

13

14

1C

1D

0F

10

11

12

0B

0C

0D

0E

07

08

09

0A

Hex Decimal

01

02

1

2

03

04

05

06

3

4

5

6

Reference Navigation Data

Measured Navigation Data

True Tracker Data

Measured Tracking Data

Raw Track Data

SW Version

Name

7

8

Clock Status

50 BPS Subframe Data

9 Throughput

10 Error ID

11 Command Acknowledgment

12 Command NAcknowledgment

13 Visible List

14 Almanac Data

32

34

15

16

17

18

19

20

28

29

30

31

41

45

46

Ephemeris Data

Test Mode 1

Differential Corrections

OkToSend

Navigation Parameters

Test Mode 2/3/4

Nav. Lib. Measurement Data

Nav. Lib. DGPS Data

Nav. Lib. SV State Data

Nav. Lib. Initialization Data

Geodetic Navigation Data

Raw DR Data

Test Mode 3

48 SiRFDRive-specific Class of Output

Messages

50 SBAS Parameters

52 PPS Time Message

Description

Not Implemented

Position, velocity, and time

Not Implemented

Satellite and C/No information

Not supported by SiRFstarII

Receiver software

Current clock status

Standard ICD format

Navigation complete data

Error coding for message failure

Successful request

Unsuccessful request

Auto Output

Response to poll

Response to poll

For use with SiRFtest (Test Mode 1)

Received from DGPS broadcast

CPU ON / OFF (TricklePower)

Response to Poll

Test Mode 2, 3, or 4 test data

Measurement data

Differential GPS data

Satellite state data

Initialization data

Geodetic navigation information

Raw DR data from ADC

Additional test data (Test Mode 3)

The MID is partitioned into messages

identified by Sub IDs. Refer to Table 3-2.

SBAS operating parameters

Time message for PPS

3-1

3

3-2

Table 3-1 SiRF Binary Messages - Output Message List (Continued)

Hex Decimal

E1

FF

Name

225 SiRF internal message

255 Development Data

Description

Reserved

Various status messages

Table 3-2 Sub IDs for SiRFDRive output MID 48 (0x30)

4

5

6

7

8

Sub ID Message

1

2

3

DR Navigation Status

DR Navigation State

Navigation Subsystem

Raw DR Data

DR Validity (not implemented)

DR Gyro Factory Calibration

DR Sensors’ Parameters

DR Data Block

As the SiRF Binary protocol is evolving along with continued development of SiRF software and GPS solutions, not all SiRF Binary messages are supported by all SiRF

GPS solutions.

Table 3-3 identifies the supported output messages for each SiRF architecture.

Table 3-3 Supported output messages

19

20

28

29

15

16

17

18

30

31

41

Message ID

1

2

5

6

3

4

11

12

13

14

9

10

7

8

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

GSW2

Yes

Yes

No

Yes

No

Yes

SiRF Software Options

SiRFDRive SiRFXTrac SiRFLoc

Yes

Yes

No

Yes

No

Yes

No

Yes

No

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

No

Yes

No

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

No

Yes

No

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

No

No

Yes

Yes

No

No

Yes

Yes Yes Yes Yes

Test Mode 2 only Test Mode 2 only Test Mode 2/3/4 Test Mode 2/3/4

Yes

Yes

Yes

Yes

2.3 or above

Yes

Yes

Yes

Yes

Yes

No

No

No

No

2.0 or above

No

No

No

No

No

Yes

No

Yes

No

Yes

No

No

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Yes

GSW3

No

Yes

No

Yes

No

Yes

SiRF Binary Protocol Reference ManualSeptember 2004

3

Table 3-3 Supported output messages (Continued)

Message ID

43

45

46

48

50

52

55

GSW2

No

No

Yes

No

2.3 or above

2.3.2 or above

No

SiRF Software Options

SiRFDRive SiRFXTrac SiRFLoc

No No No

Yes

Yes

Yes

Yes

No

No

No

No

No

No

No

No

No

No

No

No

No

No

225

255

No

Yes

No

Yes

No

Yes

No

Yes

GSW3

Yes

No

Test Mode 3/4

No

No

No

Yes

(reserved)

Yes

(reserved)

Yes

Reference Navigation Data - Message ID 1

This message is defined as Reference Navigation data but has not been implemented.

Measure Navigation Data Out - Message ID 2

Output Rate: 1 Hz

Table 3-4 lists the message data format for the measured navigation data.

Example:

A0A20029—Start Sequence and Payload Length

02

FFD6F78CFFBE536E003AC004000000030001040A00036B039780E3

0612190E160F04000000000000

—Payload

09BBB0B3—Message Checksum and End Sequence

Table 3-4 Measured Navigation Data Out - Message Data Format

Name

Message ID

X-position

Y-position

Z-position

X-velocity

Y-velocity

Z-velocity

Mode 1

HDOP

2

Mode 2

GPS Week

4

GPS TOW

SVs in Fix

CH 1 PRN

5

2

4

1

1

1

1

2

1

2

2

4

4

1

4

Bytes

*8

*8

*8

Binary (Hex)

Scale Example

02

FFD6F78C

FFBE536E

003AC004

0000

0003

*5

0001

04

0A

00

*100

036B

039780E3

06

12 m m m

Units

m/sec m/sec m/sec

Bitmap

1

Bitmap seconds

3

ASCII (Decimal)

Scale Example

2

-2689140

-4304018

3850244

Vx

÷8

0

Vy

÷8

0.375

Vz

÷8

0.125

4

÷5

20

0

÷100

875

602605.79

6

18

Output Messages 3-3

3

3-4

Table 3-4 Measured Navigation Data Out - Message Data Format (Continued)

Name

CH 2 PRN

5

CH 3 PRN

5

CH 4 PRN

5

CH 5 PRN

5

CH 6 PRN

5

CH 7 PRN

5

CH 8 PRN

5

CH 9 PRN

5

CH 10 PRN

5

CH 11 PRN

5

CH 12 PRN

5

1

1

1

1

1

1

1

1

1

1

1

Bytes

Payload length: 41 bytes

Binary (Hex)

Scale

19

0E

16

0F

04

00

00

00

00

00

00

Example

1. For further information, go to Table 3-5.

2. HDOP value reported has a maximum value of 50.

3. For further information, go to Table 3-6.

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.

Units

ASCII (Decimal)

Scale Example

25

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 X vel

= binary X vel

÷ 8).

Table 3-5 Mode 1

Bit 7

Bit(s) Name DGPS

6

DOP-Mask

5 4

ALTMODE

3

TPMODE

2 1

PMODE

Bit(s) Name Name

PMODE Position mode

TPMODE TricklePower mode 0

ALTMODE Altitude mode

1

0

3

DOPMASK DOP mask status 0

DGPS DGPS status

5

6

3

4

7

1

2

Value Description

0 No navigation solution

1-SV solution (Kalman filter)

2-SV solution (Kalman filter)

3-SV solution (Kalman filter)

> 3-SV solution (Kalman filter)

2-D point solution (least squares)

3-D point solution (least squares)

Dead-Reckoning

1

solution (no satellites)

Full power position

1

2

1

0

1

TricklePower position

No altitude hold applied

Holding of altitude from KF

Holding of altitude from user input

Always hold altitude (from user input)

DOP mask not exceeded

DOP mask exceeded

No differential corrections applied

Differential corrections applied

0

SiRF Binary Protocol Reference ManualSeptember 2004

3

1. Format???

In standard software, Dead Rechoning 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 I.D. 2 is a bit-mapped byte with five sub-values in it. The first table above shows the location of the sub-values while the table directly above shows the interpretation of each sub-value.

Output Messages 3-5

3

Table 3-6 Mode 2

Bit

0

1

2

3

4

5

7,6

Description

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

If set, solution is validated (5 or more SVs used)

1

If set, velocity DR timeout

If set, solution edited by UI (e.g., DOP Mask exceeded)

If set, velocity is invalid

Altitude hold mode:

0 = enabled

1 = disabled (3-D fixes only)

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 statuswill 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.

True Tracker Data - Message ID 3

This message is defined as True Tracker data but has not been implemented.

Measured Tracker Data Out - Message ID 4

Output Rate: 1 Hz

Table 3-7 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

3-6

SiRF Binary Protocol Reference ManualSeptember 2004

3

Table 3-7 Measured Tracker Data Out

Name

Message ID

GPS Week

1

GPS TOW

Chans

1st SVid

Azimuth

Elev

State

C/No 1

C/No 2

C/No 3

C/No 4

C/No 5

C/No 6

C/No 7

C/No 8

C/No 9

C/No 10

2nd SVid

Azimuth

1

2

4

1

1

1

1

2

1

1

1

1

1

1

1

1

1

1

1

1

Bytes

s*100

Binary (Hex)

Scale

04

Example

036C

0000937F

0C

0E

Az*[2/3] AB

El*2 46

003F

1A

1E

1D

1D

19

1D

1A

1A

1D

1F

1D

Az*[2/3] 59

El*2 42

3F

1A sec

Units

deg deg

Bitmap

2 dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz s

÷100

÷[2/3]

÷2

ASCII (Decimal)

Scale Example

4

876

37759

12

14

256.5

35

0 x 3F

26

30

29

29

25

29

26

26

29

31

29

89

Elev

State

C/No 1

1

2

1 deg deg

Bitmap

2 dB-Hz

÷[2/3]

÷2

66

63

26

C/No 2

...

1 1A dB-Hz 63

SVid, Azimuth, Elevation, State, and C/No 1-10 values are repeated for each of the 12 channels

Payload length: 188 bytes

1. GPS week number is reported modulo 1024 (ten LSBs only).

2. For further information, see Table 3-8 for state values for each channel.

Table 3-8 State Values for Each Channel

Bit

0x0001

0x0002

0x0004

0x0008

0x0010

0x0020

0x0040

0x0080

Description when bit is set to 1

Acquisition/re-acquisition has been completed successfully

The integrated carrier phase is valid

Bit synchronization has been completed

Subframe synchronization has been completed

Carrier pullin has been completed

Code has been locked

Satellite acquisition has failed

Ephemeris data is available

Raw Tracker Data Out - Message ID 5

This message is not supported by the SiRFstarII architecture.

Output Messages 3-7

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 3-9 Software Version String

Name

Message ID 1

Bytes

Character 80

Payload Length: 81 bytes

Binary (Hex)

Scale

06

1

Example

1. Repeat the payload sequence above minus the starting 0x06 byte.

2. 2.3.2-GSW2-2.05.024-C1FLEX1.2

Units

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.

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

3-8

SiRF Binary Protocol Reference ManualSeptember 2004

3

Table 3-10 Clock Status Data Message

Name

Message ID

Extended GPS Week

1

GPS TOW

SVs

2

Clock Drift

Clock Bias

Estimated GPS Time

Payload length: 20 bytes

4

1

1

2

4

4

4

Bytes

Binary (Hex)

Scale Example

07

03BD

Units

*100 02154924

08

00012231 sec

Hz

00004728 ns

14D4DAEF ms

ASCII (Decimal)

Scale Example

7

957

÷100

349494.12

8

74289

18216

349493999

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.

50 BPS Data - Message ID 8

Output Rate: Approximately every 6 seconds for each channel

Example:

A0A2002B—Start Sequence and Payload Length

08001900C0342A9B688AB0113FDE2D714FA0A7FFFACC5540157EFFEEDFFF

A80365A867FC67708BEB5860F4—Payload

15AAB0B3—Message Checksum and End Sequence

Table 3-11 50 BPS Data

Name

Message ID 1

Bytes

Binary (Hex)

Scale Example

08

Units

Channel

SV ID

Word[10]

1

1

40

00

19

Payload length: 43 bytes per sub-frame (5 subframes per page)

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.

Output Messages 3-9

3

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 3-12 CPU Throughput

Name

Message ID

SegStatMax

SegStatLat

AveTrkTime

Last Millisecond

Payload length: 9 bytes

2

2

2

1

2

Bytes

Binary (Hex)

Scale Example

09

*186 003B

*186 0011

*186 0016

01E5

Units

ms ms ms ms

ASCII (Decimal)

Scale Example

9

0.3172

÷186

÷186

÷186

0.0914

0.1183

485

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 serveral formats, each designated by an error ID. However, the format

is standardize as indicated in Table 3-13. The specific format of each error ID message

follows.

Table 3-13 Message ID 10 Overall Format

Name

Message ID

Error ID

Count

Data[n]

Bytes Description

1

2

2

Message ID number - 10.

Sub-message type.

Count of number of 4-byte values that follow.

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

3-10

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Table 3-14 Error ID 2 Message

Name

Message ID

Error ID

Count

Satellite ID

Subframe No

Payload Length: 13 bytes

2

4

1

2

4

Bytes

Binary (Hex)

Scale Example

0A

0002

0002

00000001

00000002

Units

ASCII (Decimal)

Scale

2

1

10

2

2

Example

Table 3-15 Error ID 2 Message Description

Name

Message ID

Error ID

Count

Satellite ID

Subframe No

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

Satellite Pseudo-random Noise (PRN) number.

The associated subframe number that failed the parity check. Valid subframe number is 1 through 5.

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 3-16 Error ID 9 Message

Name

Message ID

Error ID

Count

Satellite ID

Payload Length: 9 bytes

2

2

1

Bytes

4

Binary (Hex)

Scale Example

0A

0009

0002

00000001

Units

ASCII (Decimal)

Scale

10

Example

9

2

1

Table 3-17 Error ID 9 Message Description

Name

Message ID

Error ID

Count

Satellite ID

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

Satellite Pseudo-random Noise (PRN) number.

3-11

3

3-12

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 3-18 Error ID 10 Message

Name

Message ID

Error ID

Count 2

Pseudorange

Payload length: 9 bytes

4

1

2

Bytes

Binary (Hex)

Scale Example

0A

000A

0001

00001234

Units

ASCII (Decimal)

Scale Example

10

10

1

4660

Table 3-19 Error ID 10 Message Description

Name

Message ID

Error ID

Count

Pseudorange

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

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 3-20 Error ID 11 Message

Name

Message ID

Error ID

Count

Doppler Frequency

Payload length: 9 bytes

2

4

1

2

Bytes

Binary (Hex)

Scale Example

0A

000B

0001 xxxxxxxx

Units

ASCII (Decimal)

Scale Example

10

11

1 xxxxxxxx

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Table 3-21 Error ID 11 Message Description

Name

Message ID

Error ID

Count

Doppler Frequency

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

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 3-22 Error ID 12 Message

Name

Message ID

Error ID

Count

Satellite ID

Age Of Ephemeris

Payload Length: 13 bytes

1

2

2

4

4

Bytes

Binary (Hex)

Scale Example

0A

000C

0002 xxxxxxxx aaaaaaaa

Units

seconds

ASCII (Decimal)

Scale Example

10

12

2 xxxxxxxx aaaaaaaa

Table 3-23 Error ID 12 Message Description

Message ID

Error ID

Count

Name

Satellite ID

Age of Ephemeris

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

Satellite Pseudo-random Noise (PRN) number

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

3-13

3

3-14

Table 3-24 Error ID 13 Message

Name

Message ID

Error ID

Count

X

Y

Z 4

Payload length: 17 bytes

2

4

4

1

2

Bytes

Binary (Hex)

Scale Example

0A

000D

0003 xxxxxxxx aaaaaaaa bbbbbbbb

Units

Table 3-25 Error ID 13 Message Description

X

Y

Z

Name

Message ID

Error ID

Count

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

X position in ECEF.

Y position in ECEF.

Z position in ECEF.

ASCII (Decimal)

Scale Example

10

13

3 xxxxxxxx aaaaaaaa bbbbbbbb

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 3-26 Error ID 4097 Message

Name

Message ID

Error ID

Count

VCOLost

Payload length: 9 bytes

4

2

2

1

Bytes

Binary (Hex)

Scale Example

0A

1001

0001

00000001

Units

ASCII (Decimal)

Scale Example

10

4097

1

1

Table 3-27 Error ID 4097 Message Description

Name

Message ID

Error ID

Count

VCOLost

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

VCO lock lost indicator. If VCOLost != 0, then send failure message.

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

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 3-28 Error ID 4099 Message

Name

Message ID

Error ID

Count

InTrkCount

Payload Length: 9 bytes

2

2

1

Bytes

4

Binary (Hex)

Scale Example

0A

1003

0001

00000001

Units

ASCII (Decimal)

Scale

10

Example

4099

1

1

Table 3-29 Error ID 4099 Message Description

Name

Message ID

Error ID

Count

InTrkCount

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

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

3-15

3

3-16

Table 3-30 Error ID 4104 Message

Name

Message ID

Error ID

Count

1

2

2

Bytes

Computed Receiver

Control Checksum

Battery-Backed Receiver

Control Checksum

4

4

Battery-Backed Receiver

Control OpMode

Battery-Backed Receiver

Control Channel Count

Compute Clock Offset

Checksum

4

4

4

Battery-Backed Clock

Offset Checksum

Battery-Backed Clock

Offset

Computed Position Time

Checksum

4

4

4

Battery-Backed

Position Time Checksum

4

Payload length: 21, 17, or 11 bytes

Binary (Hex)

Scale Example

0A

1008

0004 or

0003 or

0002 xxxxxxxx aaaaaaaa

00000000 cccccccc xxxxxxxx aaaaaaaa bbbbbbbb xxxxxxxx aaaaaaaa

Units

ASCII (Decimal)

Scale Example

10

4104

4 or

3 or

2 xxxx aaaa

0 cccc xxxx aaaa bbbb xxxx aaaa

Table 3-31 Error ID 4104 Message Description

Name

Message ID

Error ID

Description

Message ID number.

Error ID (see Error ID description above).

Count

Computed Receiver

Control Checksum

Battery-Backed Receiver

Control Checksum

Battery-Backed Receiver

Control OpMode

Battery-Backed Receiver

Control Channel Count

Number of 32 bit data in message.

Computed receiver control checksum of SRAM.Data.Control structure.

Battery-backed receiver control checksum stored in

SRAM.Data.DataBuffer. CntrlChkSum.

Battery-backed receiver control checksum stored in

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 control channel count in

SRAM.Data.Control.ChannelCnt.

Valid channel count values are 0-12.

Compute Clock Offset

Checksum

Battery-Backed Clock

Offset Checksum

Computed clock offset checksum of

SRAM.Data.DataBuffer.clkOffset.

Battery-backed clock offset checksum of

SRAM.Data.DataBuffer.clkChkSum.

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Table 3-31 Error ID 4104 Message Description (Continued)

Name

Battery-Backed Clock

Offset

Computed Position Time

Checksum

Battery-Backed

Position Time Checksum

Description

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 3-32 Error ID 4105 Message

Name

Message ID

Error ID

Count

TOW

Week Number 4

Payload length: 13 bytes

2

4

1

2

Bytes

Binary (Hex)

Scale Example

0A

1009

Units

0002 xxxxxxxx seconds aaaaaaaa

ASCII (Decimal)

Scale Example

10

4105

2 xxxx aaaa

Table 3-33 Error ID 4105 Message Description

Name

Message ID

Error ID

Count

TOW

Week Number

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

GPS time of week in seconds. Range 0 to 604800 seconds.

GPS week number.

3-17

3

3-18

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 3-34 Error ID 4106 Message

Name

Message ID

Error ID

Count

Payload length: 5 bytes

2

2

1

Bytes

Binary (Hex)

Scale Example

0A

100A

0000

Units

ASCII (Decimal)

Scale

10

Example

4106

0

Table 3-35 Error ID 4106 Message Description

Name

Message ID

Error ID

Count

Description

Message ID number.

Error ID (see Error ID description above).

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 3-36 Error ID 4107 Message

Name

Message ID

Error ID

Count

Payload length: 5 bytes

1

2

2

Bytes

Binary (Hex)

Scale Example

0A

100B

0000

Units

ASCII (Decimal)

Scale Example

10

4107

0

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Table 3-37 Error ID 4107 Message Description

Name

Message ID

Error ID

Count

Description

Message ID number.

Error ID (see Error ID description above).

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 3-38 Error ID 8193 Message

Name

Message ID

Error ID

Count uartAllocError

Payload length: 9 bytes

2

2

1

Bytes

4

Binary (Hex)

Scale Example

0A

2001

0001

00000001

Units

ASCII (Decimal)

Scale

10

Example

8193

1

1

Table 3-39 Error ID 8193 Message Description

Name

Message ID

Error ID

Count uartAllocError

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

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

3-19

3

3-20

Table 3-40 Error ID 8194 Message

Name

Message ID

Error ID

Count

Number of in process errors.

Millisecond errors 4

Payload length: 13 bytes

2

4

1

2

Bytes

Binary (Hex)

Scale Example

0A

2002

0002

00000001

00000064

Units

ASCII (Decimal)

Scale Example

10

8194

2

1

Table 3-41 Error ID 8194 Message Description

Error ID

Count

Name

Message ID

Number of in process errors

Millisecond errors

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

Number of one second updates not complete on entry.

Millisecond errors caused by overruns.

100

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 3-42 Error ID 8195 Message

Name

Message ID

Error ID

Count

Payload length: 5 bytes

1

2

2

Bytes

Binary (Hex)

Scale Example

0A

2003

0000

Units

ASCII (Decimal)

Scale Example

10

8195

0

Table 3-43 Error ID 8195 Message Description

Name

Message ID

Error ID

Count

Description

Message ID number.

Error ID (see Error ID description above).

Number of 32 bit data in message.

SiRF Binary Protocol Reference ManualSeptember 2004

3

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 3-44 Command Acknowledgment

Name Bytes

Message ID 1

ACK ID 1

Payload length: 2 bytes

Binary (Hex)

Scale Example

0x0B

0x92

Units

ASCII (Decimal)

Scale Example

11

146

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 3-45 Command N’Acknowledgment

Name

Message ID

Bytes

1

N’Ack ID 1

Payload length: 2 bytes

Binary (Hex)

Scale Example

0x0C

0x92

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.

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 3-46).

Example:

A0A2002A—Start Sequence and Payload Length

Output Messages 3-21

3

0D081D002A00320F009C0032....—Payload

....B0B3—Message Checksum and End Sequence

Table 3-46 Visible List

Name

Message ID

Visible SVs

Ch 1 - SV ID

Ch 1 - SV Azimuth

Ch 1 - SV Elevation

Ch 2 - SV ID

Bytes

1

1

1

2

2

1

Binary (Hex)

Scale Example

0D

08

10

002A

0032

0F

Units

degrees degrees

ASCII (Decimal)

Scale Example

13

8

16

42

50

15

Ch 2 - SV Azimuth

Ch 2 - SV Elevation

2

2

009C

0032 degrees degrees

156

50

...

Payload length: variable (2 + 5 times number of visible SVs up to maximum of 62 bytes)

Almanac Data - Message ID 14

Output Rate: Response to poll

Table 3-47 Contents of Message ID 14

Name

Message ID

SV ID

Almanac Week & Status

Data

1

Checksum

Payload length: 30 bytes

Bytes Description

1

1

2

Hex 0x0E (decimal 14)

SV PRN code, hex 0x01..0x02, decimal 1..32

24

2

10-bit week number in 10 MSBs, status in 6 LSBs (1 = good; 0 = bad)

UINT16[12] array with sub-frame data.

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 3-48 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.

3-22

SiRF Binary Protocol Reference ManualSeptember 2004

3

Table 3-48 Byte Positions Between Navigation Message and Data Array

4

5

5

5

6

6

6

Navigation Message

Word Byte

3

3

MSB

Middle

3

4

4

LSB

MSB

Middle

LSB

MSB

Middle

LSB

MSB

Middle

LSB

[0]

[0]

[1]

[1]

[2]

[3]

[3]

[4]

[4]

Data Array

Word Byte

[2]

[5]

[5]

LSB

MSB

LSB

MSB

LSB

MSB

LSB

MSB

LSB

MSB

LSB

MSB

Navigation Message

Word Byte

7

7

MSB

Middle

8

9

9

9

10

7

8

8

10

10

LSB

MSB

Middle

LSB

MSB

Middle

LSB

MSB

Middle

LSB

[8]

[9]

[9]

[10]

[10]

[11]

[11]

[7]

[7]

[8]

[6]

[6]

Data Array

Word Byte

MSB

LSB

MSB

LSB

MSB

LSB

MSB

LSB

MSB

LSB

MSB

LSB

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 3-47 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.

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 3-49 Contents of Message ID 14

Name

Message ID

SV ID

Data

1

Payload length: 92 bytes

Bytes Description

1

1

90

Hex 0x0E (decimal 14)

SV PRN code, hex 0x01..0x02, decimal 1..32

UINT16 [3][15] array with sub-frames 1..3 data.

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 subframe 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 3-50 shows where each byte of the sub-

frame is stored in the row of 16-bit words.

Output Messages 3-23

3

Table 3-50 Byte Positions Between Navigation Message and Data Array

Navigation Message

Word Byte

2 (HOW) MSB

2 Middle

5

6

6

6

4

5

5

2

3

3

3

4

4

LSB

MSB

Middle

LSB

MSB

Middle

LSB

MSB

Middle

LSB

MSB

Middle

LSB

Data Array

Word Byte

[][1]

[][2]

[][2]

[][3]

[][3]

[][4]

[][4]

[][5]

[][5]

[][6]

[][6]

[][7]

[][7]

[][8]

[][8]

LSB

MSB

LSB

MSB

LSB

MSB

LSB

MSB

LSB

MSB

LSB

MSB

MSB

MSB

MSB

8

9

9

9

10

10

10

Navigation Message

Word Byte

7

7

MSB

Middle

7

8

8

LSB

MSB

Middle

LSB

MSB

Middle

LSB

MSB

Middle

LSB

Data Array

Word Byte

[][9]

[][9]

MSB

LSB

[][10] MSB

[][10] LSB

[][11] MSB

[][11] LSB

[][12] MSB

[][12] LSB

[][13] MSB

[][13] LSB

[][14] MSB

[][14] LSB

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.

Test Mode 1 - Message ID 16

Output Rate: Variable - set by the period as specified in message ID 150

Example:

A0A20011—Start Sequence and Payload Length

100015001E000588B800C81B5800040001—Payload

02D8B0B3—Message Checksum and End Sequence

Table 3-51 Test Mode 1 Data

Name

Message ID

SV ID

Period

Bit Sync Time

Bit Count

Poor Status

Good Status

Parity Error Count

Lost VCO Count

Payload length: 17 bytes

2

2

2

2

2

2

2

1

2

Bytes

Binary (Hex)

Scale Example

10

0015

001E

0005

88B8

00C8

1B58

0004

0001

Units

sec sec

ASCII (Decimal)

Scale Example

16

21

30

5

35000

200

7000

4

1

3-24

SiRF Binary Protocol Reference ManualSeptember 2004

3

Table 3-52 Detailed Description of Test Mode 1 Data

Name

Message ID

SV ID

Period

Description

Message I.D. number.

The number of the satellite being tracked.

The total duration of time (in seconds) that the satellite is tracked.

Bit Sync Time

Bit Count

Poor Status

Good Status

The time it takes for channel 0 to achieve the status of 37.

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 total number of bits that can be demodulated by the receiver is 12000 (50BPS x 20sec x 12 channels).

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. As an example, the total number of status counts for a 60 second period is 7200 (12 channels x 60 sec x 10 / sec).

This value is derived from phase accumulation time. Phase accumulation is the amount of time a receiver maintains phase lock. Every 100msec of phase lock equates to 1 good status count.

Parity Error Count The number of word parity errors. This occurs when the parity of the transmitted word does not match the receiver’s computed parity.

Lost VCO Count 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 causes a VCO lost lock.

Differential Corrections - Message ID 17

Message ID 17 provides the RTCM data received from a DGPS source. The data is sent as a SiRF Binary message and is based on the RTCM SC-104 format. To interpret the data, see RTCM Recommended Standards for Differential GNSS by the Radio

Technical Commission for Maritime Services. Data length and message output rate will vary based on received data.

Table 3-53 RTCM message

Name

Message ID

Bytes

1

Data length

Data

1

2 variable

Payload length: variable

Example (Hex)

11

002D

1. Data length and message output rate will vary based on received data.

Example (Decimal)

17

45

OkToSend - Message ID 18

Output Rate: Two messages per power-saving cycle

Example:

A0A20002—Start Sequence and Payload Length

1200—Payload

Output Messages 3-25

3

0012B0B3—Message Checksum and End Sequence

Table 3-54 Almanac Data

Name

Message ID

Send Indicator

1

Payload length: 2 bytes

1

1

Bytes

Binary (Hex)

Scale

12

00

Example Units

ASCII (Decimal)

Scale

1. 0 implies that CPU is about to go OFF, OkToSend==NO, 1 implies CPU has just come ON, OkToSend==YES

18

00

Example

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).

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

Table 3-55 Navigation Parameters

Name

Message ID

Sub ID

1

Reserved

Altitude Hold Mode

2

Altitude Hold Source

2

Altitude Source Input

2

Degraded Mode

2

Degraded Timeout

2

DR Timeout

2

Track Smooth Mode

2

Static Navigation

3

3SV Least Squares

4

Reserved

DOP Mask Mode

5

Navigation Elevation Mask

6

Navigation Power Mask

7

Reserved

DGPS Source

8

DGPS Mode

9

4

1

2

1

4

1

1

1

1

1

1

1

2

1

1

1

1

3

Bytes

1

Binary (Hex)

Scale Example

13

00

00

01

00

00

00

00

0000

1E

0F

01

00000000

04

004B

1C

00000000

02

00

Units

m sec sec

ASCII (Decimal)

Scale Example

19

3-26

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Table 3-55 Navigation Parameters (Continued)

Name

DGPS Timeout

9

Reserved

LP Push-to-Fix

10

LP On-time

10

LP Interval

10

User Tasks Enabled

4

User Task Interval

4

LP Power Cycling Enabled

11

LP Max. Acq. Search Time

12

LP Max. Off Time

12

APM Enabled/Power Duty Cycle

13,14

Number of Fixes

14

Time Between Fixes

14

Horizontal/Vertical Error Max

15

Response Time Max

14

Time/Accu & Time/Duty Cycle Priority

16

Payload length: 65 bytes

2

2

1

1

1

4

4

1

1

4

4

1

4

1

Bytes

1

4

Binary (Hex)

Scale Example

1E

00000000

00

000003E8

000003E8

00

00000000

00

Units

sec

00000000 sec

00000000 sec

00

0000

0000

00

00

00 sec m sec

ASCII (Decimal)

Scale Example

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 2-19.

3. These values are set by message ID 143. See description of values in Table 2-28.

4. These parameters are set in the software and are not modifiabl e via the User Inteface.

5. These values are set by message ID 137. See description of values in Table 2-22.

6. These values are set by message ID 139. See description of values in Table 2-26.

7. These values are set by message ID 140. See description of values in Table 2-27.

8. These values are set by message ID 133. See description of values in Table 2-14.

9. These values are set by message ID 138. See description of values in Table 2-24.

10. These values are set by message ID 151. See description of values in Table 2-36.

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 2-42.

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 3-56 Horizontal/Vertical Error

Value

0x00

0x01

Position Error

< 1 meter

0x02

0x03

0x04

0x05

< 5 meter

< 10 meter

< 20 meter

< 40 meter

< 80 meter

0x06 < 160 meter

0x07 No Maximum (disabled)

0x08 - 0xFF Reserved

3-27

3

Test Mode 2/3/4 - Message ID 20

The definition of MID 20 is different depending on the version and type of software being used. For GSW2 or SiRFDRive, MID 20 is used for as Test Mode 2 only. For

SiRFLoc or SiRFXTrac, MID is used for either Test Mode 2, Test Mode 3, or Test

Mode 4. For GSW2 software, refer to MID 46 for Test Mode 3 and Test Mode 4 results.

Output Rate: variable - set by the period as defined in message ID 150

Test Mode 2

This is supported by either GSW2, SiRFDRive, SiRFLoc, or SiRFXTrac. Test Mode 2 requires approximately 1.5 minutes of data collection before sufficient data is available.

Example:

A0A20033—Start Sequence and Payload Length

14

0001001E0002

3F70001F0D2900000000000601C600051B0E000EB41A0000000000000

0000000000000000000000000000000

—Payload

0316B0B3—Message Checksum and End Sequence

Table 3-57 Test Mode 2 Message

Name

Message ID

SV ID

Period

Bit Sync Time

Bit Count

Poor Status

Good Status

Parity Error Count

Lost VCO Count

Frame Sync Time

C/No Mean

C/No Sigma

Clock Drift Change

Clock Drift

Reserved

Reserved

Reserved

Reserved

Reserved

Reserved 4

Payload length: 51 bytes

4

2

2

2

2

2

2

2

4

4

4

4

2

2

2

2

2

2

1

Bytes

*10

*10

*10

*10

Binary (Hex)

Scale Example

14

0001

001E

0002

3F70

Units

sec sec

001F

0D29

0000

0000

0006

01C6

0005

1B0E sec

Hz

000EB41A Hz

0000

00000000

00000000

00000000

00000000

00000000

÷10

÷10

÷10

÷10

ASCII (Decimal)

Scale Example

20

1

30

2

13680

0

0

31

3369

6

45.4

0.5

692.6

96361.0

3-28

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Table 3-58 Detailed Description of Test Mode 2 Message

Name

Message ID

SV ID

Period

Bit Sync Time

Bit Count

Poor Status

Good Status

Parity Error Count

Lost VCO Count

Frame Sync

C/No Mean

C/No Sigma

Clock Drift Change

Clock Drift

Message I.D. number.

Description

The number of the satellite being tracked.

The total duration of time (in seconds) that the satellite is tracked.

The time it takes for channel 0 to achieve the status of 37.

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 total number of bits that can be demodulated by the receiver is 12000

(50BPS x 20 sec x 12 channels).

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. As an example, the total number of status counts for a 60 second period is

7200 (12 channels x 60 sec x 10 sec)

This value is derived from phase accumulation time. Phase accumulation is the amount of time a receiver maintains phase lock.

Every 100msec of phase lock equates to 1 good status count.

The number of word parity errors. This occurs when the transmitted parity word does not match the receivers parity check.

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.

The time it takes for channel 0 to reach a 3F status.

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 frequency from start and end of the test period.

Rate of change in clock bias.

Test Mode 3

This is supported by SiRFLoc and SiRFXTrac only as MID 20. Test Mode 3 requires approximately 10 seconds of data collection before sufficient data is available.

Example:

A0A20033—Start Sequence and Payload Length

14

0001001E0002

3F70001F0D2900000000000601C600051B0E000EB41A0000000000000

0000000000000000000000000000000

—Payload

0316B0B3—Message Checksum and End Sequence

Table 3-59 Test Mode 3 Message

Name

Message ID

SV ID

Period

Bit Sync Time

Bit Count

2

2

2

1

Bytes

2

Binary (Hex)

Scale Example

14

0001

001E

0002

3F70

Units

sec sec

ASCII (Decimal)

Scale Example

20

1

30

2

13680

3-29

3

3-30

Table 3-59 Test Mode 3 Message (Continued)

Name

Poor Status

Good Status

Parity Error Count

Lost VCO Count

Frame Sync Time

C/No Mean

C/No Sigma

Clock Drift Change

Clock Drift

Bad 1Khz Bit Count

Abs I20ms

Abs Q1ms

Reserved

Reserved

Reserved 4

Payload length: 51 bytes

4

2

4

4

4

4

2

2

2

2

2

2

2

2

Bytes

*10

*10

*10

*10

Binary (Hex)

Scale Example

001F

0D29

0000

0000

0006

Units

sec

01C6

0005

1B0E Hz

000EB41A Hz

0000

00000000

00000000

00000000

00000000

00000000

÷10

÷10

÷10

÷10

ASCII (Decimal)

Scale Example

0

0

31

3369

6

45.4

0.5

692.6

96361.0

Table 3-60 Detailed Description of Test Mode 3 Message

Name

Message ID

SV ID

Period

Bit Sync Time

Bit Count

Poor Status

Description

Message I.D. number.

The number of the satellite being tracked.

The total duration of time (in seconds) that the satellite is tracked.

The time it takes for channel 0 to achieve the status of 37.

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 total number of bits that can be demodulated by the receiver is 12000 (50BPS x 20sec x

12 channels).

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. As an example, the total number of status counts for a 60 second period is 7200 (12 channels x 60 sec x 10 sec)

Good Status This value is derived from phase accumulation time. Phase accumulation is the amount of time a receiver maintains phase lock. Every 100msec of phase lock equates to 1 good status count.

Parity Error Count The number of word parity errors. This occurs when the transmitted parity word does not match the receivers parity check.

Lost VCO Count

Frame Sync

C/No Mean

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.

The time it takes for channel 0 to reach a 3F status.

Calculated average of reported C/No by all 12 channels during the test period.

C/No Sigma Calculated sigma of reported C/No by all 12 channels during the test period.

Clock Drift Change Difference in clock frequency from start and end of the test period.

Clock Drift Rate of change of clock bias.

Bad 1Khz Bit Count Errors in 1ms post correlation I count values.

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Table 3-60 Detailed Description of Test Mode 3 Message (Continued)

Name

Abs I20ms

Abs Q1ms

Description

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.

Test Mode 4

This is supported by SiRFLoc and SiRFXTrac only.

Table 3-61 Test Mode 4 Message

Name

Message ID

Test Mode

Message Variant

SV ID

Period

Bit Sync Time

C/No Mean

C/No Sigma

Clock Drift Change

Clock Drift

I Count Errors

Abs I20ms 4

Abs Q1ms 4

Payload length: 29 bytes

4

2

2

2

2

2

2

2

1

1

1

Bytes

*10

*10

*10

*10

Binary (Hex)

Scale Example

14

Units

04

01

0001

001E

0002

01C6

0005

1B0E sec sec

Hz

000EB41A Hz

0003

0003AB88

0000AFF0

÷10

÷10

÷10

÷10

ASCII (Decimal)

Scale Example

20

4

1

1

30

2

45.4

0.5

692.6

96361.0

3

240520

45040

Table 3-62 Detailed Description of Test Mode 4 Message

Name

Message I.D.

Test Mode

Message Variant

SV ID

Period

Bit Sync Time

C/No Mean

C/No Sigma

Clock Drift

Clock Offset

I Count Errors

Abs I20ms

Q 1ms

Message I.D. number.

Description

3=Testmode 3, 4=Testmode 4

The variant # of the message (variant change indicates possible change in number of fields or field description).

The number of the satellite being tracked.

The total duration of time (in seconds) that the satellite is tracked.

The time it takes for channel 0 to achieve the status of 37.

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 frequency from start and end of the test period.

The internal clock offset.

Errors in 1ms post correlation I count values.

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.

3-31

3

Navigation Library Measurement Data - Message ID 28

Output Rate: Every measurement cycle (full power / continuous: 1Hz)

Example:

A0A20038—Start Sequence and Payload Length

1C00000660D015F143F62C4113F42F

417B235CF3FBE95E

468C6964B8FBC582415

CF1C375301734.....03E801F400000000—Payload

1533B0B3—Message Checksum and End Sequence

Table 3-63 Measurement Data

Name

Message I.D.

Channel

Time Tag

Satellite ID

GPS Software Time 8

Pseudorange 8

4

1

Bytes

1

1

Carrier Frequency

Carrier Phase

Time in Track

Sync Flags

C/No 1

C/No 2

C/No 3

C/No 4

1

1

1

1

2

1

4

8

C/No 5

C/No 6

C/No 7

C/No 8

C/No 9

C/No 10

Delta Range Interval 2

Mean Delta Range

Time

2

1

1

1

1

1

1

Extrapolation Time 2

Phase Error Count 1

Low Power Count 1

Payload length: 56 bytes

Scale

Binary (Hex)

Example

1C

00

Units

000660D0

15 ms

F143F62C4113F42F ms

417B235CF3FBE95E m

468C6964

Reserved

7530

17

34 m/s

N/A ms dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz dB-Hz

03E801F4

01F4 dB-Hz dB-Hz m ms

Scale

ASCII (Decimal)

Example

28

0

135000

20

2.4921113696e+005

2.1016756638e+007

43

43

43

43

1.6756767578e+004

N/A

10600

23

43

43

43

43

43

43

1000

500

0000

00

00 ms

0

0

3-32

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Note – For GPS Software Time, Psuedorange, Carrier Frequency, and Carrier Phase, the fields are either floating point (4-byte fields) or double-precision floating point (8byte 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 doubleprecision (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 Carrier Frequency contains a bias of the clock drift reported in

MID 7. 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 3-64 Sync Flag Fields

Bit Fields

[0]

[2:1]

[4:3]

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

Table 3-65 Detailed Description of the Measurement Data

Name

Message I.D.

Channel

Time Tag

Satellite ID

GPS Software Time

Pseudorange

Message I.D. number.

Description

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.

Satellite or Space Vehicle (SV) I.D. number or Pseudo-random Noise

(PRN) number.

This is GPS Time of Week (TOW) estimated by the software in milliseconds.

This is the generated pseudorange measurement for a particular SV.

3-33

3

3-34

Table 3-65 Detailed Description of the Measurement Data (Continued)

Name

Carrier Frequency

Carrier Phase

Time in Track

Sync Flags

C/No 1

Description

This is can be interpreted in two ways:

1) The delta pseudorange normalized by the reciprocal of the delta pseudorange measurement interval.

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

This is the integrated carrier phase given in meters.

The Time in Track counts how long a particular SV has been 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 a two bit fields that report the integration interval and sync value achieved for a particular channel.

1) Bit 0: Coherent Integration Interval (0 = 2 milliseconds, 1 = 10 milliseconds)

2) Bits: (1 2) = Synchronization

3) Bit: (2 1)

Value: {0 0} Not Aligned

Value: {0 1} Consistent Code Epoch Alignment

Value: {1 0} Consistent Data Bit Alignment

Value: {1 1} No Millisecond Errors

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 2

C/No 3

C/No 4

C/No 5

C/No 6

C/No 7

C/No 8

C/No 9

First 100 millisecond measurement

Second 100 millisecond measurement

Third 100 millisecond measurement

Fourth 100 millisecond measurement

Fifth 100 millisecond measurement

Sixth 100 millisecond measurement

Seventh 100 millisecond measurement

C/No 10

Delta Range Interval

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 AFC measurement or no measurement in the Carrier Frequency field for a particular channel.

Mean Delta Range Time This is the mean calculated time of the delta-pseudo range interval in milliseconds measured from the end of the interval backwards

Extrapolation Time

Eighth 100 millisecond measurement

Ninth 100 millisecond measurement

Phase Error Count

Low Power Count

This is the pseudo range extrapolation time in milliseconds, to reach the common Time tag value.

This is the count of the phase errors greater than 60 Degrees measured in the preceding second as defined for a particular channel.

This is the low power measurements for signals less than 28 dB-Hz in the preceding second as defined for a particular channel

SiRF Binary Protocol Reference ManualSeptember 2004

3

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 freq is in Hz; Carrier freq = 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 107.

This bias, nominally 96.250 kHz, is equivalent to over 18 km/s.

Navigation Library DGPS Data - Message ID 29

Output Rate: Every measurement cycle (full power / continuous : 1Hz)

Example:

A0A2001A—Start Sequence and Payload Length

1D000F00B501BFC97C673CAAAAAB3FBFFE1240A0000040A00000—Payload

0956B0B3—Message Checksum and End Sequence

Table 3-66 Measurement Data

Name

Message ID

Satellite ID

IOD

Source

1

Pseudorange Correction

Pseudorange rate Correction

Correction Age

Reserved

Reserved

Payload length: 26 bytes

4

4

2

1

1

2

4

4

4

Bytes

Binary (Hex)

Scale Example

1D

000F

Units

00B5

01

BFC97C67 m

3CAAAAAB m/sec

3FBFFE12 sec

ASCII (Decimal)

Scale

29

15

Example

181

1

-1.574109

0.020833

1.499941

1. 0 = Use no corrections, 1 = SBAS channel, 2 = External source, 3 = Internal Beacon, 4 = Set Corrections via software

Note – The fields Pseudorange Correction, Pseudorange Rate Correction, and

Correction Age are floating point values per IEEE-754. To properly interpret these in a

PC, the bytes need to be rearranged into reverse order.

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

Output Messages 3-35

3

2360B0B3—Message Checksum and End Sequence

Table 3-67 SV State Data

Name

Message ID

Satellite ID

GPS Time

Position X

Position Y

Position Z

Velocity X

Velocity Y

Velocity Z

Clock Bias

Clock Drift

Ephemeris Flag

1

Reserved

Reserved

Ionospheric Delay

Payload length: 83 bytes

1

8

8

8

1

8

8

8

8

8

4

1

4

4

4

Bytes

Binary (Hex)

Scale Example

1E

15

Units

sec m m m m/sec m/sec m/sec sec

2C64E99D s/s

01

408906C8 m

ASCII (Decimal)

Scale Example

30

21

744810909

1

1082721992

1. 0 = no valid SV state, 1 = SV state calculated from ephemeris, 2 = Satellite state calculated from almanac

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.

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 3-68 Measurement Data

Binary (Hex)

Scale Example

1F

Units

ASCII (Decimal)

Scale Example

31

Name

Message ID

Reserved

Altitude Mode

1

Altitude Source

Altitude

Degraded Mode

2

1

4

1

1

1

1

Bytes

00

00

00000000 m

01

0

0

0

1

3-36

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Table 3-68 Measurement Data (Continued)

Name

Degraded Timeout 2

Dead-reckoning Timeout 2

Bytes

Reserved

Track Smoothing Mode

Reserved

Reserved

Reserved

Reserved

DGPS Selection

4

DGPS Timeout

3

2

1

1

2

2

2

1

2

2 Elevation Nav. Mask

Reserved

Reserved

Reserved

Reserved

Reserved

Static Nav. Mode

5

2

1

2

1

2

1

Reserved

Position X

Position Y

Position Z

Position Init. Source

6

GPS Time

GPS Week

Time Init. Source

7

Drift

Drift Init. Source

8

Payload length: 84 bytes

2

8

8

8

1

8

2

1

8

1

2

Binary (Hex)

Scale Example

001E

000F

00

00

0000

000F

00

02

0434

02

02

Units

sec sec sec deg m m m sec sec

Hz sec

ASCII (Decimal)

Scale Example

30

15

0

0

0

15

0

2

1076

2

2

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.

3-37

3

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 3-69 Geodetic Navigation Data

Name

Message ID

Nav Valid

Bytes Description

1 Hex 0x29 (decimal 41)

2 0x0000 = valid navigation; else

Bit 0 ON : invalid GPS position (< 5 SVs)

Bits 1 - 2 : Reserved.

Bits 8 - 14 : Reserved.

(The following are for SiRFDRive only)

Bit 3 ON : invalid DR data

Bit 4 ON : invalid DR calibration

Bit 5 ON : GPS-based calibration unavailable

Bit 6 ON : invalid DR position fix

Bit 7 ON : invalid DR heading.

(The following is for SiRFNav only)

Bit 15 ON : no tracker data available

3-38

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

3

Table 3-69 Geodetic Navigation Data (Continued)

Name

NAV Type

Extended Week Number

TOW

UTC Year

UTC Month

UTC Day

UTC Hour

UTC Minute

UTC Second

Satellite ID List

Latitude

Longitude

Altitude from Ellipsoid

Altitude from MSL

Map Datum

1

Speed Over Ground (SOG)

Course Over Ground (COG, True) 2

Magnetic Variation 2

1

2

4

4

4

4

2

4

2

2

1

2

4

2

Bytes Description

2 Bits 0 - 2 : GPS position fix type

000 = no navigation

001 = 1-SV KF solution

010 = 2-SV KF solution

011 = 3-SV KF solution

101 = 2-D least-squares solution

110 = 3-D least-squares solution

111 = DR solution (no SV)

Bit 3 : Reserved

Bits 4 - 5 : 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 exceeded

Bit 7 ON : DGPS corrections applied

Bit 8 : DR type

1 = sensor DR

0 = velocity DR if Bits 0 - 2 = 111;

else check Bits 14-15 for DR error status

Bit 9 ON : navigation solution validated

Bit 10 ON : velocity DR timeout

Bit 11 ON : solution edited by user input

Bit 12 ON : invalid velocity

Bit 13 ON : altitude hold disabled

Bits 14 - 15 : sensor DR error status

00 = GPS-only navigation

01 = DR in calibration

10 = DR sensor errors

11 = DR in test

2 GPS week number; week 0 started 1980/01/06.

This value is extended beyond the 10-bit value reported by the SVs.

GPS time of week in seconds x 10

3

.

UTC time and date. Seconds reported as integer milliseconds only.

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 10

7

.

In degrees (+ = East) x 10

7

.

In meters x 10

2

.

In meters x 10

2

.

See footnote.

In m/s x 10

2

.

In degrees from true north x 10

2

.

Not implemented.

3-39

3

Table 3-69 Geodetic Navigation Data (Continued)

Name

Climb Rate

Heading Rate

Bytes Description

2 In m/s x 10

2

.

2

Estimated Horizontal Position Error 4 deg/s x 10

2

(SiRFDRive only).

EHPE in meters x 10

2

(SiRFDRive only).

Estimated Vertical Position Error

Estimated Time Error

4

4

Estimated Horizontal Velocity Error 2

EVPE in meters x 10

2

(SiRFDRive only).

ETE in seconds x 10

2

(SiRFDRive only).

EHVE in m/s x 10

2

(SiRFDRive only).

Clock Bias

Clock Bias Error

Clock Drift

Clock Drift Error

4

4

4

4

In m/s x 10

2

.

In meters x 10

2

(SiRFDRive only).

In m/s x 10

2

.

In m/s x 10

2

(SiRFDRive only).

Distance Traveled since Reset 4 In meters (SiRFDRive only).

Distance Traveled error 2

Heading Error

Number of SVs in Fix

HDOP

2

1

1

In meters (SiRFDRive only).

In degrees x 10

2

(SiRFDRive only).

Count of SVs indicated by SV ID list.

Horizontal Dilution of Precision x 5 (0.2 resolution).

Reserved

Payload length: 91 bytes

1

1. 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: 10

2

; actual value: 23.45.

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

Name

MID

Polled Msg ID

Bytes

1

1

Scale Units Description

=0x2B

=0x8F (example)

Data Variable Depends on the polled message ID length

Payload length: Variable length bytes (3 bytes in the example))

3-40

SiRF Binary Protocol Reference ManualSeptember 2004

3

DR Raw Data - Message ID 45

1-Hz DR raw data from ADC (output after collection of data).

Name

MID

1st 100-ms time-tag

1st 100-ms ADC2 average measurement 2

1

4

Bytes Scale Units Description

=0x30 ms

Reserved

1st 100-ms odometer count

1st 100-ms GPIO input states

2

2

1 Bit 0: reverse ms 2nd 100-ms time-tag 4

2nd 100-ms ADC2 average measurement 2

Reserved 2

2nd 100-ms odometer count

2nd 100-ms GPIO input states

...

2

1 Bit 0: reverse

10th 100-ms time-tag 4

10th 100-ms ADC2 average measurement 2

Reserved 2

10th 100-ms odometer count

10th 100-ms GPIO input states

Payload length: 111 bytes

2

1 ms

Bit 0: reverse

Test Mode 3/4 - Message ID 46

Note – This message is used in GSW2, SiRFDRive, and GSW3 software. For

SiRFLoc, and SiRFXTrac software, refer to MID 20.

Output Rate: Variable - set by the period as defined in message ID 150

Example:

A0A20033—Start Sequence and Payload Length

2E

0001001E0002

3F70001F0D2900000000000601C600051B0E000EB41A0000000000000

0000000000000000000000000000000

—Payload

0316B0B3—Message Checksum and End Sequence

Table 3-70 Test Mode 3 Message

Name

Message ID

SV ID

1

Bytes

2

Binary (Hex)

Scale Example

2E

0001

Units

ASCII (Decimal)

Scale Example

46

1

Output Messages 3-41

3

3-42

Table 3-70 Test Mode 3 Message (Continued)

Name

Period

Bit Sync Time

Bit Count

Poor Status

Good Status

Parity Error Count

Lost VCO Count

Frame Sync Time

C/No Mean

C/No Sigma

Clock Drift Rate

Clock Drift

Bad 1Khz Bit Count

Abs I20ms

Abs Q1ms

Reserved

Reserved

Reserved

Payload length: 51 bytes

4

2

4

4

4

4

4

2

2

2

2

2

2

2

2

2

2

2

Bytes

*10

*10

*10

*10

Binary (Hex)

Scale Example

001E

0002

3F70

001F

0D29

0000

0000

0006

Units

sec sec sec

01C6

0005

1B0E Hz

000EB41A Hz

0000

00000000

00000000

00000000

00000000

00000000

÷10

÷10

÷10

÷10

ASCII (Decimal)

Scale Example

30

2

13680

31

3369

0

0

6

45.4

0.5

692.6

96361.0

Table 3-71 Detailed Description of Test Mode 3 Message

Name

Message ID

SV ID

Period

Bit Sync Time

Bit Count

Poor Status

Good Status

Description

Message I.D. number.

The PRN code of the satellite being tracked.

The total duration of time (in seconds) that the satellite is tracked.

The time it takes for channel 0 to achieve state 0x37.

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 total number of bits that can be demodulated by the receiver is 12000 (50 BPS x 20 sec x 12 channels).

This value is derived from phase accumulation time. Phase accumulation is the amount of time a receiver maintains phase lock. Every 100 msec of loss of phase lock equates to 1 poor status count. 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 value is derived from phase accumulation time. Phase accumulation is the amount of time a receiver maintains phase lock. Every 100 msec of phase lock equates to 1 good status count.

Parity Error Count The number of navigation message word parity errors. This occurs when the transmitted parity word does not match the receiver’s parity check.

Lost VCO Count The number of 1 msec VCO lost lock 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.

Frame Sync The time it takes for channel 0 to reach state 0x3F.

C/No Mean

C/No Sigma

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.

SiRF Binary Protocol Reference ManualSeptember 2004

3

Table 3-71 Detailed Description of Test Mode 3 Message (Continued)

Name

Clock Drift Rate

Description

Difference in clock drift from start and end of the test period.

Clock Drift The measured internal clock drift.

Bad 1Khz Bit Count Errors in 1ms post correlation I count values.

Abs I20ms

Abs Q1ms

Absolute value of the 20 ms 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.

DR Navigation Status - Message ID 48 (Sub ID 1)

DR navigation status information (output on every navigation cycle).

Name

MID

Sub ID

DR navigation

DR data

DR calibration & DR gyro bias calibration

Bytes Description

1

1

1

=0x30

=0x01

2

0x00 = valid DR navigation; else

Bit 0 ON : GPS-only navigation required

Bit 1 ON : speed not zero at start-up

Bit 2 ON : invalid DR position

Bit 3 ON : invalid DR heading

Bit 4 ON : invalid DR calibration

Bit 5 ON : invalid DR data

Bit 6 ON : system in Cold Start

Bit 7 : Reserved.

0x0000 = valid DR data; else

Bit 0 ON : DR gyro subsystem not operational

Bit 1 ON : DR speed subsystem not operational

Bit 2 ON : DR measurement time < 80 ms

Bit 3 ON : invalid serial DR message checksum

Bit 4 ON : no DR data for > 2 sec

Bit 5 ON : DR data timestamp did not advance

Bit 6 ON : DR data byte stream all 0x00 or 0xFF

Bit 7 ON : composite wheel-tick count jumped > 255 between successive DR messages

Bit 8 ON : input gyro data bits (15) of 0x0000 or 0x3FFF

Bit 9 ON : > 10 DR messages received in 1 sec

Bit 10 ON : time difference between two consecutive measurements is <= 0

Bits 11 - 15 : Reserved.

1 Bits 0 - 3 : 0000 = valid DR calibration; else

Bit 0 ON : invalid DR gyro bias calibration

Bit 1 ON : invalid DR scale factor calibration

Bit 2 ON : invalid DR speed scale factor calibration

Bit 3 ON : GPS calibration required but not ready.

Bits 4 - 6 : 000 = valid DR gyro bias calibration; else

Bit 4 ON : invalid DR data

Bit 5 ON : zero-speed gyro bias cal not updated

Bit 6 ON : heading rate scale factor <= -1.

Bit 7 : Reserved.

Output Messages 3-43

3

3-44

Name

DR gyro scale factor calibration & DR speed scale factor calibration

1

Bytes Description

Bits 0 - 3 : 0000 = valid DR gyro scale factor calibration; else

Bit 0 ON : invalid DR heading

Bit 1 ON : invalid DR data

Bit 2 ON : invalid DR position

Bit 3 ON : heading rate scale factor <= -1.

Bits 4 - 7 : 0000 = valid DR speed scale factor calibration; else

Bit 4 ON : invalid DR data

Bit 5 ON : invalid DR position

Bit 6 ON : invalid GPS velocity for DR

Bit 7 ON : DR speed scale factor <= -1.

DR Nav across reset &

DR position

1

DR heading 1

Bits 0 - 1 : 00 = valid DR nav across reset; else

Bit 0 ON : invalid DR navigation

Bit 1 ON : speed > 0.01 m/s.

Bit 2 : Reserved.

Bits 3 - 6 : 0000 = valid DR position; else

Bit 3 ON : speed not zero at start-up

Bit 4 ON : invalid GPS position

Bit 5 ON : system in Cold Start

Bit 6 ON : invalid DR data.

Bit 7 : Reserved.

Bits 0 - 6 : 0000000 = valid DR heading; else

Bit 0 ON : speed not zero at start-up

Bit 1 ON : invalid GPS position

Bit 2 ON : invalid GPS speed

Bit 3 ON : GPS did not update heading

Bit 4 ON : delta GPS time < 0 and > 2

Bit 5 ON : system in Cold Start

Bit 6 ON : invalid DR data.

Bit 7 : Reserved.

DR gyro subsystem &

DR speed subsystem

1

DR Nav state integration ran & zerospeed gyro bias calibration updated

1

Bits 0 - 3 : 0000 = updated DR gyro bias & scale factor calibration; else

Bit 0 ON : invalid DR data

Bit 1 ON : invalid DR position

Bit 2 ON : invalid GPS velocity for DR

Bit 3 ON : GPS did not update heading.

Bits 4 - 6 : 000 = updated DR speed calibration; else

Bit 4 ON : invalid DR data

Bit 5 ON : invalid DR position

Bit 6 ON : invalid GPS velocity for DR.

Bit 7 : 0 = updated DR navigation state.

Bits 0 - 7 : 00000000 = GPS updated position; else

Bit 0 ON : update mode != KF

Bit 1 ON : EHPE > 50

Bit 2 ON : no previous GPS KF update

Bit 3 ON : GPS EHPE < DR EHPE

Bit 4 ON : DR EHPE < 50

Bit 5 ON : less than 4 SVs in GPS navigation

Bit 6 ON : no SVs in GPS navigation

Bit 7 ON : DR-only navigation required.

SiRF Binary Protocol Reference ManualSeptember 2004

Output Messages

Name

Updated DR gyro bias/scale factor calibration, updated DR speed calibration, & updated DR Nav state

1

Bytes Description

Bits 0 - 3 : 0000 = updated DR gyro bias & scale factor calibration; else

Bit 0 ON : invalid DR data

Bit 1 ON : invalid DR position

Bit 2 ON : invalid GPS velocity for DR

Bit 3 ON : GPS did not update heading.

Bits 4 - 6 : 000 = updated DR speed calibration; else

Bit 4 ON : invalid DR data

Bit 5 ON : invalid DR position

Bit 6 ON : invalid GPS velocity for DR.

Bit 7 : 0 = updated DR navigation state.

GPS updated position 1

GPS updated heading 1

Bits 0 - 7 : 00000000 = GPS updated position; else

Bit 0 ON : update mode != KF

Bit 1 ON : EHPE > 50

Bit 2 ON : no previous GPS KF update

Bit 3 ON : GPS EHPE < DR EHPE

Bit 4 ON : DR EHPE < 50

Bit 5 ON : less than 4 SVs in GPS navigation

Bit 6 ON : no SVs in GPS navigation

Bit 7 ON : DR-only navigation required.

Bits 0 - 6 : 0000000 = GPS updated heading; else

Bit 0 ON : update mode != KF

Bit 1 ON : GPS speed <= 5 m/s

Bit 2 ON : less than 4 SVs in GPS navigation

Bit 3 ON : horizontal velocity variance > 1 m

2

/s

2

Bit 4 ON : GPS heading error >= DR heading error

Bit 5 ON : GPS KF not updated

Bit 6 ON : incomplete initial speed transient.

Bit 7 : Reserved.

GPS position & GPS velocity

1 Bits 0 - 2 : 000 = valid GPS position for DR; else

Bit 0 ON : less than 4 SVs in GPS navigation

Bit 1 ON : EHPE > 30

Bit 2 ON : GPS KF not updated.

Bit 3 : Reserved.

Bits 4 - 7 : 0000 = valid GPS velocity for DR; else

Bit 4 ON : invalid GPS position for DR

Bit 5 ON : EHVE > 3

Bit 6 ON : GPS speed < 2 m/s

Bit 7 ON : GPS did not update heading.

Reserved

Payload length: 17 bytes

2

3

3-45

3

DR Navigation State - Message ID 48 (Sub ID 2)

DR speed, gyro bias, navigation mode, direction, and heading (output on every navigation cycle).

Name

MID

Sub ID

DR speed

DR speed error

DR speed scale factor 2

DR speed scale factor error

2

2

2

Bytes Scale Units Description

1

1

=0x30

=0x02

10

2

10

4

10

4

10

4 m/s m/s

DR heading rate

DR heading rate error 2

DR gyro bias

DR gyro bias error

DR gyro scale factor

DR gyro scale factor error

2

2

2

2

2

10

2

10

2

10

2

10

2

10

4

10

4 deg/s deg/s deg/s deg/s

10

2 m Total DR position error

4

Total DR heading error 2 10

2 deg

DR Nav mode control 1 1=GPS-only nav required (no DR nav allowed);

2=GPS + DR nav using default/stored calibration;

3=GPS + DR nav using current GPS calibration;

4=DR-only nav (no GPS nav allowed).

DR direction: 0 = forward; 1 = reverse.

Reverse

DR heading

Payload length: 32 bytes

1

2 10

2 deg/s

Navigation Subsystem - Message ID 48 (Sub ID 3)

Heading, heading rate, speed, and position of both GPS and DR (output on every navigation cycle).

Name

MID

Sub ID

GPS heading rate

GPS heading rate error 2

GPS heading 2

1

2

Bytes Scale Units Description

1 =0x30

=0x03 deg/s 10

2

10

2

10

2 deg/s deg

3-46

SiRF Binary Protocol Reference ManualSeptember 2004

Name

GPS heading error

GPS speed

GPS speed error

GPS position error

DR heading rate

Bytes Scale Units Description

2 10

2 deg

2

2

4

10

2

10

2

10

2 m/s m/s m

2

DR heading rate error 2

DR heading

DR heading error

DR speed

DR speed error

DR position error

2

2

2

2

4

10

2

10

2

10

2

10

2

10

2

10

2

10

2 deg/s deg/s deg deg m/s m/s m

Reserved

Payload length: 36 bytes

2

DR Gyro Factory Calibration - Message ID 48 (Sub ID 6)

DR gyro’s factory calibration parameters (response to poll).

Name

MID

Sub ID

Calibration

Reserved

Payload length: 4 bytes

1

1

1

Bytes Scale Units Description

1 =0x30

=0x06

Bit 0 : Start gyro bias calibration.

Bit 1 : Start gyro scale factor calibration.

Bits 2 - 7 : Reserved.

DR Sensors’ Parameters - Message ID 48 (Sub ID 7)

DR sensors’ parameters (response to poll).

Name

MID

Sub ID 1

Base speed scale factor 1

Bytes Scale Units

1 ticks/m

Base gyro bias 2

Base gyro scale factor 2

10

4

10

3 mV mV/deg/s

Description

=0x30

=0x07

Payload length: 7 bytes

3

Output Messages 3-47

3

DR Data Block - Message ID 48 (Sub ID 8)

1-Hz DR data block (output on every navigation cycle).

Name

MID

Sub ID

Measurement type

Valid count

Reverse indicator

1st 100-ms time-tag

1st 100-ms DR speed

1st 100-ms gyro heading rate 1

2 nd

100-ms time-tag 1

2 nd

100-ms DR speed 1

2 nd

100-ms gyro heading rate 1

...

10 th

100-ms time-tag 1

10 th

100-ms DR speed 1

10 th

100-ms gyro heading rate 1

Payload length: 86 bytes

1

1

1

1

Bytes Scale Units Description

1

1

1

=0x30

=0x08

0 = odometer and gyroscope (always);

1 .. 255 = Reserved.

Count (1 .. 10) of valid DR measurements.

Bits 0 .. 9, each bit:

ON = reverse, OFF = forward.

10

10

10

10

10

10

2

2

2

2

2

2 ms m/s deg/s ms m/s deg/s ms m/s deg/s

SBAS Parameters - Message ID 50

Outputs SBAS operating parameter information including SBAS PRN, mode, timeout, timeout source, and SBAS health status.

Output Rate: Every measurement cycle (full power / continuous: 1Hz)

Example:

A0A2000D—Start Sequence and Payload Length

327A001200000000000000000000—Payload

BEBEB0B3—Message Checksum and End Sequence

Table 3-72 SBAS Parameters Message

Name

Message ID

SBAS PRN

SBAS Mode

DGPS Timeout

Flag bits

1

1

1

1

1

Bytes Scale

00

12

00

32

7A

Binary (Hex)

Example Units

ASCII (Decimal)

Scale Example

50

122

0

18

0

3-48

SiRF Binary Protocol Reference ManualSeptember 2004

3

Table 3-72 SBAS Parameters Message (Continued)

Spare

Name

8

Bytes

Payload length: 13 bytes

Scale

Binary (Hex)

Example

0000000000000000

Units

ASCII (Decimal)

Scale Example

00000000

Table 3-73 Detailed Description of SBAS Parameters

Name

Message ID

SBAS PRN

Message I.D. number.

0=Auto mode

SBAS PRN 120-138= Exclusive

Description

SBAS Mode 0=Testing, 1=Integrity

Integrity mode will not accept SBAS corrections if the SBAS satellite is transmitting in a test mode.

Testing mode will accept and use SBAS corrections even if the SBAS satellite is transmitting in a test mode.

DGPS Timeout Range 1-250 seconds. 0 returns to default timeout.

The last received corrections will continue to be applied to the navigation solution for the timeout period. If the timeout period is exceeded before a new correction is received, no corrections will be applied.

Flag bits Bit 0: Timeout; 0=Default 1=User

Bit 1: Health; Reserved

Bit 2: Correction; Reserved

Bit 3: SBAS PRN; 0=Default 1=User

Spare Spare

PPS Time - Message ID 52

Output time associated with current 1 PPS pulse. Each message will be output within a few hundred ms after the 1 PPS pulse is output and will tell the time of the pulse that just occurred. The MID 52 will report the UTC time of the 1 PPS pulse when it has a current status message from the satellites. If it does not have a valid status message, it will report time in GPS time, and will so indicate by means of the status field.

Output Rate: 1 Hz (Synchronized to PPS)

Example:

A0A20013—Start Sequence and Payload Length

3415122A0E0A07D3000D000000050700000000—Payload

0190B0B3—Message Checksum and End Sequence

Table 3-74 Timing Message Data

Message ID

Hour

Minute

Second

Day

Month

Name

1

1

1

1

1

1

Bytes

Binary (Hex)

Scale Example

34

15

12

2A

0E

0A

Units

ASCII (Decimal)

Scale Example

52

21

18

42

15

10

Output Messages 3-49

3

Table 3-74 Timing Message Data

Name

Year

UTCOffsetInt

UTCOffsetFrac 4

Status (see Table 3-75)

1

Reserved

Payload length: 19 bytes

4

2

2

Bytes

Binary (Hex)

Scale Example

10

9

07D3

000D

00000005

7

00000000

Units

sec

ASCII (Decimal)

Scale Example

10

9

2003

13

0.000000005

7

00000000

0

1

Table 3-75 Status Byte Field in Timing Message

Bit Fields

2

3-7

Meaning

When set, bit indicates that time is valid

When set, bit indicates that UTC time is reported in this message.

Otherwise it is GPS time.

When set, bit indicates that UTC to GPS time information is current, i.e. IONO/UTC time is less than 2 weeks old.

Reserved

Reserved - Message ID 225

This output message is SiRF proprietary.

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 3-76 Development Data

Name

Message ID

Data

1

Payload length: variable

1

Bytes

variable

Binary (Hex)

Scale Example

FF

1. Data area consists of at least 1 byte of ASCII text information.

Units

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.

3-50

SiRF Binary Protocol Reference ManualSeptember 2004

Additional Information

4

TricklePower Operation in DGPS Mode

When in TricklePower mode, serial port DGPS corrections are supported. The CPU goes into sleep mode but will wake up in response to any interrupt. This includes

UARTs. Messages received during the TricklePower ‘off’ period are buffered and processed when the receiver awakens for the next TricklePower cycle.

GPS Week Reporting

The GPS week number represents the number of weeks that have elapsed since the week of January 6, 1980. Per ICD-GPS-200, the satellites only transmit the 10 LSBs of th week number. On August 22, 1999, the week number became 1024, which was reported by the satellites as week 0. SiRF receivers resolve the reported week number internally. When messages report the week number, that value will either be truncated to the 10 LSBs or will be called an extended week number (see messages 7 and 41 for examples).

4-1

4

4-2

SiRF Binary Protocol Reference ManualSeptember 2004

ADDITIONAL AVAILABLE PRODUCT INFORMATION

Part Number Description

1050-0042

NMEA Reference Manual

1050-0041

1065-0136

SiRF Binary Protocol Reference Manual

Product Inserts

1050-0056

1050-0053

1050-0054

1050-0055

1055-1034

1055-1035

SiRFstarIII System Development Kit User Guide

GSW3 Software System Development Kit Reference Manual

S3SDK Board System Development Kit Reference Manual

GSP3 Chip System Development Kit Reference Manual

GSP3f Data Sheet

GRF3w Data Sheet

Available on the Developer Web Site

SSIII System Guidelines and Considerations APNT3001

APNT3002

APNT3003

APNT3004

PCB Design Guidelines for SSIII Implementations

Back-Up Power Operation for SSIII Architectures

Troubleshooting Notes for SSIII Board Development

Co-Location and Jamming Considerations for SSIII Integration APNT3005

APNT3006

APNT3007

APNT3008

GPIO Pin Functionality for SSIII

I/O Message Definitions for SSIII

Implementing User Tasks in the SSIII Architecture

Effects of User Tasks on GPS Performance for SSIII APNT3009

APNT3010

APNT3011

APNT3012

APNT3014

Advanced Power Management (APM) Considerations for SSIII

Multi-ICE Testing Issues for SSIII

Production Testing of SSIII Modules

Automotive Design Considerations for SSIII

SiRF Technology Inc.

148 East Brokaw

San Jose, CA 95112

Tel: +1-408-467-0410

Fax: +1-408-467-0420

Email: [email protected]

Website: http://www.sirf.com

SiRF Texas

Tel: +1-972-239-6988

Fax: +1-972-239-0372

Email: [email protected]

SiRF United Kingdom

Tel: +44-1344-668390

Fax: +44-1344-668157

Email: [email protected]

SiRF Japan

Tel: +81 44829-2186

Fax: +81 44829-2187

Email: [email protected]

SiRF France

Tel: +33-6-0717-7862

Fax: +44-1344-668157

Email: [email protected]

SiRF Germany

Tel: +49-81-529932-90

Fax: +49-81-529931-70

Email: [email protected]

SiRF Taiwan

Tel: +886-2-2723-7853

Fax: +886-2-2723-7854

Email: [email protected]

SiRF India

Tel: +91-120-251-0256

Fax: +91-120-251-0584

Email: [email protected]

S3SDK Board System Development Kit Reference Manual

© 2004 SiRF Technology Inc. All rights reserved.

Products made, sold or licensed by SiRF Technology, Inc. are protected by one or more of the following United States patents: 5,488,378; 5,504,482; 5,552,794; 5,592,382; 5,638,077;

5,883,595; 5,897,605; 5,901,171; 5,917,383; 5,920,283; 6,018,704; 6,037,900; 6,041,280; 6,044,105; 6,047,017; 6,081,228; 6,114,992; 6,125,325; 6,198,765; 6,236,937; 6,249,542; 6,278,403;

6,282,231; 6,292,749; 6,297,771; 6,301,545; 6,304,216; 6,351,486; 6,351,711; 6,366,250; 6,389,291; 6,393,046; 6,400,753; 6,421,609; 6,427,120; 6,427,121; 6,453,238; and AU729,697.

Other United States and foreign patents are issued or pending. SiRF, SiRFStar, SiRF plus Orbit design are registered in the U.S. Patent and Trademark office. SnapLock, SnapStart, SingleSat, Foliage

Lock, TricklePower, Push-to-Fix, WinSiRF, SiRFLoc, SiRFDRive, SiRFNav, SiRFXTrac, SiRFSoft, SoftGPS, UrbanGPS, and Multimode Location Engine are trademarks of SiRF Technology, Inc. Other trademarks are property of their respective companies.

This document contains information on SiRF products. SiRF reserves the right to make changes in its products, specifications and other information at any time without notice. SiRF assumes no liability or responsibility for any claims or damages arising out of the use of this document, or from the use of integrated circuits based on this data sheet, including, but not limited to claims or damages based on infringement of patents, copyrights or other intellectual property rights. No license, either expressed or implied, is granted to any intellectual property rights of SiRF. SiRF makes no warranties, either express or implied with respect to the information and specification contained in this document. Performance characteristics listed in this document do not constitute a warranty or guarantee of product performance. SiRF products are not intended for use in life support systems or for life saving applications. All terms and conditions of sale are governed by the SiRF Terms and Conditions of Sale, a copy of which may obtain from your authorized SiRF sales representative.

December 2004

Please

Recycle

advertisement

Was this manual useful for you? Yes No
Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Related manuals

Download PDF

advertisement

Table of contents