Command 54h, GETSVDATA

Command Packet 54h requests satellite information. The request may be for an array of flags showing the availability of satellite information such as an ephemeris or almanac. In addition, satellites may be enabled or disabled with this command packet.

NOTE – The normal reply to Command Packet 54h is usually Report Packet 55h. However, a NAK is returned if the SV PRN is out of range (except for SV FLAGS), if the DATA SWITCH parameter is out of range, or if the requested data is not available for the designated SV.

All data in the packet flows from the data collector to the receiver.

Byte

Item

Type

Value

Meaning

0

STX

1 (Char)

02h

Start transmission

1

STATUS

1 (Char)

00h

Receiver status code

2

PACKET TYPE

1 (Char)

54h

Command Packet Type

3

LENGTH

1 (Char)

03h, 04h

Data byte count

4

SUBTYPE

1 (byte)

See below

See below

----- DATA RECORDS 0 to 16 and 21 to 22 -----

Data from one of the records that are encoded in type 55h records, as indicated by byte #4 Subtype. Bytes 5 (PRN) and 6 (FLAGS) below will be sent:

0: SV flags (Deprecated. Use subtype 20.)
1: GPS Ephemeris
2: GPS Almanac
3: ION / UTC Data
4: Disable Satellite (Deprecated. Use subtype 20)
5: Enable Satellite (Deprecated. Use subtype 20)
7: Extended GPS Almanac (includes clock parameters)
8: GLONASS Almanac
9: GLONASS Ephemeris
11: Galileo Ephemeris
12: Galileo Almanac
14: QZSS Ephemeris
16: QZSS Almanac
21: BeiDou Ephemeris
22: BeiDou Almanac

5

SV PRN NUMBER

1 (byte)

0–198

Satellite number for which ephemeris/almanac is required or to be enabled/ disabled; ignored if SV flags or ION / UTC data is requested.

GPS SV Range: 1–32
GLONASS SV Range: 1–24 (also 52–75 for backward compatibility with older systems)
Galileo SV Range: 1–36
QZSS SV Range: 193–202
BeiDou SV Range: 1–63
NavIC SV Range: 1–14

6

FLAGS

1 (byte)

 

Bitmapped field having the following values:

Bit 0: RESERVED

Bit 1: RESERVED

Bits 2 and 3 specify the source of Galileo Ephemeris or QZSS Ephemeris:

For Galileo:

b3:b2 = 00 => E1B
b3:b2 = 01 => E5B
b3:b2 = 10 => E5A

For QZSS:

b3:b2 = 00 => L1CA
b3:b2 = 01 => L1C
b3:b2 = 10 => L2C
b3:b2 = 11 => L5

Bit 4 Set: Return QZSS, Galileo and GLONASS flags appended to the GPS FLAGS replies (subtypes 0, 4, 5). SV being controlled is QZSS, not GPS, GLONASS or Galileo.

----- DATA RECORD 20 -----

Data from one of the records that are encoded in type 55h records, as indicated by byte #4 Subtype. Bytes 5 (PRN), 6 (SAT TYPE), and 7 (MODE) below will be sent:

20: SV Enable/Disable/Ignore Health Controls

5

SV PRN NUMBER

1 (byte)

0–198

Satellite number for which ephemeris/almanac is required or to be enabled/ disabled; ignored if SV flags or ION / UTC data is requested.

GPS SV Range: 1–32
GLONASS SV Range: 1–24 (also 52–75 for backward compatibility with older systems)
Galileo SV Range: 1–36
QZSS SV Range: 193–202
BeiDou SV Range: 1–63
NavIC SV Range: 1–14

6

SAT TYPE

1 (byte)

0–7

Subtype 20 only. Specifies the satellite system for the PRN which is being configured.

0: GPS: 1–32
1: SBAS (WAAS, EGNOS, MSAS, etc.): 1–39 (PRN 120–158)
2: GLONASS: 1–24
3: Galileo: 1–36
4: QZSS: 1–5 (PRN 193–202)
7: BeiDou: 1–63
9: NavIC: 1–14

7

MODE

1 (byte)

0–3

Subtype 20 only.

0: Return SV flags for SAT TYPE
1: Disable SV
2: Enable SV
3: Ignore Health SV
(Only Mode = 0 is valid for SBAS)

 

CHECKSUM

1 (Char)

See Data collector format: packet structure

Checksum value

 

ETX

1 (Char)

03h

End transmission

The reply for this command will be a RETSVDATA report packet, or a NAK if the request failed.

Enable/Disable satellite (subtype 20) always returns RETSVDATA (subtype 20) as if SV Flags were requested.