gi1
June 20, 2024, 11:22am
1
Hello,
tring to load EE on wp7702 using sample code @
Just remove the download of xtra1 file cause uncompatible.
Got an error on: load. File is downloaded correctly.
follow the logread.
Any help on this? Someone done same thing?
regards,
Gianmaria
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | xtra2.bin
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | 95%
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | |***************************** |
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | 32749
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | 0:00:00 ETA
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] |
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | xtra2.bin
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | 100%
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | |*******************************|
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | 34335
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] | 0:00:00 ETA
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] |
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | gnssXtra[2960] |
Jun 20 13:17:00 swi-mdm9x28-wp user.info Legato: INFO | gnssXtra[2960]/gnssXtra T=main | xtra.c DownloadXtraFile() 90 | ASI - Download XTRA2 done
Jun 20 13:17:00 swi-mdm9x28-wp user.info Legato: INFO | gnssXtra[2960]/gnssXtra T=main | xtra.c TestGetExtendedEphemerisValidity() 140 | ASI - Open file /tmp/xtra2.bin with fd.9
Jun 20 13:17:00 swi-mdm9x28-wp user.debug Legato: DBUG | gnssXtra[2960]/framework T=main | unixSocket.c unixSocket_SendMsg() 441 | Sending fd 9.
Jun 20 13:17:00 swi-mdm9x28-wp user.warn Legato: -WRN- | posDaemon[1410]/le_pa_gnss T=unknown | pa_gnss_qmi.c XTRAInjectionHandler() 1821 | There was an error (3)
Jun 20 13:17:00 swi-mdm9x28-wp user.emerg Legato: EMR | gnssXtra[2960]/gnssXtra T=main | xtra.c TestGetExtendedEphemerisValidity() 142 | Assert Failed: ‘le_gnss_LoadExtendedEphemerisFile(fd)==LE_OK’
Jun 20 13:17:00 swi-mdm9x28-wp user.info Legato: INFO | supervisor[1239]/supervisor T=main | proc.c proc_SigChildHandler() 2079 | Process ‘gnssXtra’ (PID: 2960) has exited with exit code 1.
Jun 20 13:17:00 swi-mdm9x28-wp user.err Legato: =ERR= | posDaemon[1410]/posDaemon T=main | le_gnss.c CloseSessionEventHandler() 1291 | SessionRef (0x7f577978) has been closed
Jun 20 13:17:01 swi-mdm9x28-wp user.warn Legato: -WRN- | supervisor[1239]/supervisor T=main | app.c app_SigChildHandler() 4066 | Process ‘gnssXtra’ in app ‘gnssXtra’ faulted: Ignored.
Jun 20 13:17:01 swi-mdm9x28-wp user.info Legato: INFO | supervisor[1239]/supervisor T=main | app.c app_StopComplete() 4753 | app ‘gnssXtra’ has stopped.
Jun 20 13:17:01 swi-mdm9x28-wp user.info Legato: INFO | supervisor[1239]/supervisor T=main | apps.c DeactivateAppContainer() 374 | Application ‘gnssXtra’ has stopped.
gi1
June 20, 2024, 11:47am
3
Cause always give error on
static void TestGetWrongExtendedEphemeris(…
done wrong? I imagine that version 1 of this EE file is not good for my wp7702…
Gian
jyijyi
June 20, 2024, 11:49am
4
How about download the same file xtra2?
gi1
June 20, 2024, 11:52am
5
xtra2 file is downloaded correctly… but when i call le_gnss_LoadExtendedEphemerisFile pointing to the xtra2.bin the function fail on
LE_ASSERT(le_gnss_LoadExtendedEphemerisFile(fd)==LE_OK);
at least it seems…
maybe I’m doing something wrong?
thanks for your help…
G.
gi1
June 20, 2024, 11:55am
6
this is the actual log:
Jun 20 13:53:09 swi-mdm9x28-wp user.info Legato: INFO | gnssXtra[2433]/gnssXtra T=main | xtra.c DownloadXtraFile() 90 | ASI - Download XTRA2 done
Jun 20 13:53:09 swi-mdm9x28-wp user.info Legato: INFO | gnssXtra[2433]/gnssXtra T=main | xtra.c TestGetExtendedEphemerisValidity() 140 | ASI - Open file /tmp/xtra2.bin with fd.9
Jun 20 13:53:09 swi-mdm9x28-wp user.debug Legato: DBUG | gnssXtra[2433]/framework T=main | unixSocket.c unixSocket_SendMsg() 441 | Sending fd 9.
Jun 20 13:53:09 swi-mdm9x28-wp user.warn Legato: -WRN- | posDaemon[1401]/le_pa_gnss T=unknown | pa_gnss_qmi.c XTRAInjectionHandler() 1821 | There was an error (3)
Jun 20 13:53:09 swi-mdm9x28-wp user.info Legato: INFO | gnssXtra[2433]/gnssXtra T=main | xtra.c TestGetExtendedEphemerisValidity() 143 | ASI - file load result -6
Jun 20 13:53:09 swi-mdm9x28-wp user.info Legato: INFO | gnssXtra[2433]/gnssXtra T=main | xtra.c TestGetExtendedEphemerisValidity() 146 | ASI - file validity result 0
Jun 20 13:53:09 swi-mdm9x28-wp user.info Legato: INFO | gnssXtra[2433]/gnssXtra T=main | xtra.c TestGetExtendedEphemerisValidity() 149 | ASI - XTRA2 file weekNum 1295
Jun 20 13:53:09 swi-mdm9x28-wp user.info Legato: INFO | gnssXtra[2433]/gnssXtra T=main | xtra.c TestGetExtendedEphemerisValidity() 154 | ASI - file valid = 1
this is the function edited i use:
static void TestGetExtendedEphemerisValidity
(
void
)
{
uint16_t weekNum=0;
uint64_t start, stop, validity;
int32_t fd;
fd = open(XTRA2_FILE_PATH, O_RDONLY);
LE_ASSERT(fd != -1);
LE_INFO("ASI - Open file %s with fd.%d", XTRA2_FILE_PATH, fd);
le_result_t result = le_gnss_LoadExtendedEphemerisFile(fd);
LE_INFO("ASI - file load result %d",result);
result = le_gnss_GetExtendedEphemerisValidity(&start,&stop);
LE_INFO("ASI - file validity result %d",result);
ReadWeekNumber(XTRA2_FILE_PATH,&weekNum);
LE_INFO("ASI - XTRA2 file weekNum %d",weekNum);
/* Check validity duration of injected XTRA file (7 days) */
validity = stop-start;
bool valid = validity/SECONDS_IN_A_DAY == 7;
LE_INFO("ASI - file valid = %d",valid);
close(fd);
}
jyijyi
June 20, 2024, 12:01pm
7
You can see the explanation of returned value
Have you tried AT command with xtra?
gi1
June 20, 2024, 12:09pm
8
the subfunction called seems useless…
le_result_t __attribute__((weak)) pa_gnss_LoadExtendedEphemerisFile
(
int32_t fd ///< [IN] extended ephemeris file descriptor
)
{
LE_ERROR("Unsupported function called");
return LE_FAULT;
}
Nope… not tried with AT commands… can you give me ?? I prefer to isue at commands… if available.
Any working sequence i can use?
regards,
Gian
gi1
June 20, 2024, 12:26pm
10
seems it’s not my day:
root@swi-mdm9x28-wp:/bin# cm data connect
Setting up profile 1
Connecting … ok
Checking if device ‘rmnet_data0’ is up … ok
Routing inet … ok
Updating /etc/resolv.conf … ok
Updating /etc/resolv.conf … ok
root@swi-mdm9x28-wp:/bin# microcom /dev/ttyAT
AT
OK
AT!ENTERCND=“A710”
ERROR
AT!GPSXTRADATAENABLE=1,10,2,1,1
ERROR
AT!GPSXTRADATAURL=1,“http://xtra1.gpsonextra.net/xtra.bin”
ERROR
AT!GPSXTRADATAURL=2,“http://xtra2.gpsonextra.net/xtra.bin”
ERROR
AT!GPSXTRADATAURL=3,“http://xtra3.gpsonextra.net/xtra.bin”
ERROR
AT!GPSXTRATIMEENABLE=1,30000,10000
ERROR
AT!GPSXTRATIMEURL=1,“xtra1.gpsonextra.net ”
ERROR
AT!GPSXTRATIMEURL=2,“xtra2.gpsonextra.net ”
ERROR
AT!GPSXTRATIMEURL=3,“xtra3.gpsonextra.net ”
ERROR
AT!GPSFIX=2,180,300
OK
I never changed the protected commands password…
jyijyi
June 20, 2024, 3:18pm
11
I don’t see problem…
root@fx30:~# microcom /dev/ttyAT
at!entercnd="A710"
OK
gi1
June 20, 2024, 3:50pm
12
maybe wp7702 uses a different deault password…
jyijyi
June 20, 2024, 4:00pm
13
no, i don’t think so, never heard such thing
Hi ,
I have a WP7702 with mangoh yellow
AT!PCINFO?
State: Low Power Mode
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:1, IMSWITCH:0, BIOS:0, LWM2M:0, OMADM:0, FOTA:0
LPM persistence - None
OK
AT!ENTERCND=“A710”
OK
AT!CUSTOM=“CFUNPERSISTEN”,01
OK
reset
at!reset
OK
AT!ENTERCND=“A710”
AT!ENTERCND=“A710”
OK
AT+CFUN=1
AT+CFUN=1
+CME ERROR: operation not supported
I stuck in LPM
how can I leave the mode “W_DISABLE” ?
AT
OK
at!entercnd=“A710”
OK
at!bsinfo
Product: FX30S(WP7702)
Revision: 40
Main: MDM9206 (000)
Radio: WTR2965
Power: PMD9607 (002)
Flash: H27S4G8F2EKPB4 512MB x8 (173/0/0) (2048 blocks of 64 pages/block 4096B page size)
OK
OK
AT!MAPUART?
!MAPUART: 14,0
(Setup for 485 on the com port)
It looks like the atIentercnd worked this time
Tried to SSH to 192.168.2.2. → Connection Refused
Anyway I can clear some space from the AT prompt?
I have 2 or 3 apps I created, I can remove …
After AT!RMAREST=3, ATI3 still showing FX30.
[image]
[image]
gi1
June 20, 2024, 4:10pm
14
I can compile yocto from scratch an naturally legato… if this passwd is in that files… i can find. If this is contained in the modem firmware… nope… this is not open. I use generic ( [R14.1 (Generic — PTCRB)]).
Or I’have to contact distributor…
gian
jyijyi
June 20, 2024, 4:23pm
15
ok, you can contact distributor
gi1
June 20, 2024, 9:43pm
16
Problem found. If i copy paste command, it doesent work. I have to write on keyboard.
c.greg
June 25, 2025, 6:26am
17
Hi
Did AGPS work for you? I was able to load and get extended validity of XTRA file using http://xtra2.gpsonextra.net/xtra.bin .
But I don’t see faster TTFF time for GPS location. How do I use XTRA to make quicker GPS?
Thanks
jyijyi
June 25, 2025, 6:43am
18
does this help?
Hi John, When WP77 Module is registered to the Network, Modem could get time information by NITZ (Network Identity and Time Zone) from Network. It provides local time and date, time zone and DST offset. NITZ is optional and NOT implemented by...
BTW, are you using msBase for AT!GPSFIX command?
c.greg
June 26, 2025, 1:38am
19
I looked at
Hi John, When WP77 Module is registered to the Network, Modem could get time information by NITZ (Network Identity and Time Zone) from Network. It provides local time and date, time zone and DST offset. NITZ is optional and NOT implemented by...
and I already le_gnss_EnableExtendedEphemerisFile(), le_gnss_LoadExtendedEphemerisFile() and le_gnss_InjectUtcTime().
I see note
It is mandatory to enable the ‘Extended Ephemeris’ file injection into the GNSS device le_gnss_EnableExtendedEphemerisFile() before injecting time with le_gnss_InjectUtcTime
so maybe I don’t need LoadExtendedEphemerisFile but only le_gnss_InjectUtcTime()?
and I change le_gnss_SetSuplAssistedMode() to LE_GNSS_MS_BASED_MODE but from cold start still take >30s to find a fix
I don’t use AT because I only want use legato code
Any help?
jyijyi
June 26, 2025, 1:53am
20
i would suggest to use AT command first to make sure the environment is OK for AGPS