Anyone used microGPS with pytrack, threads?



  • Hi

    I like microGPS (https://github.com/inmcm/micropyGPS/blob/master/README.md) as it is similar to tinyGPS++ and ardunio lib. It basically parses lots of NMEA sentences into accessible data structures.

    Has anyone got any coded that uses MicroGPS and pytrack?

    Also. A bonus would be a threaded example that sits in the background feeding microGPS NMEA sentence which would keep it updated.

    This would reduce time to fix, as the present L76 lib seems to wait for a certain NMEA sentence when others could do plus it would expose all the latest other NMEA data.



  • Hi

    Not noticed the lTE issues as this does not work in the uk.

    It should keep the almanac and other data when in sleep mode, however the sleep architecture is one where essentially recovering from sleep is a (re)boot, so you need to design accordingly. Also, do not use an SDCard as this will stop the sleep current from going below 5mA.

    I have not progressed this for over a year. Sorry.



  • @gregcope Also, the Decimal Degrees option on MicropyGPS doesn't work correctly. It a returns a tuple containing latitude and longitude, with each consisting of a positive value (from 0 to 180) and a compass heading. Decimal Degrees should return latitude and longitude as two values from -180 to +180 only. The compass heading is encoded into the sign. If I get time, I'll contribute a correction.



  • @gregcope On the weekend I created a thread that listed to an external GPS attached to UART and fed the received data into MicropyGPS. It worked well - however - while the thread was running I could no longer attach to the LTE network. No idea why. If I stopped the thread from starting the system could connect, but, of course, MicropyGPS no longer received updates. Eventually, I gave up, removed the thread and just spent a bit of code time polling the GPS till the sentence I needed appeared. Not very elegant, but it works.

    While the threaded approach is neat and ensures the GPS data is ready when you need it, I noticed a dramatic effect on performance. Given it's only accepting data at 9600bps, and even then the GPS isn't sending continuously, I was surprised at the impact it had.

    I have tried a pytrack but found the PCB antenna has nowhere near enough sensitivity for my application, so I've moved to a uBloc NEO6 based design with an external LNA and antenna. Perhaps if the pytrack offered a GPS antenna connector, I could have stuck with it as the L76 seems nice on paper. Of course, I'd also need documentation on how the board uses the unit and details of how to shut the GPS down while keeping the memory alive by providing raw LiPo power to the battery backup input. Unfortunately, Pycom isn't known for their documentation...



Pycom on Twitter