This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

A-GPS download fails mid session

Hello,

I am trying to run the A-GPS sample program but am encountering a bit of difficulty with the SUPL code.

I had to modify the LTE connection code to allow access for NB-IoT, APN and User/Pass for the SIMs we are using but encounter this error during the connection and download process:

New AGPS data requested, contacting SUPL server, flags 59
Established LTE link
ip 4a7d:8cc0:: (c08c7d4a) port 7276
Starting SUPL session
ULP encoding length: 38
Bytes sent: 38
Bytes received: 34
ULP ossDecode success, choice 3
SUPL server responded using version 2.0.4
SUPL response received
ULP encoding length: 57
Bytes sent: 57
read again
Bytes received: 708
ULP ossDecode more input 4
Bytes received: 2996
ULP ossDecode success, choice 5
Failed to send AGNSS data, type: 1 (err: 5)
UTC conversion/injection failed, rc: 3
Generic assistance data injection failed, rc: 3
SUPL error: 2
ULP encoding length: 34
Bytes sent: 34
SUPL session internal resources released
SUPL session finished
Done

While building the sample program, I also was warned about an error in the SUPL code:

[38/138] Building C object modules/nrf/lib/supl/CMakeFiles/..__nrf__lib__supl.dir/os/lte_params.c.obj
/Users/xxxxxx/Downloads/ncs/nrf/lib/supl/os/lte_params.c: In function 'parse_lte_mcc':
/Users/xxxxxx/Downloads/ncs/nrf/lib/supl/os/lte_params.c:73:3: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]
   memset(lte->mcc, 0, 3);

Could I get a bit of help decyphering what went wrong here? I have made no modifications to the SUPL code and only added code to enable connection to the Network in my local area.

	static const char     at_commands_NB[][50]  = {
					AT_CFUN_OFF,
					AT_XSYSTEMMODE,
	#ifdef CONFIG_BOARD_NRF9160_PCA10090NS
					AT_MAGPIO_LTE,
					AT_BANDLOCK,
					AT_APN,
					AT_USER_PASS,
	#endif
					AT_ACTIVATE_LTE
				};
				
*********************************

