Skip to content
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

Wrong position update interval #4

Open
artem78 opened this issue Jun 6, 2020 · 1 comment
Open

Wrong position update interval #4

artem78 opened this issue Jun 6, 2020 · 1 comment
Labels
bug Something isn't working help wanted Extra attention is needed

Comments

@artem78
Copy link
Owner

artem78 commented Jun 6, 2020

The problem is that actual position update interval is different than have been set. For example, look at the listed log:

log_20200309_145837 txt

The blue numbers is the actual interval. As you can see in this example it is often in 2-3 times bigger than must be.

Full log file: log_20200309_145837.txt

@artem78 artem78 added bug Something isn't working help wanted Extra attention is needed labels Jun 6, 2020
@artem78
Copy link
Owner Author

artem78 commented Jul 11, 2020

I spent a lot of time for experiments, logs analizing, etc... Finally I found and fixed main, but not the only one reason of this issue.

Until recently, as I discovered processing of each position took too much time (more than a second). Therefore with frequent update period (about 1-3 seconds) they do not have time to be processed. The main part of this time spent to write point to GPX file, because there are too many write operations with small pieces of data in undelying self-written XML writer class.

To fix this, I replaced RFile class with buffered RFileBuf in xml writer (ea233e1) and also done the same operation in logger (artem78/s60-logger@29da797). After this writing became much faster. Now point processing takes not more than several tens of milliseconds and not slow down the program.

That`s nice, but two problems remained:

  1. Sometimes at 1 second update interval it`s one second higher than expected.
    20200711_213205
  2. When update interval be changed, actual update interval for one second bigger than expected. I think, this may be due to that I set position update timeout value one second bigger than current update interval.
    20200711_214425

Here is new log file: log_20200711_154128.txt
and its analize report: log_20200711_154128 analize.txt

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant