Field #
Bytes
Offset
1
0
2
1
3
2
4
3
Table 26: ANPP header format
10.2.1
Header LRC
The header LRC (Longitudinal Redundancy Check) provides error checking on the packet header.
It also allows the decoder to find the start of a packet by scanning for a valid LRC. The LRC can be
found using the following:
LRC = ((packet_id + packet_length + crc[0] + crc[1])^0xFF) + 1
10.2.2
Packet ID
The packet ID is used to distinguish the contents of the packet. Packet IDs range from 0 to 255.
Within this range there are three different sub-ranges, these are system packets, state packets and
configuration packets.
System packets have packet IDs in the range 0 to 19. These packets are implemented the same
by every device using ANPP.
State packets are packets that contain data that changes with time, i.e. temperature. State packets
can be set to output at a certain rate. State packets are packet IDs in the range 20 to 179.
Configuration packets are used for reading and writing device configuration. Configuration packets
are packet IDs in the range 180 to 255.
10.2.3
Packet Length
The packet length denotes the length of the packet data, i.e. from byte index 5 onwards inclusive.
Packet length has a range of 0 – 255.
10.2.4
CRC
The CRC is a CRC16-CCITT. The starting value is 0xFFFF. The CRC covers only the packet data.
10.3
Packet Requests
Any of the state and configuration packets can be requested at any time using the request packet.
See section 10.9.2.
ANPP Header Format
Data
Size
Type
u8
1
u8
1
u8
1
u16
2
GNSS Compass Reference Manual
Page 43 of 85
Version 1.1
13/01/2021
Description
Header LRC, see section 10.2.1
Packet ID, see section 10.2.2
Packet Length, see section 10.2.3
CRC16, see section 10.2.4
Need help?
Do you have a question about the GC-SER-LC and is the answer not in the manual?