# Calculate Accurate Distance Traveled with GPS in Python [closed]

I am trying to update distance traveled between GPS coordinates. My error is that the GPS can move short distances while sitting still. I am currently simply adding the new coordinates to a list every second, calculating the distance between this second and last second, then appending the distances to a new list then add them all together.

The issue is that the small movements in distance keep accumulating. Does anyone know the proper way to do this?

``````self.breadcrumbs = []

#Calc Linear Distance GPS
while 1:
report = gpsp.get_current_value() #Retrieves GPS Values
try:
self.lat = report.lat
self.lon = report.lon
self.latlon = (self.lat, self.lon) #Put lat lon into tuple
breadcrumb_distances = [] #Holds distances between latlon data points
current_location = b
miles = geodesic(current_location, last_location).miles
feet = miles * 5280 #convert to feet
print(cumulative_distance)
except Exception as e:
print(e)
sleep(1)
``````
• this is not a RPi question Jul 21, 2020 at 17:50
• @jsotola You’re right. I should go over to Stack and ask this one. Jul 21, 2020 at 18:10
• You're shooting yourself in the foot. Why do you add distance when the velocity is zero/near zero? You could start here Jul 21, 2020 at 21:43
• @Seamus Thanks for the tip. I’ll check it out. Jul 21, 2020 at 21:52
• Hope it helps... you will almost always get a better outcome in these Q&A forums if you do a bit of homework beforehand. Jul 21, 2020 at 21:59