asset tracker v2 AGPS data nrf cloud

Hi All!

I am using nrf9160DK , NCS 2.2.0 asset tracker v2 example . I enabled the AGPS in proj.conf file as mentioned below 

CONFIG_NRF_CLOUD_MQTT=y
CONFIG_NRF_CLOUD_AGPS=y

it sends multicell data not agps data .

But when i tested with GNSS examples it sends the GPS data . I attached the asset tracker and GNSS both logging output and config files .

Asset tracker proj.config 

#
# Copyright (c) 2021 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

# General config
CONFIG_NEWLIB_LIBC=y
CONFIG_NEWLIB_LIBC_FLOAT_PRINTF=y
CONFIG_ASSERT=y
CONFIG_REBOOT=y
CONFIG_FPU=y

# Heap and stacks
CONFIG_HEAP_MEM_POOL_SIZE=32768
CONFIG_MAIN_STACK_SIZE=1408
CONFIG_SYSTEM_WORKQUEUE_STACK_SIZE=4096
CONFIG_HW_STACK_PROTECTION=y
# Increase AT monitor heap size to be able to fit both neighbor cell measurement
# and other AT notifications that may come in rapid succession.
CONFIG_AT_MONITOR_HEAP_SIZE=1024

# Logging
CONFIG_LOG=y
CONFIG_LOG_MODE_DEFERRED=y

# nRF modem library
CONFIG_NRF_MODEM_LIB=y

# AT Host library - Used to send AT commands directy from an UART terminal and to allow
#		    integration with nRF Connect for Desktop LTE Link monitor application.
CONFIG_AT_HOST_LIBRARY=y

# Network
CONFIG_NETWORKING=y
CONFIG_NET_NATIVE=n
CONFIG_NET_SOCKETS=y
CONFIG_NET_SOCKETS_OFFLOAD=y
CONFIG_NET_IPV6=y
CONFIG_NET_IPV4=y

# LTE link control
CONFIG_LTE_AUTO_INIT_AND_CONNECT=n
CONFIG_LTE_NETWORK_MODE_LTE_M_GPS=y
## Power saving timers.
### 320 hours PSM.
CONFIG_LTE_PSM_REQ_RPTAU="11000001"
### 20 seconds active time.
CONFIG_LTE_PSM_REQ_RAT="00001010"

# Modem info library to obtain information about network and device
CONFIG_MODEM_INFO=y

# Settings - Used to store real-time device configuration to flash.
CONFIG_SETTINGS=y
CONFIG_SETTINGS_FCB=y
CONFIG_FCB=y

# FOTA
CONFIG_FOTA_DOWNLOAD=y
CONFIG_DFU_TARGET=y
CONFIG_DOWNLOAD_CLIENT=y
CONFIG_DOWNLOAD_CLIENT_HTTP_FRAG_SIZE_1024=y
CONFIG_DOWNLOAD_CLIENT_STACK_SIZE=4096
CONFIG_DOWNLOAD_CLIENT_BUF_SIZE=2300
CONFIG_DOWNLOAD_CLIENT_MAX_HOSTNAME_SIZE=128

# Flash - Used in FOTA, settings and storage for P-GPS.
CONFIG_FLASH=y
CONFIG_FLASH_PAGE_LAYOUT=y
CONFIG_FLASH_MAP=y
CONFIG_STREAM_FLASH=y
CONFIG_MPU_ALLOW_FLASH_WRITE=y

# MCUBOOT
CONFIG_BOOTLOADER_MCUBOOT=y
CONFIG_IMG_MANAGER=y
CONFIG_MCUBOOT_IMG_MANAGER=y
CONFIG_IMG_ERASE_PROGRESSIVELY=y
CONFIG_SECURE_BOOT=y
CONFIG_BUILD_S1_VARIANT=y

# Watchdog
CONFIG_WATCHDOG_APPLICATION=y

# Application Event Manager
CONFIG_APP_EVENT_MANAGER=y
CONFIG_APP_EVENT_MANAGER_LOG_EVENT_TYPE=n

# cJSON - Used in cloud data encoding.
CONFIG_CJSON_LIB=y

