GPS not working (Thales Cinterion TX62 on Arduino Portenta Cat. M1/NB IoT GNSS Shield) | Thales IoT Developer Community
September 16, 2022 - 3:54am, 792 views
I have been struggling to find the right AT commands to initialize the GPS engine and get a position fix in a reasonable time, without much success.
This is my configuration:
08:51:17.681 -> ^SGPSC: "Engine","3"
08:51:17.681 -> ^SGPSC: "Engine/Beidou","1"
08:51:17.681 -> ^SGPSC: "Engine/Galileo","0"
08:51:17.681 -> ^SGPSC: "Engine/StartMode","0"
08:51:17.681 -> ^SGPSC: "Nmea/Beidou","off"
08:51:17.681 -> ^SGPSC: "Nmea/Galileo","off"
08:51:17.728 -> ^SGPSC: "Nmea/Glonass","off"
08:51:17.728 -> ^SGPSC: "Nmea/GPS","on"
08:51:17.728 -> ^SGPSC: "Nmea/Output","on"
08:51:17.728 -> ^SGPSC: "Nmea/Urc","off"
08:51:17.728 -> ^SGPSC: "Nmea/Version","4.10"
08:51:17.728 -> ^SGPSC: "Power/Psm","1"
Most of the time I only get this output:
09:05:27.238 -> $GPGSV,1,1,0,1*54
09:05:27.238 -> $GPGSA,A,1,,,,,,,,,,,,,,,*1E
09:05:27.238 -> $GNGSA,A,1,,,,,,,,,,,,,,,*00
09:05:27.238 -> $GNVTG,,T,,M,,N,,K,N*32
09:05:27.238 -> $GNRMC,,V,,,,,,,,,,N,V*37
09:05:27.238 -> $GPGGA,,,,,,0,,,,,,,,*66
Randomly I get satellite view, but no position fix, even with blue clear sky and after waiting for a long time:
08:51:26.620 -> $GPGSV,4,1,15,02,14,316,00,05,54,273,00,06,15,032,00,09,,,00,1*5E
08:51:26.620 -> $GPGSV,4,2,15,11,,,00,12,37,300,00,13,38,172,00,14,06,149,00,1*50
08:51:26.620 -> $GPGSV,4,3,15,15,20,204,00,17,28,111,00,19,44,083,00,20,49,345,00,1*64
08:51:26.620 -> $GPGSV,4,4,15,24,07,233,00,25,06,312,00,30,04,121,00,1*57
08:51:26.620 -> $GPGSA,A,1,,,,,,,,,,,,,,,*1E
08:51:26.620 -> $GNGSA,A,1,,,,,,,,,,,,,,,*00
08:51:26.620 -> $GNVTG,,T,,M,,N,,K,N*32
08:51:26.620 -> $GNRMC,,V,,,,,,,,,,N,V*37
08:51:26.666 -> $GPGGA,,,,,,0,,,,,,,,*66
I assume the LTE-M connection is influencing the GPS connection as well.
GpsOneXTRA does not work, so no point in using it.
Anyone has a complete set of AT commands, from modem factory start, for both LTE and subsequent GPS connection to get a successful position fix?
Any help is welcome! Thanks!
It is true that concurrent LTE and GNSS operations are not supported. The priority between GNSS and LTE can be controlled by AT^SCFG="MEopMode/RscMgmt/Rrc". Please try to switch to 2G for example just for test to see if this might be the case here. For the same test reason you can try to disable "Power/Psm". This might be a problem with sky visibility or GPS antenna.
As far as my AT commands are concerned, I am not using LTE and GPS at the same time.
In my case AT^SCFG="MEopMode/RscMgmt/Rrc" = 1.
Even trying to AT+COPS=2 before or while the GPS Engine is running, doesn’t change anything.
I have also de-activated the LTE from the network provider, or restarted the SIM. No effects.
“Power/Psm” doesn’t make any difference.
Sky above me is always blue during the tests.
I have already tried 4 different active antennas, always measured by a multimeter that a 3V is present.
How do I switch to 2G using AT commands?
I’ve been working on this for more than 1 month now, so I will need more advanced solutions.
I my opinion, I think we’ll need a firmware upgrade from Thales.
You may select RAT with AT^SXRAT command. AT^SXRAT=0 is GSM only.
Please check the firmware version with ATI1 command.
I'll try to find more information.
I am using Firmware v1.2, after performing a firmware upgrade with the help of Thales here:
This latest version was supposed to fix GNSS issues, as described in the Release Notes v1.2.
But apparently not really...
So let's hope for a better firmware soon. Thanks!
Thank you for the information. As I see the fix was for DNS problem for GNSS XTRA file download. This might have affected the time to fix.
I found out that early samples of Arduino might have had a soldering issues on the DC feed.
And we had the trouble of LNA_ENABLE pin not working in our firmware but I suppose that this should be solved, especially that you measure 3V. Anyway the workaround was to additionally use GPIO7.
According to the module's HW description it is possible to connect active or passive GNSS antennas. In either case the antennas must have 50 Ohm impedance.
I am not using XTRA as it does not work for me. I am able to ping the DNS server for the XTRA, but it does not download the file. I get engine error "12".
I am already using GPIO7 to activate the 3V for the active antenna.
Can you please tell me what are the actions that Thales / Arduino are taking to solve this issue at the moment?
After so long trying to debug this product, my conclusion is that it is NOT reliable and it should not be in the market in its current format.
As I already mentioned to the Thales and Arduino supports, this board is meant for professional usage, not just hobby, so our company needs a fast solution, otherwise we will just abandon this product.
Please let me know the timeline for a correction. Thanks.
Regarding GPIO7 I got the information that LNA_ENABLE is still not supported. So the GPIO7 workaround is still advised. As you use it and can measure the 3V, it looks like the antenna power is not an issue here.
As for the error "12" I tried setting "Engine/StartMode","1" on my module (I do not have Arduino Portenta) and the engine started correctly. I have newer firmware but as you got the version that you have as the one that fixes this problem, it should also not be the case here. Please make sure that the module is attached to the network and that data download is possible with your subscription. But you could also ask your supplier or local Thales M2M for the firmware update.
Your tests without the Arduino Portenta H7 are not valid for this case.
Please see my latest findings:
Let me know if you are able to repeat your GPS tests with the Portenta and can find a solution.
Very interesting. According to what you have written the Portenta board is emitting interferences which disturb the GPS signal reception. So, this seems like the problem on the Portenta side.
For now I don't have such a board to test. I'll check if I'm able to get it and at least check if it's the same.