-
Notifications
You must be signed in to change notification settings - Fork 12
Clarification about gpsPower() API #51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Hi David, Just a quick reply: There are some notes here: Lines 87 to 88 in cc961b2
You should be able to OR the GNSS Systems. Please try:
It is an M8 GNSS module, so it can only receive three GNSS simultaneously: Best, |
Ok thanks Paul.. so a correct parameter could be for example 69 (GPS+GLONASS+GALILEO). I didn't understand if the function call to
or, each time a gps request is performed in the code loop:
because my feeling is that GPS power turns off after a while (seen Beyond all, my goal is to have the maximum GPS coverage and speed up as much as possible the "time-to-first-fix" without using online services. |
Hi David, Apologies for the slow reply. I don't have a lot of experience with the SARA-R5 GNSS, but I do remember it being 'tricky' when I was writing the library and code examples. The main one being AssetTracker Example 23 I left notes to myself in the code: SparkFun_u-blox_SARA-R5_Arduino_Library/src/SparkFun_u-blox_SARA-R5_Arduino_Library.cpp Lines 5238 to 5242 in cc961b2
SparkFun_u-blox_SARA-R5_Arduino_Library/src/SparkFun_u-blox_SARA-R5_Arduino_Library.cpp Lines 5153 to 5162 in cc961b2
It does seem slightly crazy to have to turn the GPS power off before requesting the location. But that is what I found at the time. Maybe I just didn't get that bit right...?
For your application, I don't think you're interested in the hybrid location - with CellLocate. I think the standard NMEA RMC (Recommended Minimum) is enough? So we should concentrate on that. SARA_R5_GNSS_GPRMC "+UGRMC" is enabled by In Example 11, I don't call If you don't need the Pulse-Per-Second signal, maybe it is beneficial to call In your case, maybe you should disable the automatic local aiding too? So, the call would be:
Remember you can only enable three GNSS. You get SBAS for free with GPS. QZSS is also free, but is mainly for Japan. The GPS Read Callback only applies to the "+UULOC" hybrid location unsolicited message. For your application, you should not call I hope this helps. When I get some time, I should add support for "+UGNMEA". That would allow NMEA messages to be output as URC unsolicited messages and given their own callbacks... A much better solution than getting the messages... All the best, |
Hi Paul, now the topic is much more clear to me. :-) I'll have to re-arrange the my source code with getting NMEA messages instead of using request/callback mechanism, which would be preferrable in order to detach the request from the reply (where in my case I also send the fix through MQTT...). Cheers |
Closing... Please reopen if you need more help with this. You are welcome to open a new "Feature Request" issue - requesting support for +UGNMEA. Best, |
Thank you Paul. Actually it was easy to create a second timed task handling P.S. the "best effort" approach, that is a combination of GNSS + LTE, applies only to PPS mode ? When setting Cheers |
Here I am again with a new question regarding the Sparkfun AssetTracker board and the SARA-R5 Arduino Library.
I was wondering how to invoke the API function
gpsPower()
, and how to relate that function to SARA-R5 AT commandAT+UGPS
:First question: the call to
gpsPower()
function is mandatory ? Actually the board get GPS fixes also without calling that function.Second question: as far as I understood, you cannot set the
gnss_sys
parameter with a bitmask of multiple values (while you can do that with the corresponding AT command) because the API function only accepts an enumerated value. Then I tried to invoke successively multiple instances of thegpsPower()
function, each instance with different parameter, for example:But, the AT debugging says that GPS is the only enabled GNNS system:
On the other hand, you can set bitmasks through AT command "AT+UGPS", for example the AT command:
AT+UGPS=1,1,77
should set
aiding_mode=1
(=automatic local aiding) andGNSS_systems=77
(=GPS+GLONASS+BEIDOU+GALILEO).In this specific case, the strange behaviour I have found is that the
AT+UGPS?
command reports:that is,
99
instead of77
!This is the code (is it correct?):
Any help would be very much appreciated! :-)
David
The text was updated successfully, but these errors were encountered: