AssetTrackerRK library 0.2.1 released

  • Support for every method in the official AssetTracker library.
  • Unit testing to verify similar results from the official AssetTracker (Adafruit parser) and AssetTracerRK (TinyGPS++) parser.
  • Optional threaded mode eliminates the needed to call updateGPS() and greatly reduces problems with lost or corrupted GPS data caused by serial buffer overflow.
  • Full browsable API documentation
  • Updated WakeOnMove example

One of the fascinating things I discovered is that there’s a loss of precision in the Adafruit parser because of the use of float (4-byte) values when doing certain calculations in degrees. The TinyGPS++ does most calculations using double (8-byte) values. You can see the rounding error in the Adafruit parser (blue) vs. TinyGPS (orange) on a plot of coordinates taken while driving.

The official Github repository is here.
The library is in the community libraries as AssetTrackerRK.

6 Likes

This library should replace the official AssetTracker library

4 Likes

Great job Rickkas7!

I was wondering whether the LIS3DH would support it and how to implement WakeOnStop (no motion) and SleepOnMove features.

The idea is to publish report when the device is on stop.

1/ deep sleep state whenever a motion has been detected for a certain period of time.
2/ wakeup state whenever a no motion has been detected for a certain period of time, publish lat, lng, and set the electron in sleep state.
3/ wake up state whenever a motion is detected for a certain period of time, publish event wakeup, and back to 1/

I cannot figure out how to set the LIS3DH registers to achieve this. if possible.

Thank you for help.
regards.
Sharly

I’m pretty sure wake on stop/sleep on move is impossible with the LIS3DH, but I’ll try to take another look this weekend.

This is indeed the intent – just chatted with @rickkas7 about this yesterday ...consider this a "release candidate".

4 Likes