nRF9160: GNSS factory almanac generation

Is it possible for users to regenerate the nRF9160 GNSS factory almanac data from public sources?

https://github.com/nrfconnect/sdk-nrf/blob/main/samples/cellular/gnss/src/factory_almanac.h

There is a public script to convert a binary file to the header, but no mention of the source of the binary file.

https://github.com/nrfconnect/sdk-nrf/blob/main/samples/cellular/gnss/scripts/factory_almanac_to_string.py

Parents
  • Hi,

    At least in theory, you can just read it from the satellites. You might also be able an A-GPS response to get it.

    However, I don't know how we get it when we generate that header file.

    I'll check with the modem team and see if I can get some more details.

    Best regards,

    Didrik

  • Without knowing the format of the factory almanac data it doesn't really seem possible to construct it from the satellites themselves.

    The current factory almanac string looks to 2058 byte hex string, so 1029 bytes. This doesn't neatly map to the size of the almanac (15000 bits, 18750 bytes), so there are still a lot of questions there.

    Ideally the format would be documented, so public almanacs like this could be constructed. The current almanac hasn't been updated for 3 months, which is obviously not ideal.

Reply
  • Without knowing the format of the factory almanac data it doesn't really seem possible to construct it from the satellites themselves.

    The current factory almanac string looks to 2058 byte hex string, so 1029 bytes. This doesn't neatly map to the size of the almanac (15000 bits, 18750 bytes), so there are still a lot of questions there.

    Ideally the format would be documented, so public almanacs like this could be constructed. The current almanac hasn't been updated for 3 months, which is obviously not ideal.

Children
Related