LR1110
User Manual
Rev.1.0
UM.LR1110.W.APP
March 2020
103 of 130
Semtech
11.5.1 Almanac Full Update
The Almanac data for all the satellites can be updated using the command
GnssAlmanacFullUpdate( )
:
•
AlmanacFullUpdatePayload:
Table 11-17: AlmanacFullUpdatePayload
:
•
With the
AlmanacHeader
defined as in
Table 11-18: AlmanacHeader
•
Each
SvAlmanac
being a 20 Bytes structure, defined as
:
It is up to the user to ensure that the list of almanacs and the list of satellites ids are coherent. The Almanac data must be
provided in the same order as satellite ids.
The
AlmanacFullUpdatePayload
takes 20 Bytes (Header) +128 (number of SV) * 20 Bytes =2580 Bytes.
The maximum number of Bytes that can be send from the host MCU is 1020 Bytes. Therefore, the Almanac Full Update shall
be handled in multiple SPI transactions. For example, the two following approaches are possible:
•
minimum memory overhead:
The
AlmanacFullUpdatePayload
can be sent in 129 successive SPI transactions of 20 data Bytes each.
•
minimum number of SPI transactions:
The
AlmanacFullUpdatePayload
can be sent in 2 SPI transactions of 1020 data Bytes each, and a third SPI transaction of
540 Bytes.
Table 11-16: GnssAlmanacFullUpdate
Byte
0
1
2
...
Data from Host
0x04
0x0E
AlmanacFullUpdatePayload
Data to Host
Stat1
Stat2
IrqStatus(31:24)
...
Table 11-17: AlmanacFullUpdatePayload
Byte
(0:19)
(20:39)
(40:56)
...
(2560:2579)
Field
AlmanacHeader
SV1 Almanac
SV2 Almanac
...
SV128 Almanac
Byte
0
(1:2)
(3:6)
(7:19)
Field
128
AlmanacDate
Global CRC
RFU
Table 11-19: SvAlmanac Format
Byte
0
(1:15)
(16:17)
18
19
Field
SV id
Almanac Content
CA code
Modulation bit
mask
Constellation Id