# CAF - Common Application Framework
CONFIG_CAF=y
CONFIG_LED=y
CONFIG_CAF_LEDS=y
CONFIG_CAF_INIT_LOG_LED_READY_EVENTS=n
CONFIG_CAF_INIT_LOG_LED_EVENTS=n
CONFIG_CAF_INIT_LOG_MODULE_STATE_EVENTS=n

# Default cloud transport service
CONFIG_NRF_CLOUD_MQTT=y
CONFIG_NRF_CLOUD_AGPS=y
 

Asset tracker logging output 

[00:38:01.622,131] <ESC><inf> app_event_manager: MODEM_EVT_BATTERY_DATA_READY<ESC><CR><LF>
[00:38:01.632,995] <ESC><inf> app_event_manager: MODEM_EVT_NEIGHBOR_CELLS_DATA_READY<ESC><CR><LF>
[00:39:16.538,635] <ESC><inf> app_event_manager: DATA_EVT_DATA_READY<ESC><CR><LF>
[00:39:23.900,238] <ESC><inf> app_event_manager: GNSS_EVT_TIMEOUT<ESC><CR><LF>
[00:39:23.900,695] <ESC><inf> app_event_manager: GNSS_EVT_INACTIVE<ESC><CR><LF>
%NCELLMEAS: 0,"02C45E01","334020","1603",1168,2050,350,41,12,2400768,2050,311,36,4,0,1009234<CR><LF>
[00:40:01.523,559] <ESC><inf> app_event_manager: APP_EVT_DATA_GET_ALL<ESC><CR><LF>
[00:40:01.524,200] <ESC><inf> app_event_manager: APP_EVT_DATA_GET - Requested data types (MOD_DYN, BAT, ENV, NEIGHBOR_CELLS, GNSS)<ESC><CR><LF>
[00:40:01.537,445] <ESC><inf> app_event_manager: GNSS_EVT_ACTIVE<ESC><CR><LF>
[00:40:01.538,085] <ESC><inf> app_event_manager: SENSOR_EVT_ENVIRONMENTAL_NOT_SUPPORTED<ESC><CR><LF>
[00:40:01.571,258] <ESC><inf> app_event_manager: MODEM_EVT_MODEM_DYNAMIC_DATA_NOT_READY<ESC><CR><LF>
[00:40:01.602,264] <ESC><inf> app_event_manager: MODEM_EVT_BATTERY_DATA_READY<ESC><CR><LF>
[00:40:01.616,546] <ESC><inf> app_event_manager: MODEM_EVT_NEIGHBOR_CELLS_DATA_READY<ESC><CR><LF>
[00:41:16.538,513] <ESC><inf> app_event_manager: DATA_EVT_DATA_READY<ESC><CR><LF>
[00:41:18.658,691] <ESC><inf> app_event_manager: GNSS_EVT_TIMEOUT<ESC><CR><LF>
[00:41:18.659,149] <ESC><inf> app_event_manager: GNSS_EVT_INACTIVE<ESC><CR><LF>
%NCELLMEAS: 0,"02C45E01","334020","1603",1168,2050,350,42,13,2520448,2050,311,36,4,0,1009234<CR><LF>
[00:42:01.523,559] <ESC><inf> app_event_manager: APP_EVT_DATA_GET_ALL<ESC><CR><LF>
[00:42:01.524,200] <ESC><inf> app_event_manager: APP_EVT_DATA_GET - Requested data types (MOD_DYN, BAT, ENV, NEIGHBOR_CELLS, GNSS)<ESC><CR><LF>
[00:42:01.537,445] <ESC><inf> app_event_manager: GNSS_EVT_ACTIVE<ESC><CR><LF>
[00:42:01.538,208] <ESC><inf> app_event_manager: SENSOR_EVT_ENVIRONMENTAL_NOT_SUPPORTED<ESC><CR><LF>
[00:42:01.579,620] <ESC><inf> app_event_manager: MODEM_EVT_MODEM_DYNAMIC_DATA_NOT_READY<ESC><CR><LF>
[00:42:01.621,978] <ESC><inf> app_event_manager: MODEM_EVT_BATTERY_DATA_READY<ESC><CR><LF>
[00:42:01.632,720] <ESC><inf> app_event_manager: MODEM_EVT_NEIGHBOR_CELLS_DATA_READY<ESC><CR><LF>
[00:43:16.538,696] <ESC><inf> app_event_manager: DATA_EVT_DATA_READY<ESC><CR><LF>
[00:43:23.904,968] <ESC><inf> app_event_manager: GNSS_EVT_TIMEOUT<ESC><CR><LF>
[00:43:23.905,426] <ESC><inf> app_event_manager: GNSS_EVT_INACTIVE<ESC><CR><LF>
%NCELLMEAS: 0,"02C45E01","334020","1603",1168,2050,350,40,7,2640768,2050,311,37,5,0,1009234<CR><LF>
[00:44:01.523,559] <ESC><inf> app_event_manager: APP_EVT_DATA_GET_ALL<ESC><CR><LF>
[00:44:01.524,200] <ESC><inf> app_event_manager: APP_EVT_DATA_GET - Requested data types (MOD_DYN, BAT, ENV, NEIGHBOR_CELLS, GNSS)<ESC><CR><LF>
[00:44:01.537,414] <ESC><inf> app_event_manager: GNSS_EVT_ACTIVE<ESC><CR><LF>
[00:44:01.538,055] <ESC><inf> app_event_manager: SENSOR_EVT_ENVIRONMENTAL_NOT_SUPPORTED<ESC><CR><LF>
[00:44:01.570,892] <ESC><inf> app_event_manager: MODEM_EVT_MODEM_DYNAMIC_DATA_NOT_READY<ESC><CR><LF>
[00:44:01.601,959] <ESC><inf> app_event_manager: MODEM_EVT_BATTERY_DATA_READY<ESC><CR><LF>
[00:44:01.616,088] <ESC><inf> app_event_manager: MODEM_EVT_NEIGHBOR_CELLS_DATA_READY<ESC><CR><LF>
%CESQ: 40,2,3,0<CR><LF>
%CESQ: 42,2,8,1<CR><LF>
[00:45:16.538,482] <ESC><inf> app_event_manager: DATA_EVT_DATA_READY<ESC><CR><LF>
[00:45:21.213,256] <ESC><inf> app_event_manager: GNSS_EVT_TIMEOUT<ESC><CR><LF>
[00:45:21.213,714] <ESC><inf> app_event_manager: GNSS_EVT_INACTIVE<ESC><CR><LF>
%NCELLMEAS: 0,"02C45E01","334020","1603",1168,2050,350,41,3,2760448,2050,311,40,4,0,1009234<CR><LF>
[00:46:01.523,559] <ESC><inf> app_event_manager: APP_EVT_DATA_GET_ALL<ESC><CR><LF>
[00:46:01.524,200] <ESC><inf> app_event_manager: APP_EVT_DATA_GET - Requested data types (MOD_DYN, BAT, ENV, NEIGHBOR_CELLS, GNSS)<ESC><CR><LF>
[00:46:01.537,445] <ESC><inf> app_event_manager: GNSS_EVT_ACTIVE<ESC><CR><LF>
[00:46:01.538,146] <ESC><inf> app_event_manager: SENSOR_EVT_ENVIRONMENTAL_NOT_SUPPORTED<ESC><CR><LF>
[00:46:01.579,589] <ESC><inf> app_event_manager: MODEM_EVT_MODEM_DYNAMIC_DATA_READY<ESC><CR><LF>
[00:46:01.628,051] <ESC><inf> app_event_manager: MODEM_EVT_BATTERY_DATA_READY<ESC><CR><LF>
[00:46:01.638,671] <ESC><inf> app_event_manager: MODEM_EVT_NEIGHBOR_CELLS_DATA_READY<ESC><CR><LF>
 

