@@ -32,19 +32,22 @@ def run(self):
32
32
try :
33
33
gpsp .start () # start it up
34
34
initial_time = datetime .now ()
35
+ buffer = []
36
+ old_buffer_value = ""
35
37
while True :
36
38
current_time = datetime .now ()
37
39
time_diff = current_time - initial_time
38
40
if (int (time_diff .total_seconds ()) % 10 == 0 ):
39
- #It may take a second or two to get good data
40
- #print gpsd.fix.latitude,', ',gpsd.fix.longitude,' Time: ',gpsd.utc
41
-
42
- print 'lat ' , gpsd .fix .latitude , 'long ' , gpsd .fix .longitude , 'time utc' , gpsd .utc , 'speed (m/s) ' , gpsd .fix .speed , '\n '
43
- #'altitude (m)' , gpsd.fix.altitude,'eps ' , gpsd.fix.eps,'epx ' , gpsd.fix.epx,'epv ' ,
44
- #gpsd.fix.epv,'ept ' , gpsd.fix.ept,'climb ' , gpsd.fix.climb,'track ' ,
45
- #gpsd.fix.track,'mode ' , gpsd.fix.mode,'sats ' , gpsd.satellites,
46
-
47
- #time.sleep(0) #set to whatever
41
+ # Every 10 seconds add buffer contents to list
42
+ buffer .append ('lat: ' + str (gpsd .fix .latitude ) + ', long: ' + str (gpsd .fix .longitude ) + ', time utc: '
43
+ + str (gpsd .utc ) + ', speed (m/s): ' + str (gpsd .fix .speed ))
44
+
45
+ else :
46
+ if old_buffer_value == buffer [- 1 ]: # If old buffer = new buffer do nothing
47
+ pass
48
+ elif old_buffer_value != buffer [- 1 ]: # else update buffer and print new value
49
+ print (buffer [- 1 ])
50
+ old_buffer_value = buffer [- 1 ]
48
51
49
52
except (KeyboardInterrupt , SystemExit ): #when you press ctrl+c
50
53
print "\n Killing Thread..."
0 commit comments