Inaccurate GPS Fixes and ways to solve them.

abrileroux8 years ago

Hi there,

I'm very excited about the Traccar project and am very keen to get involved with improving it.

For the last year I've been using Real Time Tracker 2 to keep tabs on the locations of our aircraft. Cell phones don't get very good GPS fixes, but RTT2 has some kind of setting where it takes a number of consecutive fixes before it sends it to the server. I don't know if it averages them out or if it just waits for x amount of valid fixes, but the results are really good.

I ran the Real Time Tracker 2 and Traccar simultaneously on the same device on the same flight.
Real Time Tracker 2 produces a smooth track.
Real Time Tracker 2 - Smooth Track

Traccar - Not bad, but it has quite a few jumps to false locations.
Traccar - Mostly good, but with a few inaccurate fixes.

Here is a screenshot of the setting on RTT2 which does the magic. If this setting is disabled you get just as many jagged lines and random fixes. If you increase the number (I use 10 consecutive fixes), you get extremely good results.

Real Time Tracker 2 settings

What kind of filtering does Traccar do, and would it be feasible to introduce something similar?

Thanks a million
Abri

Anton Tananaev8 years ago

Does it actually mark those locations as "false" (validity flag)?

What location provider are you using in Traccar Client? Make sure you select GPS only.

abrileroux8 years ago

Hi there Anton,

I have double checked that it's set to GPS only, but I'm still getting a very noisy signal compared to RTT2. Not sure what to make of it. I've even tried different phones and velcroed them to other positions.

I've been doing some reading, and I'm wondering whether Kahlman filtering might not be a useful addition.

Someone has already developed a library that provides location that has been filtered using this technique.

https://github.com/villoren/KalmanLocationManager

What do you think about it?

Kind regards,
Abri

Anton Tananaev8 years ago

I want to keep app as simple as possible, but I'll invest a possibility of implementing some filtering algorithm.