Although

GNSS_EVT_ACTIVE

&

APP_EVT_DATA_GET - Requested data types (MOD_DYN, BAT, ENV, NEIGHBOR_CELLS, GNSS)

GNSS proj.config

#
# Copyright (c) 2021 Nordic Semiconductor ASA
#
# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
#

# P-GPS overlay configuration

# Enable nRF Cloud assistance for GNSS sample
CONFIG_GNSS_SAMPLE_ASSISTANCE_NRF_CLOUD=y

# P-GPS
CONFIG_NRF_CLOUD_PGPS=y
CONFIG_NRF_CLOUD_PGPS_REPLACEMENT_THRESHOLD=4

# Disable A-GPS, comment this if you want to use both A-GPS and P-GPS at the same time
CONFIG_NRF_CLOUD_AGPS=n

# Storage for P-GPS
CONFIG_STREAM_FLASH=y
CONFIG_FLASH=y
CONFIG_FLASH_PAGE_LAYOUT=y
CONFIG_FLASH_MAP=y
CONFIG_FCB=y
CONFIG_SETTINGS=y
CONFIG_SETTINGS_FCB=y
CONFIG_MPU_ALLOW_FLASH_WRITE=y

# P-GPS needs more heap
CONFIG_HEAP_MEM_POOL_SIZE=8192

