roam-qgis / Roam

Simple data collection built using QGIS.
http://roam-docs.readthedocs.org/en/latest/
GNU General Public License v2.0
171 stars 61 forks source link

Update To Limit GPS Position Updates #389

Closed skeenp closed 7 years ago

skeenp commented 7 years ago

Currently, the gpsposition event seems to be raised after each NMEA string. This is inefficient and causes problems when the GPS unit emits a heap of NMEA strings.

Our DGPS emits lots of data very frequently and causes the GPS functionality to freeze through either a backlog in the com buffer or just so many events. I'm not sure the true problem but its holding up functionality within the app. GPS logging is also linked to this event so that i'm ending up with about 10 points per second being added to the GPS log. This could also be the problem.

I propose setting a GPS update frequency, which when data exits, will only emit the gpsposition event every x seconds. This ideally would be set in config, but for the time being I'm hard coding it into our local build and providing the code as reference.