andrethemac / L76GLNSV4

MicroPython library for quectel L76 glnss gps on pycom pytrack
MIT License
18 stars 17 forks source link

Improving ColdStart Aquisition Times #10

Open askpatrickw opened 4 years ago

askpatrickw commented 4 years ago

I did a little research on this... the main thing seems to be if you had a reliable clock (RTC) and a known last good position. You could use PMTK 740 and PMTK 741 to inject time and position and improve the cold start performance.

I don't think your library can do this magically for the user, but it might be something the user could do when initializing L76GNSS if they had a battery powered RTC and a reliably cached last position. I'm not sure of the impact of loading a bad time or position.

Maybe not enough to start coding from, but good information to save here for future reference.

Helpful Quectel Information:

PMTK_DT_UTC

Packet Type: 740 Format: $PMTK740,YYYY,MM,DD,hh,mm,ss*CS<CR><LF> Example: $PMTK740,2010,2,10,9,0,58*05<CR><LF> The packet indicates that the current UTC time is 2010/Feb/10 09:00:58.

image

PMTKDT POS

Packet Type: 741 Format: $PMTK741,Lat,Long,Alt,YYYY,MM,DD,hh,mm,ss *CS<CR><LF> Example: $PMTK741,24.772816,121.022636,160,2011,8,1,08,00,00 The packet indicates that the GNSS receiver is at:

image

andrethemac commented 4 years ago

Hi Patrick. First sorry for the late answer. Other work is eating my time. If I'm not mistaken, the lopy/wipy/... cut's the power to the pytrack board when it goes to sleep. The gps always wakes in a cold state. I have some rtc boards with a battery. But haven't had the time to add them to the board. No extra headers on the board makes it difficult to add extra hardware (and I've a lousy soldertechnique). It's on my list. André

convertl commented 2 years ago

Hello, For your information I implemented PMTK740/741 functions on the library to accelerate cold start. I get time and approximate location from the Internet (with a Fipy). It accelerates the cold start effectively. I will try to commit my changes in near future.

I also implemented host EPO download but it is very long and most of the time I get the fix before finishing to upload the EPO data.