GNSS logging output file

F>
$GPGLL,2038.69644,N,10514.49757,W,172344.55,A,A*75<CR>
<CR>
<CR><LF>
$GPGSA,A,3,01,03,07,09,,,,,,,,,4.57,3.72,2.67,1*10<CR>
<CR>
<CR><LF>
$GPGSV,1,1,4,1,13,216,44,3,71,262,44,7,15,261,40,9,12,313,41,1*59<CR>
<CR>
<CR><LF>
$GPRMC,172344.55,A,2038.69644,N,10514.49757,W,0.24,0.00,060123,,,A,V*38<CR>
<CR>
<CR><LF>
<ESC><ESC>Tracking:  4 Using:  4 Unhealthy: 0<CR>
<CR><LF>
-----------------------------------<CR>
<CR><LF>
Latitude:       20.644939<CR>
<CR><LF>
Longitude:      -105.241624<CR>
<CR><LF>
Altitude:       38.8 m<CR>
<CR><LF>
Accuracy:       7.2 m<CR>
<CR><LF>
Speed:          0.1 m/s<CR>
<CR><LF>
Speed accuracy: 1.0 m/s<CR>
<CR><LF>
Heading:        0.0 deg<CR>
<CR><LF>
Date:           2023-01-06<CR>
<CR><LF>
Time (UTC):     17:23:45.545<CR>
<CR><LF>
PDOP:           4.6<CR>
<CR><LF>
HDOP:           3.7<CR>
<CR><LF>
VDOP:           2.7<CR>
<CR><LF>
TDOP:           3.3<CR>
<CR><LF>
<CR>
<CR><LF>
NMEA strings:<CR>
<CR><LF>
<CR>
<CR><LF>
$GPGGA,172345.55,2038.69632,N,10514.49743,W,1,04,3.71,38.78,M,,M,,*5E<CR>
<CR>
<CR><LF>
$GPGLL,2038.69632,N,10514.49743,W,172345.55,A,A*70<CR>
<CR>
<CR><LF>
$GPGSA,A,3,01,03,07,09,,,,,,,,,4.57,3.71,2.66,1*12<CR>
<CR>
<CR><LF>
$GPGSV,1,1,4,1,13,216,44,3,71,262,43,7,15,261,40,9,12,313,41,1*5E<CR>
<CR>
<CR><LF>
$GPRMC,172345.55,A,2038.69632,N,10514.49743,W,0.14,0.00,060123,,,A,V*3E<CR>
<CR>
<CR><LF>
<ESC><ESC>Tracking:  7 Using:  4 Unhealthy: 0<CR>
<CR><LF>
-----------------------------------<CR>
<CR><LF>
Latitude:       20.644939<CR>
<CR><LF>
Longitude:      -105.241618<CR>
<CR><LF>
Altitude:       38.6 m<CR>
<CR><LF>
Accuracy:       7.2 m<CR>
<CR><LF>
Speed:          0.1 m/s<CR>
<CR><LF>
Speed accuracy: 1.0 m/s<CR>
<CR><LF>
Heading:        0.0 deg<CR>
<CR><LF>
Date:           2023-01-06<CR>
<CR><LF>
Time (UTC):     17:23:46.545<CR>
<CR><LF>
PDOP:           4.6<CR>
<CR><LF>
HDOP:           3.7<CR>
<CR><LF>
VDOP:           2.7<CR>
<CR><LF>
TDOP:           3.3<CR>
<CR><LF>
<CR>
<CR><LF>
NMEA strings:<CR>
<CR><LF>
<CR>
<CR><LF>
$GPGGA,172346.55,2038.69636,N,10514.49706,W,1,04,3.71,38.64,M,,M,,*55<CR>
<CR>
<CR><LF>
$GPGLL,2038.69636,N,10514.49706,W,172346.55,A,A*76<CR>
<CR>
<CR><LF>
$GPGSA,A,3,01,03,07,09,,,,,,,,,4.57,3.71,2.66,1*12<CR>
<CR>
<CR><LF>
$GPGSV,2,1,7,1,13,216,44,3,71,262,43,7,15,261,40,9,12,313,41,1*5E<CR>
<CR>
<CR><LF>
$GPGSV,2,2,7,10,,,26,13,,,29,24,,,26,1*5D<CR>
<CR>
<CR><LF>
$GPRMC,172346.55,A,2038.69636,N,10514.49706,W,0.14,0.00,060123,,,A,V*38<CR>
<CR>
<CR><LF>
<ESC><ESC>Tracking:  9 Using:  4 Unhealthy: 0<CR>
<CR><LF>
-----------------------------------<CR>
<CR><LF>
Latitude:       20.644938<CR>
<CR><LF>
Longitude:      -105.241613<CR>
<CR><LF>
Altitude:       38.6 m<CR>
<CR><LF>
Accuracy:       7.1 m<CR>
<CR><LF>
Speed:          0.0 m/s<CR>
<CR><LF>
Speed accuracy: 1.0 m/s<CR>
<CR><LF>
Heading:        0.0 deg<CR>
<CR><LF>
Date:           2023-01-06<CR>
<CR><LF>
Time (UTC):     17:23:47.545<CR>
<CR><LF>
PDOP:           4.6<CR>
<CR><LF>
HDOP:           3.7<CR>
<CR><LF>
VDOP:           2.7<CR>
<CR><LF>
TDOP:           3.3<CR>
<CR><LF>
<CR>
<CR><LF>
NMEA strings:<CR>
<CR><LF>
<CR>
<CR><LF>
$GPGGA,172347.55,2038.69629,N,10514.49678,W,1,04,3.71,38.56,M,,M,,*53<CR>
<CR>
<CR><LF>
$GPGLL,2038.69629,N,10514.49678,W,172347.55,A,A*71<CR>
<CR>
<CR><LF>
$GPGSA,A,3,01,03,07,09,,,,,,,,,4.57,3.71,2.66,1*12<CR>
<CR>
<CR><LF>
$GPGSV,3,1,9,1,13,216,44,3,71,262,43,7,15,261,41,9,12,313,41,1*50<CR>
<CR>
<CR><LF>
$GPGSV,3,2,9,10,,,25,12,,,26,13,,,25,18,,,25,1*56<CR>
<CR>
<CR><LF>
$GPGSV,3,3,9,24,,,25,1*5C<CR>
<CR>
<CR><LF>
$GPRMC,172347.55,A,2038.69629,N,10514.49678,W,0.04,0.00,060123,,,A,V*3E<CR>
<CR>

Can you please help me in this regard ?

Thanks in Advance !

Best Regards,

Parents Reply Children
  • Hi,

    I'm guessing you might be getting the agps-data, but still isn't able to produce a GPS fix, so it falls back to mcell. It's odd if GNSS and Asset Tracker gives so different results, if the testing environments otherwise are similar.
    I find it a bit upsetting that the app doesn't notify about a successful AGPS injection. You can try adding some logs to the nrf_cloud_agps_process() function in the nrf_cloud_agps.c library, just to verify that you actually get the agps-data. You can also try a longer location timeout, so it can search for a longer time, or moving to better conditions to see if this helps.

    These are my best tips. Maybe Nordic employees will have some better suggestions when they see this thread.

    Anyway, good luck in the debugging!

    Kind regards,

    Torje

  • Hi Torje!

    Thank you so much for your concern to solve the issue. Definitely i will go through all your tips/opinions to solve the issue. Will update my findings after testing these.

    "try adding some logs to the nrf_cloud_agps_process() function"

    is a good suggestion for confirmation.

    Again Thank you!

    Regards,

    Muhammad Usman

Related