static int activate_lte(bool activate)
{
	if (activate) {
		for (int i = 0; i < ARRAY_SIZE(at_commands_NB); i++) {

			if (at_cmd_write(at_commands_NB[i], NULL, 0, NULL) != 0) {
				printk("Error with at_commands_NB\n");
				return -1;
			}
		}

The above should be working correctly if the device was able to connect to the SUPL library in the first place so I doubt it's the above changes.

Many thanks,

MJD

Parents
  • Hi Michael

    I've returned from vacation, so this case is back in my hands. Regarding the last file you uploaded, it doesn't seem like a valid modem trace as it's only 22kB in size while the previous ones are way larger, and myself and the R&D team assigned to this case aren't able to decode the modem trace, so you'll have to try making another trace log.

    Best regards,

    Simon

    UPDATE: We took another look at  the trace-2020-07-16T12-32-27.611Z.bin file and here it seems like the SUPL data is downloaded and forwarded correctly, and that the problem might be entering the data to GNSS. It seems like you're not activating GNSS after the data download, which might be what's causing the issue, however that's also where the trace stops, so can you confirm whether the GNSS is activated and the data entered to GNSS after the trace ends?

Reply
  • Hi Michael

    I've returned from vacation, so this case is back in my hands. Regarding the last file you uploaded, it doesn't seem like a valid modem trace as it's only 22kB in size while the previous ones are way larger, and myself and the R&D team assigned to this case aren't able to decode the modem trace, so you'll have to try making another trace log.

    Best regards,

    Simon

    UPDATE: We took another look at  the trace-2020-07-16T12-32-27.611Z.bin file and here it seems like the SUPL data is downloaded and forwarded correctly, and that the problem might be entering the data to GNSS. It seems like you're not activating GNSS after the data download, which might be what's causing the issue, however that's also where the trace stops, so can you confirm whether the GNSS is activated and the data entered to GNSS after the trace ends?

Children
  • OK, thanks to that little bit of information, I made a change to the modem setup. I moved the AT commands for setting up LTE out of 'activate_lte()' and into setup_modem() where the initial GNSS AT modem parameters are entered.

    I added only the full AT commands for "+CGDCONT" and  "+CGAUTH", this seems to have had a dramatic effect on the application.

    2020-07-29T11:12:58.511Z DEBUG modem << *** Booting Zephyr OS build v2.3.0-rc1-ncs1-3-g2400b4921ea9  ***\x0D
    2020-07-29T11:12:58.518Z DEBUG modem << Staring GPS application\x0D\x0A
    2020-07-29T11:12:58.520Z DEBUG modem << Sending AT command: AT%XSYSTEMMODE=0,1,1,0\x0D\x0A
    2020-07-29T11:12:58.525Z DEBUG modem << Sending AT command: AT%XMAGPIO=1,0,0,1,1,1574,1577\x0D\x0A
    2020-07-29T11:12:58.528Z DEBUG modem << Sending AT command: AT%XCOEX0=1,1,1570,1580\x0D\x0A
    2020-07-29T11:12:58.542Z DEBUG modem << Sending AT command: AT+CGDCONT=0,"IP","arkessalp.com"\x0D\x0A
    2020-07-29T11:12:58.555Z DEBUG modem << Sending AT command: AT+CGAUTH=0,"PAP","arkessa","arkessa"\x0D\x0A
    2020-07-29T11:12:58.561Z DEBUG modem << Sending AT command: AT+CFUN=31\x0D\x0A
    2020-07-29T11:12:58.579Z DEBUG modem << GPS Socket created\x0D\x0A
    2020-07-29T11:12:58.589Z DEBUG modem << Getting GPS data...\x0D\x0A
    2020-07-29T11:12:58.599Z DEBUG modem << \x1B[1;1H\x1B[2JNew AGPS data requested, contacting SUPL server, flags 59\x0D\x0A
    2020-07-29T11:12:58.728Z DEBUG modem << Sending AT command: AT+CFUN=21\x0D\x0A
    2020-07-29T11:13:36.271Z DEBUG modem << *** Booting Zephyr OS build v2.3.0-rc1-ncs1-3-g2400b4921ea9  ***\x0D\x0A
    2020-07-29T11:13:36.277Z DEBUG modem << Starting GPS application\x0D\x0A
    2020-07-29T11:13:36.281Z DEBUG modem << Sending AT command: AT%XSYSTEMMODE=0,1,1,0\x0D\x0A
    2020-07-29T11:13:36.297Z DEBUG modem << Sending AT command: AT%XMAGPIO=1,0,0,1,1,1574,1577\x0D\x0A
    2020-07-29T11:13:36.301Z DEBUG modem << Sending AT command: AT%XCOEX0=1,1,1570,1580\x0D\x0A
    2020-07-29T11:13:36.303Z DEBUG modem << Sending AT command: AT+CGDCONT=0,"IP","arkessalp.com"\x0D\x0A
    2020-07-29T11:13:36.311Z DEBUG modem << Sending AT command: AT+CGAUTH=0,"PAP","arkessa","arkessa"\x0D
    2020-07-29T11:13:36.324Z DEBUG modem << Sending AT command: AT+CFUN=31\x0D\x0A
    2020-07-29T11:13:36.339Z DEBUG modem << GPS Socket created\x0D\x0A
    2020-07-29T11:13:36.347Z DEBUG modem << Getting GPS data...\x0D\x0A
    2020-07-29T11:13:36.353Z DEBUG modem << \x1B[1;1H\x1B[2JNew AGPS data requested, contacting SUPL server, flags 59\x0D\x0A
    2020-07-29T11:13:36.367Z DEBUG modem << Sending AT command: AT+CFUN=21\x0D\x0A
    2020-07-29T11:14:50.866Z DEBUG modem << Established LTE link\x0D\x0A
    2020-07-29T11:14:51.205Z DEBUG modem << ip adc2:4cc0::1101:300:1b00:1b00 (c04cc2ad) port 7276\x0D\x0A
    2020-07-29T11:14:51.336Z DEBUG modem << Starting SUPL session\x0D\x0D\x0A
    2020-07-29T11:14:51.354Z DEBUG modem << ULP encoding length: 38\x0D\x0A
    2020-07-29T11:14:51.363Z DEBUG modem << Bytes sent: 38\x0D\x0A
    2020-07-29T11:14:51.611Z DEBUG modem << Bytes received: 34, total 34\x0D\x0A
    2020-07-29T11:14:51.628Z DEBUG modem << ULP ossDecode success, choice 3\x0D\x0A
    2020-07-29T11:14:51.632Z DEBUG modem << SUPL server responded using version 2.0.4\x0D\x0A
    2020-07-29T11:14:51.637Z DEBUG modem << SUPL response received\x0D\x0A
    2020-07-29T11:14:51.644Z DEBUG modem << ULP encoding length: 57\x0D\x0A
    2020-07-29T11:14:51.645Z DEBUG modem << Bytes sent: 57\x0D\x0A
    2020-07-29T11:14:52.114Z DEBUG modem << Bytes received: 708, total 708\x0D\x0A
    2020-07-29T11:14:52.120Z DEBUG modem << ULP ossDecode more input 4\x0D
    2020-07-29T11:14:52.559Z DEBUG modem << Bytes received: 708, total 1416\x0D\x0A
    2020-07-29T11:14:52.562Z DEBUG modem << ULP ossDecode more input 4\x0D\x0A
    2020-07-29T11:14:52.997Z DEBUG modem << Bytes received: 708, total 2124\x0D
    2020-07-29T11:14:53.004Z DEBUG modem << ULP ossDecode more input 4\x0D\x0A
    2020-07-29T11:14:53.354Z DEBUG modem << Bytes received: 708, total 2832\x0D\x0A
    2020-07-29T11:14:53.357Z DEBUG modem << ULP ossDecode more input 4\x0D\x0A
    2020-07-29T11:14:53.898Z DEBUG modem << Bytes received: 162, total 2994\x0D\x0A
    2020-07-29T11:14:53.908Z DEBUG modem << ULP ossDecode success, choice 5\x0D\x0A
    2020-07-29T11:14:53.911Z DEBUG modem << Injected AGPS data, flags: 1, size: 16\x0D\x0A
    2020-07-29T11:14:53.929Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.932Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.935Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.937Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.939Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.942Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.944Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.945Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.954Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.957Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.960Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.962Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D
    2020-07-29T11:14:53.970Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.973Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.976Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.982Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.985Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:53.989Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.000Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.002Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.005Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.007Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.009Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.011Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.012Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.024Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.027Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.029Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.030Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.038Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.043Z DEBUG modem << Injected AGPS data, flags: 2, size: 72\x0D\x0A
    2020-07-29T11:14:54.045Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.047Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.057Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.059Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.061Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.063Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.065Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.074Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.076Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.078Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.086Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.090Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.092Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.094Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.103Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.105Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.107Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.110Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.112Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.121Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.125Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.126Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.128Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.137Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.140Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.141Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.143Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.152Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.155Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.156Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.159Z DEBUG modem << Injected AGPS data, flags: 3, size: 32\x0D\x0A
    2020-07-29T11:14:54.161Z DEBUG modem << No integrity data available\x0D\x0A
    2020-07-29T11:14:54.173Z DEBUG modem << Injected AGPS data, flags: 4, size: 8\x0D\x0A
    2020-07-29T11:14:54.177Z DEBUG modem << Injected AGPS data, flags: 6, size: 144\x0D
    2020-07-29T11:14:54.188Z DEBUG modem << No location data available\x0D\x0A
    2020-07-29T11:14:54.190Z DEBUG modem << Injected AGPS data, flags: 7, size: 16\x0D\x0A
    2020-07-29T11:14:54.192Z DEBUG modem << MCC location info injected, MCC: 234\x0D\x0A
    2020-07-29T11:14:54.194Z DEBUG modem << \x09Lat: 5044349 Lon: -133751\x0D\x0A
    2020-07-29T11:14:54.196Z DEBUG modem << \x09Unc semiminor/semimajor: 119/119\x0D\x0A
    2020-07-29T11:14:54.203Z DEBUG modem << \x09Confidence: 100\x0D\x0A
    2020-07-29T11:14:54.205Z DEBUG modem << \x09Orientation: 0\x0D\x0A
    2020-07-29T11:14:54.206Z DEBUG modem << SUPL POS received\x0D\x0A
    2020-07-29T11:14:54.993Z DEBUG modem << Bytes received: 34, total 34\x0D
    2020-07-29T11:14:55.002Z DEBUG modem << ULP ossDecode success, choice 6\x0D\x0A
    2020-07-29T11:14:55.004Z DEBUG modem << SUPLEND:\x0D\x0A
    2020-07-29T11:14:55.005Z DEBUG modem << \x09Mask: 0\x0D\x0A
    2020-07-29T11:14:55.007Z DEBUG modem << \x09Status: 0\x0D\x0A
    2020-07-29T11:14:55.008Z DEBUG modem << SUPL END received\x0D\x0A
    2020-07-29T11:14:55.009Z DEBUG modem << SUPL session internal resources released\x0D\x0A
    2020-07-29T11:14:55.010Z DEBUG modem << SUPL session finished\x0D\x0A
    2020-07-29T11:14:55.011Z DEBUG modem << Done\x0D\x0A
    2020-07-29T11:14:57.199Z DEBUG modem << \x1B[1;1H\x1B[2JTracking: 0 Using: 0 Unhealthy: 0\x0D\x0A
    2020-07-29T11:14:57.208Z DEBUG modem << Seconds since last fix 81\x0D\x0A\x0D\x0A
    2020-07-29T11:14:57.708Z DEBUG modem << Scanning [|] \x1B[1;1H\x1B[2JTracking: 0 Using: 0 Unhealthy: 0\x0D\x0A
    2020-07-29T11:14:57.716Z DEBUG modem << Seconds since last fix 81\x0D\x0A\x0D\x0A
    2020-07-29T11:14:58.215Z DEBUG modem << Scanning [/] \x1B[1;1H\x1B[2JTracking: 0 Using: 0 Unhealthy: 0\x0D
    

    So it would appear that the issue was where I was entering the AT commands for the LTE control as I needed to set the modem to CFUN=4 to change the above characteristics. Setting them at the beginning negates the problem.

    My question is then how does this work with other AT commands that overwrite the controls needed for GPS? Such as adding bandlocking for faster LTE connection and changing MAGPIO settings for platforms like the thingy:91 which require the appropiate config for MAGPIOs for the matching circuits.

    EDIT:
    Figured the MAGPIOs for the thingy:91 out using the manual. Added in bandlocking to see what would happen as well.

    New AGPS data requested, contacting SUPL server, flags 59
    Sending AT command: AT+CFUN=21
    Established LTE link
    ip adc2:4cc0::1101:300:1b00:1b00 (c04cc2ad) port 7276
    Starting SUPL session
    ULP encoding length: 38
    Bytes sent: 38
    Bytes received: 34, total 34
    ULP ossDecode success, choice 3
    SUPL server responded using version 2.0.4
    SUPL response received
    ULP encoding length: 57
    Bytes sent: 57
    read again
    Bytes received: 1024, total 1024
    ULP ossDecode more input 4
    read again
    read again
    Bytes received: 712, total 1736
    ULP ossDecode more input 4
    Bytes received: 1258, total 2994
    ULP ossDecode success, choice 5
    Injected AGPS data, flags: 1, size: 16
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 2, size: 72                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    Injected AGPS data, flags: 3, size: 32                                          
    No integrity data available                                                     
    Injected AGPS data, flags: 4, size: 8                                           
    Injected AGPS data, flags: 6, size: 144                                         
    No location data available                                                      
    Injected AGPS data, flags: 7, size: 16                                          
    MCC location info injected, MCC: 234                                            
            Lat: 5044349 Lon: -133751                                               
            Unc semiminor/semimajor: 119/119                                        
            Confidence: 100                                                         
            Orientation: 0                                                          
    SUPL POS received                                                               
    read again                                                                      
    read again                                                                      
    read again                                                                      
    Bytes received: 34, total 34                                                    
    ULP ossDecode success, choice 6                                                 
    SUPLEND:                                                                        
            Mask: 0                                                                 
            Status: 0                                                               
    SUPL END received                                                               
    SUPL session internal resources released                                        
    SUPL session finished                                                           
    Done                                                                            
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 90
    
    Scanning [-] 
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 91
    
    Scanning [\] 
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 91
    
    Scanning [|] 
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 92
    
    Scanning [/] 
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 92
    
    Scanning [-] 
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 93
    
    Scanning [\] 
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 93
    
    Scanning [|] 
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 94
    
    Scanning [/] 
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 94
    
    Scanning [-] 
    
    Tracking: 0 Using: 0 Unhealthy: 0
    Seconds since last fix 95
    
    Scanning [\] 
    
    Tracking: 1 Using: 0 Unhealthy: 0
    Seconds since last fix 95
    
    Scanning [|] 
    
    Tracking: 1 Using: 0 Unhealthy: 0
    Seconds since last fix 96
    
    Scanning [/] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 96
    
    Scanning [-] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 97
    
    Scanning [\] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 97
    
    Scanning [|] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 98
    
    Scanning [/] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 98
    
    Scanning [-] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 99
    
    Scanning [\] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 99
    
    Scanning [|] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 100
    
    Scanning [/] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 101
    
    Scanning [-] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 101
    
    Scanning [\] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 102
    
    Scanning [|] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 102
    
    Scanning [/] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 103
    
    Scanning [-] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 103
    
    Scanning [\] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 104
    
    Scanning [|] 
    
    Tracking: 2 Using: 0 Unhealthy: 0
    Seconds since last fix 104
    
    Scanning [/] 
    
    Tracking: 3 Using: 0 Unhealthy: 0
    Seconds since last fix 105
    
    Scanning [-] 
    
    Tracking: 3 Using: 0 Unhealthy: 0
    Seconds since last fix 105
    
    Scanning [\] 
    
    Tracking: 3 Using: 0 Unhealthy: 0
    Seconds since last fix 106
    
    Scanning [|] 
    
    Tracking: 3 Using: 0 Unhealthy: 0
    Seconds since last fix 106
    
    Scanning [/] 
    
    Tracking: 3 Using: 0 Unhealthy: 0
    Seconds since last fix 107
    
    Scanning [-] 
    
    Tracking: 3 Using: 0 Unhealthy: 0
    Seconds since last fix 107
    
    Scanning [\] 

    A little bit more shaky on  the initial network connection but considering I'm in poor cell reception range and indoors, the results speak for themselves, 2 sats are tracked within a few seconds of GNSS resuming whilst indoors.

    All that was needed was adding an extra MAGPIO config:

    	#define AT_MAGPIO      "AT\%XMAGPIO=1,1,1,2,5,791,849,7,1574,1577"
    

Related